./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/mult_array_unsafe.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 9a8b2e8d Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/array-memsafety/mult_array_unsafe.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4ceec10d001c6e3ab8acae30cb42f114023e2890 ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE(valid-deref) --- Real Ultimate output --- This is Ultimate 0.1.25-9a8b2e8 [2020-10-20 05:50:03,575 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-10-20 05:50:03,579 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-10-20 05:50:03,603 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-10-20 05:50:03,604 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-10-20 05:50:03,605 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-10-20 05:50:03,616 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-10-20 05:50:03,621 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-10-20 05:50:03,623 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-10-20 05:50:03,624 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-10-20 05:50:03,627 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-10-20 05:50:03,628 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-10-20 05:50:03,628 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-10-20 05:50:03,629 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-10-20 05:50:03,631 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-10-20 05:50:03,632 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-10-20 05:50:03,632 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-10-20 05:50:03,633 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-10-20 05:50:03,635 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-10-20 05:50:03,637 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-10-20 05:50:03,638 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-10-20 05:50:03,639 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-10-20 05:50:03,641 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-10-20 05:50:03,641 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-10-20 05:50:03,644 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-10-20 05:50:03,644 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-10-20 05:50:03,645 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-10-20 05:50:03,646 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-10-20 05:50:03,646 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-10-20 05:50:03,647 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-10-20 05:50:03,647 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-10-20 05:50:03,648 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-10-20 05:50:03,649 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-10-20 05:50:03,650 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-10-20 05:50:03,651 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-10-20 05:50:03,652 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-10-20 05:50:03,652 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-10-20 05:50:03,653 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-10-20 05:50:03,653 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-10-20 05:50:03,654 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-10-20 05:50:03,655 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-10-20 05:50:03,656 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2020-10-20 05:50:03,679 INFO L113 SettingsManager]: Loading preferences was successful [2020-10-20 05:50:03,680 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-10-20 05:50:03,681 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-10-20 05:50:03,682 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-10-20 05:50:03,682 INFO L138 SettingsManager]: * Use SBE=true [2020-10-20 05:50:03,682 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-10-20 05:50:03,682 INFO L138 SettingsManager]: * sizeof long=4 [2020-10-20 05:50:03,683 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2020-10-20 05:50:03,683 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-10-20 05:50:03,683 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-10-20 05:50:03,683 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-10-20 05:50:03,684 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2020-10-20 05:50:03,684 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2020-10-20 05:50:03,684 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2020-10-20 05:50:03,685 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-10-20 05:50:03,685 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2020-10-20 05:50:03,685 INFO L138 SettingsManager]: * sizeof long double=12 [2020-10-20 05:50:03,685 INFO L138 SettingsManager]: * Use constant arrays=true [2020-10-20 05:50:03,686 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-10-20 05:50:03,686 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-10-20 05:50:03,686 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-10-20 05:50:03,686 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-10-20 05:50:03,687 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-10-20 05:50:03,687 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-10-20 05:50:03,687 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-10-20 05:50:03,687 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-10-20 05:50:03,688 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-10-20 05:50:03,688 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-10-20 05:50:03,688 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 4ceec10d001c6e3ab8acae30cb42f114023e2890 [2020-10-20 05:50:03,915 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-10-20 05:50:03,936 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-10-20 05:50:03,941 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-10-20 05:50:03,943 INFO L271 PluginConnector]: Initializing CDTParser... [2020-10-20 05:50:03,944 INFO L275 PluginConnector]: CDTParser initialized [2020-10-20 05:50:03,945 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/mult_array_unsafe.i [2020-10-20 05:50:04,016 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/702a56c6e/5bb818407dd74cc39a4e88b88779f399/FLAG7c6070c10 [2020-10-20 05:50:04,492 INFO L306 CDTParser]: Found 1 translation units. [2020-10-20 05:50:04,493 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/mult_array_unsafe.i [2020-10-20 05:50:04,510 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/702a56c6e/5bb818407dd74cc39a4e88b88779f399/FLAG7c6070c10 [2020-10-20 05:50:04,855 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/702a56c6e/5bb818407dd74cc39a4e88b88779f399 [2020-10-20 05:50:04,858 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-10-20 05:50:04,864 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2020-10-20 05:50:04,865 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-10-20 05:50:04,865 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-10-20 05:50:04,869 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-10-20 05:50:04,870 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.10 05:50:04" (1/1) ... [2020-10-20 05:50:04,873 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@41648d0a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:04, skipping insertion in model container [2020-10-20 05:50:04,874 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.10 05:50:04" (1/1) ... [2020-10-20 05:50:04,882 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-10-20 05:50:04,930 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-10-20 05:50:05,346 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-10-20 05:50:05,357 INFO L203 MainTranslator]: Completed pre-run [2020-10-20 05:50:05,426 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-10-20 05:50:05,489 INFO L208 MainTranslator]: Completed translation [2020-10-20 05:50:05,490 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05 WrapperNode [2020-10-20 05:50:05,491 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-10-20 05:50:05,492 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-10-20 05:50:05,492 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-10-20 05:50:05,492 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-10-20 05:50:05,506 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,507 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,525 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,525 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,540 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,545 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,548 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... [2020-10-20 05:50:05,554 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-10-20 05:50:05,555 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-10-20 05:50:05,555 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-10-20 05:50:05,556 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-10-20 05:50:05,557 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-10-20 05:50:05,626 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-10-20 05:50:05,626 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-10-20 05:50:05,627 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_32 [2020-10-20 05:50:05,627 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_64 [2020-10-20 05:50:05,627 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint16_identity [2020-10-20 05:50:05,627 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint32_identity [2020-10-20 05:50:05,628 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint64_identity [2020-10-20 05:50:05,628 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-10-20 05:50:05,628 INFO L130 BoogieDeclarations]: Found specification of procedure __ctype_get_mb_cur_max [2020-10-20 05:50:05,628 INFO L130 BoogieDeclarations]: Found specification of procedure atof [2020-10-20 05:50:05,628 INFO L130 BoogieDeclarations]: Found specification of procedure atoi [2020-10-20 05:50:05,629 INFO L130 BoogieDeclarations]: Found specification of procedure atol [2020-10-20 05:50:05,629 INFO L130 BoogieDeclarations]: Found specification of procedure atoll [2020-10-20 05:50:05,629 INFO L130 BoogieDeclarations]: Found specification of procedure strtod [2020-10-20 05:50:05,629 INFO L130 BoogieDeclarations]: Found specification of procedure strtof [2020-10-20 05:50:05,630 INFO L130 BoogieDeclarations]: Found specification of procedure strtold [2020-10-20 05:50:05,630 INFO L130 BoogieDeclarations]: Found specification of procedure strtol [2020-10-20 05:50:05,630 INFO L130 BoogieDeclarations]: Found specification of procedure strtoul [2020-10-20 05:50:05,630 INFO L130 BoogieDeclarations]: Found specification of procedure strtoq [2020-10-20 05:50:05,631 INFO L130 BoogieDeclarations]: Found specification of procedure strtouq [2020-10-20 05:50:05,631 INFO L130 BoogieDeclarations]: Found specification of procedure strtoll [2020-10-20 05:50:05,631 INFO L130 BoogieDeclarations]: Found specification of procedure strtoull [2020-10-20 05:50:05,631 INFO L130 BoogieDeclarations]: Found specification of procedure l64a [2020-10-20 05:50:05,631 INFO L130 BoogieDeclarations]: Found specification of procedure a64l [2020-10-20 05:50:05,632 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_32 [2020-10-20 05:50:05,632 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_64 [2020-10-20 05:50:05,632 INFO L130 BoogieDeclarations]: Found specification of procedure __uint16_identity [2020-10-20 05:50:05,632 INFO L130 BoogieDeclarations]: Found specification of procedure __uint32_identity [2020-10-20 05:50:05,633 INFO L130 BoogieDeclarations]: Found specification of procedure __uint64_identity [2020-10-20 05:50:05,633 INFO L130 BoogieDeclarations]: Found specification of procedure select [2020-10-20 05:50:05,633 INFO L130 BoogieDeclarations]: Found specification of procedure pselect [2020-10-20 05:50:05,633 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_major [2020-10-20 05:50:05,633 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_minor [2020-10-20 05:50:05,634 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_makedev [2020-10-20 05:50:05,634 INFO L130 BoogieDeclarations]: Found specification of procedure random [2020-10-20 05:50:05,634 INFO L130 BoogieDeclarations]: Found specification of procedure srandom [2020-10-20 05:50:05,634 INFO L130 BoogieDeclarations]: Found specification of procedure initstate [2020-10-20 05:50:05,635 INFO L130 BoogieDeclarations]: Found specification of procedure setstate [2020-10-20 05:50:05,635 INFO L130 BoogieDeclarations]: Found specification of procedure random_r [2020-10-20 05:50:05,635 INFO L130 BoogieDeclarations]: Found specification of procedure srandom_r [2020-10-20 05:50:05,635 INFO L130 BoogieDeclarations]: Found specification of procedure initstate_r [2020-10-20 05:50:05,635 INFO L130 BoogieDeclarations]: Found specification of procedure setstate_r [2020-10-20 05:50:05,636 INFO L130 BoogieDeclarations]: Found specification of procedure rand [2020-10-20 05:50:05,636 INFO L130 BoogieDeclarations]: Found specification of procedure srand [2020-10-20 05:50:05,636 INFO L130 BoogieDeclarations]: Found specification of procedure rand_r [2020-10-20 05:50:05,636 INFO L130 BoogieDeclarations]: Found specification of procedure drand48 [2020-10-20 05:50:05,637 INFO L130 BoogieDeclarations]: Found specification of procedure erand48 [2020-10-20 05:50:05,637 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48 [2020-10-20 05:50:05,637 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48 [2020-10-20 05:50:05,637 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48 [2020-10-20 05:50:05,637 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48 [2020-10-20 05:50:05,638 INFO L130 BoogieDeclarations]: Found specification of procedure srand48 [2020-10-20 05:50:05,638 INFO L130 BoogieDeclarations]: Found specification of procedure seed48 [2020-10-20 05:50:05,638 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48 [2020-10-20 05:50:05,638 INFO L130 BoogieDeclarations]: Found specification of procedure drand48_r [2020-10-20 05:50:05,639 INFO L130 BoogieDeclarations]: Found specification of procedure erand48_r [2020-10-20 05:50:05,639 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48_r [2020-10-20 05:50:05,639 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48_r [2020-10-20 05:50:05,639 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48_r [2020-10-20 05:50:05,639 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48_r [2020-10-20 05:50:05,640 INFO L130 BoogieDeclarations]: Found specification of procedure srand48_r [2020-10-20 05:50:05,640 INFO L130 BoogieDeclarations]: Found specification of procedure seed48_r [2020-10-20 05:50:05,640 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48_r [2020-10-20 05:50:05,640 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-10-20 05:50:05,641 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-10-20 05:50:05,641 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-10-20 05:50:05,641 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-10-20 05:50:05,641 INFO L130 BoogieDeclarations]: Found specification of procedure alloca [2020-10-20 05:50:05,641 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-10-20 05:50:05,642 INFO L130 BoogieDeclarations]: Found specification of procedure posix_memalign [2020-10-20 05:50:05,642 INFO L130 BoogieDeclarations]: Found specification of procedure aligned_alloc [2020-10-20 05:50:05,642 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-10-20 05:50:05,642 INFO L130 BoogieDeclarations]: Found specification of procedure atexit [2020-10-20 05:50:05,642 INFO L130 BoogieDeclarations]: Found specification of procedure at_quick_exit [2020-10-20 05:50:05,643 INFO L130 BoogieDeclarations]: Found specification of procedure on_exit [2020-10-20 05:50:05,643 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2020-10-20 05:50:05,643 INFO L130 BoogieDeclarations]: Found specification of procedure quick_exit [2020-10-20 05:50:05,643 INFO L130 BoogieDeclarations]: Found specification of procedure _Exit [2020-10-20 05:50:05,644 INFO L130 BoogieDeclarations]: Found specification of procedure getenv [2020-10-20 05:50:05,644 INFO L130 BoogieDeclarations]: Found specification of procedure putenv [2020-10-20 05:50:05,644 INFO L130 BoogieDeclarations]: Found specification of procedure setenv [2020-10-20 05:50:05,644 INFO L130 BoogieDeclarations]: Found specification of procedure unsetenv [2020-10-20 05:50:05,644 INFO L130 BoogieDeclarations]: Found specification of procedure clearenv [2020-10-20 05:50:05,645 INFO L130 BoogieDeclarations]: Found specification of procedure mktemp [2020-10-20 05:50:05,645 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemp [2020-10-20 05:50:05,645 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemps [2020-10-20 05:50:05,645 INFO L130 BoogieDeclarations]: Found specification of procedure mkdtemp [2020-10-20 05:50:05,645 INFO L130 BoogieDeclarations]: Found specification of procedure system [2020-10-20 05:50:05,646 INFO L130 BoogieDeclarations]: Found specification of procedure realpath [2020-10-20 05:50:05,646 INFO L130 BoogieDeclarations]: Found specification of procedure bsearch [2020-10-20 05:50:05,646 INFO L130 BoogieDeclarations]: Found specification of procedure qsort [2020-10-20 05:50:05,646 INFO L130 BoogieDeclarations]: Found specification of procedure abs [2020-10-20 05:50:05,646 INFO L130 BoogieDeclarations]: Found specification of procedure labs [2020-10-20 05:50:05,647 INFO L130 BoogieDeclarations]: Found specification of procedure llabs [2020-10-20 05:50:05,647 INFO L130 BoogieDeclarations]: Found specification of procedure div [2020-10-20 05:50:05,647 INFO L130 BoogieDeclarations]: Found specification of procedure ldiv [2020-10-20 05:50:05,647 INFO L130 BoogieDeclarations]: Found specification of procedure lldiv [2020-10-20 05:50:05,647 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt [2020-10-20 05:50:05,648 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt [2020-10-20 05:50:05,648 INFO L130 BoogieDeclarations]: Found specification of procedure gcvt [2020-10-20 05:50:05,648 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt [2020-10-20 05:50:05,648 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt [2020-10-20 05:50:05,648 INFO L130 BoogieDeclarations]: Found specification of procedure qgcvt [2020-10-20 05:50:05,649 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt_r [2020-10-20 05:50:05,649 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt_r [2020-10-20 05:50:05,649 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt_r [2020-10-20 05:50:05,649 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt_r [2020-10-20 05:50:05,649 INFO L130 BoogieDeclarations]: Found specification of procedure mblen [2020-10-20 05:50:05,650 INFO L130 BoogieDeclarations]: Found specification of procedure mbtowc [2020-10-20 05:50:05,650 INFO L130 BoogieDeclarations]: Found specification of procedure wctomb [2020-10-20 05:50:05,650 INFO L130 BoogieDeclarations]: Found specification of procedure mbstowcs [2020-10-20 05:50:05,650 INFO L130 BoogieDeclarations]: Found specification of procedure wcstombs [2020-10-20 05:50:05,650 INFO L130 BoogieDeclarations]: Found specification of procedure rpmatch [2020-10-20 05:50:05,651 INFO L130 BoogieDeclarations]: Found specification of procedure getsubopt [2020-10-20 05:50:05,651 INFO L130 BoogieDeclarations]: Found specification of procedure getloadavg [2020-10-20 05:50:05,651 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-10-20 05:50:05,651 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-10-20 05:50:05,651 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-10-20 05:50:05,652 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-10-20 05:50:05,652 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-10-20 05:50:05,652 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-10-20 05:50:05,652 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-10-20 05:50:05,653 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-10-20 05:50:06,204 INFO L293 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-10-20 05:50:06,205 INFO L298 CfgBuilder]: Removed 2 assume(true) statements. [2020-10-20 05:50:06,207 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.10 05:50:06 BoogieIcfgContainer [2020-10-20 05:50:06,207 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-10-20 05:50:06,221 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-10-20 05:50:06,222 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-10-20 05:50:06,225 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-10-20 05:50:06,225 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.10 05:50:04" (1/3) ... [2020-10-20 05:50:06,226 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4ce02b43 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.10 05:50:06, skipping insertion in model container [2020-10-20 05:50:06,228 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.10 05:50:05" (2/3) ... [2020-10-20 05:50:06,229 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4ce02b43 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.10 05:50:06, skipping insertion in model container [2020-10-20 05:50:06,229 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.10 05:50:06" (3/3) ... [2020-10-20 05:50:06,231 INFO L111 eAbstractionObserver]: Analyzing ICFG mult_array_unsafe.i [2020-10-20 05:50:06,243 INFO L164 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-10-20 05:50:06,253 INFO L176 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2020-10-20 05:50:06,267 INFO L253 AbstractCegarLoop]: Starting to check reachability of 7 error locations. [2020-10-20 05:50:06,287 INFO L377 AbstractCegarLoop]: Interprodecural is true [2020-10-20 05:50:06,288 INFO L378 AbstractCegarLoop]: Hoare is false [2020-10-20 05:50:06,288 INFO L379 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-10-20 05:50:06,288 INFO L380 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-10-20 05:50:06,289 INFO L381 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-10-20 05:50:06,289 INFO L382 AbstractCegarLoop]: Difference is false [2020-10-20 05:50:06,289 INFO L383 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-10-20 05:50:06,289 INFO L387 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-10-20 05:50:06,306 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states. [2020-10-20 05:50:06,316 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2020-10-20 05:50:06,317 INFO L414 BasicCegarLoop]: Found error trace [2020-10-20 05:50:06,318 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-10-20 05:50:06,319 INFO L429 AbstractCegarLoop]: === Iteration 1 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-10-20 05:50:06,324 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-10-20 05:50:06,325 INFO L82 PathProgramCache]: Analyzing trace with hash 1489715982, now seen corresponding path program 1 times [2020-10-20 05:50:06,336 INFO L162 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-10-20 05:50:06,336 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1807999903] [2020-10-20 05:50:06,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-10-20 05:50:06,472 ERROR L270 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2020-10-20 05:50:06,473 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [89722156] [2020-10-20 05:50:06,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-10-20 05:50:06,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-10-20 05:50:06,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 6 conjunts are in the unsatisfiable core [2020-10-20 05:50:06,667 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-10-20 05:50:06,819 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-10-20 05:50:06,819 INFO L353 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1807999903] [2020-10-20 05:50:06,820 WARN L332 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2020-10-20 05:50:06,820 INFO L353 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [89722156] [2020-10-20 05:50:06,821 INFO L219 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-10-20 05:50:06,821 INFO L232 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-10-20 05:50:06,823 INFO L155 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2083607401] [2020-10-20 05:50:06,828 INFO L461 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-10-20 05:50:06,828 INFO L142 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-10-20 05:50:06,844 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-10-20 05:50:06,845 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-10-20 05:50:06,847 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 4 states. [2020-10-20 05:50:06,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-10-20 05:50:06,930 INFO L93 Difference]: Finished difference Result 33 states and 36 transitions. [2020-10-20 05:50:06,931 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-10-20 05:50:06,933 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 12 [2020-10-20 05:50:06,933 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-10-20 05:50:06,943 INFO L225 Difference]: With dead ends: 33 [2020-10-20 05:50:06,943 INFO L226 Difference]: Without dead ends: 30 [2020-10-20 05:50:06,945 INFO L677 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-10-20 05:50:06,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2020-10-20 05:50:06,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2020-10-20 05:50:06,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-10-20 05:50:06,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 33 transitions. [2020-10-20 05:50:06,988 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 33 transitions. Word has length 12 [2020-10-20 05:50:06,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-10-20 05:50:06,988 INFO L481 AbstractCegarLoop]: Abstraction has 30 states and 33 transitions. [2020-10-20 05:50:06,989 INFO L482 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-10-20 05:50:06,989 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2020-10-20 05:50:06,990 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2020-10-20 05:50:06,990 INFO L414 BasicCegarLoop]: Found error trace [2020-10-20 05:50:06,990 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-10-20 05:50:07,203 WARN L518 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2020-10-20 05:50:07,204 INFO L429 AbstractCegarLoop]: === Iteration 2 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-10-20 05:50:07,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-10-20 05:50:07,204 INFO L82 PathProgramCache]: Analyzing trace with hash -1063444840, now seen corresponding path program 1 times [2020-10-20 05:50:07,204 INFO L162 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-10-20 05:50:07,205 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [544674625] [2020-10-20 05:50:07,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-10-20 05:50:07,218 ERROR L270 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2020-10-20 05:50:07,219 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1868617011] [2020-10-20 05:50:07,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-10-20 05:50:07,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-10-20 05:50:07,362 INFO L263 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 4 conjunts are in the unsatisfiable core [2020-10-20 05:50:07,364 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-10-20 05:50:07,440 INFO L350 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2020-10-20 05:50:07,441 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 11 [2020-10-20 05:50:07,441 INFO L545 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-10-20 05:50:07,447 INFO L625 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-10-20 05:50:07,448 INFO L545 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-10-20 05:50:07,449 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:9, output treesize:11 [2020-10-20 05:50:07,461 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-10-20 05:50:07,461 INFO L353 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [544674625] [2020-10-20 05:50:07,462 WARN L332 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unknown [2020-10-20 05:50:07,462 INFO L353 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1868617011] [2020-10-20 05:50:07,462 INFO L219 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-10-20 05:50:07,462 INFO L232 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2020-10-20 05:50:07,463 INFO L155 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1811882963] [2020-10-20 05:50:07,464 INFO L461 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-10-20 05:50:07,464 INFO L142 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-10-20 05:50:07,465 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-10-20 05:50:07,465 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-10-20 05:50:07,465 INFO L87 Difference]: Start difference. First operand 30 states and 33 transitions. Second operand 3 states. [2020-10-20 05:50:07,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-10-20 05:50:07,528 INFO L93 Difference]: Finished difference Result 28 states and 31 transitions. [2020-10-20 05:50:07,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-10-20 05:50:07,529 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 13 [2020-10-20 05:50:07,530 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-10-20 05:50:07,530 INFO L225 Difference]: With dead ends: 28 [2020-10-20 05:50:07,530 INFO L226 Difference]: Without dead ends: 28 [2020-10-20 05:50:07,532 INFO L677 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-10-20 05:50:07,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2020-10-20 05:50:07,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2020-10-20 05:50:07,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2020-10-20 05:50:07,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2020-10-20 05:50:07,537 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 13 [2020-10-20 05:50:07,537 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-10-20 05:50:07,537 INFO L481 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2020-10-20 05:50:07,538 INFO L482 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-10-20 05:50:07,538 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2020-10-20 05:50:07,538 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2020-10-20 05:50:07,539 INFO L414 BasicCegarLoop]: Found error trace [2020-10-20 05:50:07,539 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-10-20 05:50:07,739 WARN L518 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,3 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-10-20 05:50:07,740 INFO L429 AbstractCegarLoop]: === Iteration 3 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-10-20 05:50:07,741 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-10-20 05:50:07,741 INFO L82 PathProgramCache]: Analyzing trace with hash -1063444839, now seen corresponding path program 1 times [2020-10-20 05:50:07,742 INFO L162 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-10-20 05:50:07,742 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [101867514] [2020-10-20 05:50:07,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-10-20 05:50:07,754 ERROR L270 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2020-10-20 05:50:07,754 INFO L353 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2004129075] [2020-10-20 05:50:07,755 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-10-20 05:50:07,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-10-20 05:50:07,848 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-10-20 05:50:07,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-10-20 05:50:07,859 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-10-20 05:50:07,880 INFO L173 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-10-20 05:50:07,880 INFO L523 BasicCegarLoop]: Counterexample might be feasible [2020-10-20 05:50:08,093 WARN L518 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-10-20 05:50:08,121 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.10 05:50:08 BoogieIcfgContainer [2020-10-20 05:50:08,122 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-10-20 05:50:08,122 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-10-20 05:50:08,122 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-10-20 05:50:08,123 INFO L275 PluginConnector]: Witness Printer initialized [2020-10-20 05:50:08,123 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.10 05:50:06" (3/4) ... [2020-10-20 05:50:08,126 INFO L131 WitnessPrinter]: Generating witness for reachability counterexample [2020-10-20 05:50:08,177 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2020-10-20 05:50:08,178 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-10-20 05:50:08,180 INFO L168 Benchmark]: Toolchain (without parser) took 3319.95 ms. Allocated memory was 34.1 MB in the beginning and 56.1 MB in the end (delta: 22.0 MB). Free memory was 9.2 MB in the beginning and 26.6 MB in the end (delta: -17.4 MB). Peak memory consumption was 4.6 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,181 INFO L168 Benchmark]: CDTParser took 0.29 ms. Allocated memory is still 33.0 MB. Free memory is still 17.6 MB. There was no memory consumed. Max. memory is 14.3 GB. [2020-10-20 05:50:08,181 INFO L168 Benchmark]: CACSL2BoogieTranslator took 626.46 ms. Allocated memory was 34.1 MB in the beginning and 44.0 MB in the end (delta: 10.0 MB). Free memory was 8.3 MB in the beginning and 26.4 MB in the end (delta: -18.1 MB). Peak memory consumption was 8.3 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,182 INFO L168 Benchmark]: Boogie Preprocessor took 62.93 ms. Allocated memory is still 44.0 MB. Free memory was 26.4 MB in the beginning and 23.7 MB in the end (delta: 2.6 MB). Peak memory consumption was 2.6 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,183 INFO L168 Benchmark]: RCFGBuilder took 652.23 ms. Allocated memory was 44.0 MB in the beginning and 45.6 MB in the end (delta: 1.6 MB). Free memory was 23.7 MB in the beginning and 12.6 MB in the end (delta: 11.1 MB). Peak memory consumption was 13.3 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,184 INFO L168 Benchmark]: TraceAbstraction took 1900.58 ms. Allocated memory was 47.7 MB in the beginning and 56.1 MB in the end (delta: 8.4 MB). Free memory was 28.8 MB in the beginning and 29.0 MB in the end (delta: -203.3 kB). Peak memory consumption was 8.2 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,185 INFO L168 Benchmark]: Witness Printer took 55.94 ms. Allocated memory is still 56.1 MB. Free memory was 29.0 MB in the beginning and 26.6 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 14.3 GB. [2020-10-20 05:50:08,189 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.29 ms. Allocated memory is still 33.0 MB. Free memory is still 17.6 MB. There was no memory consumed. Max. memory is 14.3 GB. * CACSL2BoogieTranslator took 626.46 ms. Allocated memory was 34.1 MB in the beginning and 44.0 MB in the end (delta: 10.0 MB). Free memory was 8.3 MB in the beginning and 26.4 MB in the end (delta: -18.1 MB). Peak memory consumption was 8.3 MB. Max. memory is 14.3 GB. * Boogie Preprocessor took 62.93 ms. Allocated memory is still 44.0 MB. Free memory was 26.4 MB in the beginning and 23.7 MB in the end (delta: 2.6 MB). Peak memory consumption was 2.6 MB. Max. memory is 14.3 GB. * RCFGBuilder took 652.23 ms. Allocated memory was 44.0 MB in the beginning and 45.6 MB in the end (delta: 1.6 MB). Free memory was 23.7 MB in the beginning and 12.6 MB in the end (delta: 11.1 MB). Peak memory consumption was 13.3 MB. Max. memory is 14.3 GB. * TraceAbstraction took 1900.58 ms. Allocated memory was 47.7 MB in the beginning and 56.1 MB in the end (delta: 8.4 MB). Free memory was 28.8 MB in the beginning and 29.0 MB in the end (delta: -203.3 kB). Peak memory consumption was 8.2 MB. Max. memory is 14.3 GB. * Witness Printer took 55.94 ms. Allocated memory is still 56.1 MB. Free memory was 29.0 MB in the beginning and 26.6 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 14.3 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 522]: pointer dereference may fail pointer dereference may fail We found a FailurePath: [L513] int i, j; [L514] int length = __VERIFIER_nondet_int(); [L515] COND TRUE length < 1 || length >= 2147483647 / sizeof(int) [L515] length = 1 VAL [length=1] [L516] int fac = __VERIFIER_nondet_int(); [L517] COND TRUE fac < 1 || fac >= 2147483647 / (sizeof(int) * length) [L517] fac = 1 VAL [fac=1, length=1] [L518] int *arr = __builtin_alloca (length); [L519] int *arr2 = __builtin_alloca (fac*length); VAL [__builtin_alloca (fac*length)={3:0}, __builtin_alloca (length)={2:0}, arr={2:0}, arr2={3:0}, fac=1, length=1] [L520] COND FALSE !(!arr || !arr2) [L521] i=0 VAL [__builtin_alloca (fac*length)={3:0}, __builtin_alloca (length)={2:0}, arr={2:0}, arr2={3:0}, fac=1, i=0, length=1] [L521] COND TRUE i