java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/Sifa.xml -i ../../../trunk/examples/programs/20181010-MemSafetyPathprograms/ArraysOfVariableLength_true-valid-memsafety.c_11.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-3b9210c [2019-08-06 16:57:20,459 INFO L177 SettingsManager]: Resetting all preferences to default values... [2019-08-06 16:57:20,462 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2019-08-06 16:57:20,476 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-08-06 16:57:20,477 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-08-06 16:57:20,479 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-08-06 16:57:20,480 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-08-06 16:57:20,483 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2019-08-06 16:57:20,486 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-08-06 16:57:20,486 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-08-06 16:57:20,494 INFO L181 SettingsManager]: Resetting Symbolic Interpretation preferences to default values [2019-08-06 16:57:20,495 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-08-06 16:57:20,495 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-08-06 16:57:20,496 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-08-06 16:57:20,497 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-08-06 16:57:20,500 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-08-06 16:57:20,502 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-08-06 16:57:20,503 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-08-06 16:57:20,506 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-08-06 16:57:20,508 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2019-08-06 16:57:20,512 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-08-06 16:57:20,515 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-08-06 16:57:20,517 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2019-08-06 16:57:20,518 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-08-06 16:57:20,520 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-08-06 16:57:20,520 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-08-06 16:57:20,520 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-08-06 16:57:20,521 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2019-08-06 16:57:20,522 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-08-06 16:57:20,523 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2019-08-06 16:57:20,523 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-08-06 16:57:20,524 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2019-08-06 16:57:20,524 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-08-06 16:57:20,525 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2019-08-06 16:57:20,526 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-08-06 16:57:20,526 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2019-08-06 16:57:20,527 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-08-06 16:57:20,527 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-08-06 16:57:20,527 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2019-08-06 16:57:20,528 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2019-08-06 16:57:20,529 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2019-08-06 16:57:20,556 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-08-06 16:57:20,569 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-08-06 16:57:20,572 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-08-06 16:57:20,574 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-08-06 16:57:20,574 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2019-08-06 16:57:20,575 INFO L428 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20181010-MemSafetyPathprograms/ArraysOfVariableLength_true-valid-memsafety.c_11.bpl [2019-08-06 16:57:20,575 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20181010-MemSafetyPathprograms/ArraysOfVariableLength_true-valid-memsafety.c_11.bpl' [2019-08-06 16:57:20,620 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-08-06 16:57:20,622 INFO L131 ToolchainWalker]: Walking toolchain with 3 elements. [2019-08-06 16:57:20,623 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-08-06 16:57:20,623 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-08-06 16:57:20,623 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2019-08-06 16:57:20,645 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,647 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,658 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,658 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,664 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,666 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,667 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:20,669 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-08-06 16:57:20,671 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-08-06 16:57:20,671 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-08-06 16:57:20,671 INFO L275 PluginConnector]: RCFGBuilder initialized [2019-08-06 16:57:20,672 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 06.08 04:57:20" (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:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2019-08-06 16:57:20,738 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2019-08-06 16:57:20,738 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-08-06 16:57:20,738 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-08-06 16:57:20,986 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-08-06 16:57:20,986 INFO L283 CfgBuilder]: Removed 0 assume(true) statements. [2019-08-06 16:57:20,987 INFO L202 PluginConnector]: Adding new model ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.08 04:57:20 BoogieIcfgContainer [2019-08-06 16:57:20,988 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-08-06 16:57:20,989 INFO L113 PluginConnector]: ------------------------Symbolic Interpretation---------------------------- [2019-08-06 16:57:20,989 INFO L271 PluginConnector]: Initializing Symbolic Interpretation... [2019-08-06 16:57:20,989 INFO L275 PluginConnector]: Symbolic Interpretation initialized [2019-08-06 16:57:20,990 INFO L185 PluginConnector]: Executing the observer SymbolicInterpretationObserver from plugin Symbolic Interpretation for "ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 06.08 04:57:20" (1/1) ... [2019-08-06 16:57:21,010 INFO L148 IcfgInterpreter]: Started Sifa with 1 locations of interest [2019-08-06 16:57:21,013 INFO L155 IcfgInterpreter]: Building call graph [2019-08-06 16:57:21,025 INFO L160 IcfgInterpreter]: Initial procedures are [ULTIMATE.start] [2019-08-06 16:57:21,042 INFO L165 IcfgInterpreter]: Starting interpretation [2019-08-06 16:57:21,043 INFO L185 IcfgInterpreter]: Interpreting procedure ULTIMATE.start with input of size 1 [2019-08-06 16:57:21,398 INFO L169 IcfgInterpreter]: Interpretation finished [2019-08-06 16:57:21,398 INFO L177 IcfgInterpreter]: Final predicates for locations of interest are: [2019-08-06 16:57:21,407 INFO L179 IcfgInterpreter]: Location ULTIMATE.startErr0ASSERT_VIOLATIONASSERT has predicate 39#(and (= |ULTIMATE.start_foo_#in~b.base| |ULTIMATE.start_main_~#b~0.base|) (<= |ULTIMATE.start_write~int_#value| 2147483647) (exists ((v_ULTIMATE.start_foo_~b.base_5 Int) (v_ULTIMATE.start_foo_~n_6 Int) (|v_ULTIMATE.start_foo_#in~size_3| Int) (|v_ULTIMATE.start_read~int_#ptr.base_5| Int) (|v_ULTIMATE.start_read~int_#value_5| Int) (|v_ULTIMATE.start_read~int_#ptr.offset_5| Int) (|v_ULTIMATE.start_read~int_#sizeOfReadType_5| Int) (|v_ULTIMATE.start_foo_#in~n_3| Int) (v_ULTIMATE.start_foo_~b.offset_5 Int) (|v_ULTIMATE.start_foo_#in~b.base_3| Int) (v_ULTIMATE.start_foo_~a~0_10 (Array Int Int)) (|v_ULTIMATE.start_foo_#in~b.offset_3| Int) (v_ULTIMATE.start_foo_~size_6 Int)) (and (or (and (= (+ v_ULTIMATE.start_foo_~b.offset_5 4) |v_ULTIMATE.start_read~int_#ptr.offset_5|) (< ULTIMATE.start_main_~i~1 101) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_3|) (= (select |#valid| v_ULTIMATE.start_foo_~b.base_5) 1) (<= (+ |v_ULTIMATE.start_read~int_#sizeOfReadType_5| |v_ULTIMATE.start_read~int_#ptr.offset_5|) (select |#length| |v_ULTIMATE.start_read~int_#ptr.base_5|)) (or (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= 0 |#NULL.base|) (= 0 (+ ULTIMATE.start_main_~i~1 (- 1))) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (= |#NULL.offset| 0)) (and (= 1 (select |#valid| |ULTIMATE.start_main_~#b~0.base|)) (<= 8 (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1))) (<= (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1)) (+ (select |#length| |ULTIMATE.start_main_~#b~0.base|) 4)) (exists ((|v_ULTIMATE.start_write~int_#value_2| Int) (|v_ULTIMATE.start_write~int_old_#memory_int_2| (Array Int (Array Int Int)))) (and (exists ((v_ULTIMATE.start_foo_~b.base_4 Int) (v_ULTIMATE.start_foo_~n_5 Int) (|v_ULTIMATE.start_foo_#in~size_2| Int) (|v_ULTIMATE.start_read~int_#ptr.base_3| Int) (|v_ULTIMATE.start_read~int_#ptr.offset_3| Int) (|v_ULTIMATE.start_read~int_#value_3| Int) (|v_ULTIMATE.start_foo_#in~n_2| Int) (v_ULTIMATE.start_foo_~a~0_7 (Array Int Int)) (|v_ULTIMATE.start_read~int_#sizeOfReadType_3| Int) (v_ULTIMATE.start_foo_~b.offset_4 Int) (|v_ULTIMATE.start_foo_#in~b.base_2| Int) (v_ULTIMATE.start_foo_~size_5 Int) (|v_ULTIMATE.start_foo_#in~b.offset_2| Int)) (and (<= v_ULTIMATE.start_foo_~size_5 |v_ULTIMATE.start_write~int_#value_2|) (or (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_foo_#in~size_2| (+ ULTIMATE.start_main_~i~1 (- 2))) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= |v_ULTIMATE.start_foo_#in~b.base_2| v_ULTIMATE.start_foo_~b.base_4) (= 0 |#NULL.base|) (= (+ ULTIMATE.start_main_~i~1 (- 2)) |v_ULTIMATE.start_foo_#in~n_2|) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (= v_ULTIMATE.start_foo_~b.offset_4 |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |v_ULTIMATE.start_write~int_#value_2| 2) (< 0 v_ULTIMATE.start_foo_~size_5) (exists ((v_ULTIMATE.start_foo_~a~0_6 (Array Int Int))) (and (exists ((v_ULTIMATE.start_foo_~a~0_5 (Array Int Int))) (= (store v_ULTIMATE.start_foo_~a~0_5 0 (select (select |v_ULTIMATE.start_write~int_old_#memory_int_2| v_ULTIMATE.start_foo_~b.base_4) v_ULTIMATE.start_foo_~b.offset_4)) v_ULTIMATE.start_foo_~a~0_6)) (= (store v_ULTIMATE.start_foo_~a~0_6 1 |v_ULTIMATE.start_read~int_#value_3|) v_ULTIMATE.start_foo_~a~0_7))) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (= 0 (+ ULTIMATE.start_main_~i~1 (- 2))) (= |v_ULTIMATE.start_read~int_#ptr.base_3| v_ULTIMATE.start_foo_~b.base_4) (<= (+ v_ULTIMATE.start_foo_~b.offset_4 4) (select |#length| v_ULTIMATE.start_foo_~b.base_4)) (< 1 v_ULTIMATE.start_foo_~n_5) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= 4 |v_ULTIMATE.start_read~int_#sizeOfReadType_3|) (<= (+ |v_ULTIMATE.start_read~int_#sizeOfReadType_3| |v_ULTIMATE.start_read~int_#ptr.offset_3|) (select |#length| |v_ULTIMATE.start_read~int_#ptr.base_3|)) (= |v_ULTIMATE.start_foo_#in~size_2| v_ULTIMATE.start_foo_~size_5) (= 1 (select |#valid| |v_ULTIMATE.start_read~int_#ptr.base_3|)) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_2|) (<= 0 |v_ULTIMATE.start_read~int_#ptr.offset_3|) (< ULTIMATE.start_main_~i~1 102) (= (select |#valid| v_ULTIMATE.start_foo_~b.base_4) 1) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= v_ULTIMATE.start_foo_~n_5 |v_ULTIMATE.start_foo_#in~n_2|) (<= 0 v_ULTIMATE.start_foo_~b.offset_4) (= (select (select |v_ULTIMATE.start_write~int_old_#memory_int_2| |v_ULTIMATE.start_read~int_#ptr.base_3|) |v_ULTIMATE.start_read~int_#ptr.offset_3|) |v_ULTIMATE.start_read~int_#value_3|) (= |#NULL.offset| 0) (< 0 v_ULTIMATE.start_foo_~n_5) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_2|) (= (+ v_ULTIMATE.start_foo_~b.offset_4 4) |v_ULTIMATE.start_read~int_#ptr.offset_3|) (< 1 v_ULTIMATE.start_foo_~size_5)) (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_foo_#in~size_2| (+ ULTIMATE.start_main_~i~1 (- 2))) (= |v_ULTIMATE.start_foo_#in~b.base_2| v_ULTIMATE.start_foo_~b.base_4) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= 0 |#NULL.base|) (= (+ ULTIMATE.start_main_~i~1 (- 2)) |v_ULTIMATE.start_foo_#in~n_2|) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (= v_ULTIMATE.start_foo_~b.offset_4 |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (< ULTIMATE.start_main_~i~1 102) (= 0 (+ ULTIMATE.start_main_~i~1 (- 2))) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_write~int_#value_2| 0) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= v_ULTIMATE.start_foo_~n_5 |v_ULTIMATE.start_foo_#in~n_2|) (= |#NULL.offset| 0) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_2|) (= |v_ULTIMATE.start_foo_#in~size_2| v_ULTIMATE.start_foo_~size_5))))) (<= 0 (+ |v_ULTIMATE.start_write~int_#value_2| 2147483648)) (= (store |v_ULTIMATE.start_write~int_old_#memory_int_2| |ULTIMATE.start_main_~#b~0.base| (store (select |v_ULTIMATE.start_write~int_old_#memory_int_2| |ULTIMATE.start_main_~#b~0.base|) (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1) (- 8)) |v_ULTIMATE.start_write~int_#value_2|)) |ULTIMATE.start_write~int_old_#memory_int|) (<= |v_ULTIMATE.start_write~int_#value_2| 2147483647))))) (= v_ULTIMATE.start_foo_~b.offset_5 |v_ULTIMATE.start_foo_#in~b.offset_3|) (= |v_ULTIMATE.start_read~int_#value_5| (select (select |ULTIMATE.start_write~int_old_#memory_int| |v_ULTIMATE.start_read~int_#ptr.base_5|) |v_ULTIMATE.start_read~int_#ptr.offset_5|)) (< 1 v_ULTIMATE.start_foo_~n_6) (= |v_ULTIMATE.start_foo_#in~size_3| (+ ULTIMATE.start_main_~i~1 (- 1))) (< 0 v_ULTIMATE.start_foo_~size_6) (= |v_ULTIMATE.start_read~int_#ptr.base_5| v_ULTIMATE.start_foo_~b.base_5) (= |v_ULTIMATE.start_foo_#in~b.base_3| v_ULTIMATE.start_foo_~b.base_5) (<= 0 v_ULTIMATE.start_foo_~b.offset_5) (= |ULTIMATE.start_write~int_#value| 2) (= (+ ULTIMATE.start_main_~i~1 (- 1)) |v_ULTIMATE.start_foo_#in~n_3|) (exists ((v_ULTIMATE.start_foo_~a~0_9 (Array Int Int))) (and (= v_ULTIMATE.start_foo_~a~0_10 (store v_ULTIMATE.start_foo_~a~0_9 1 |v_ULTIMATE.start_read~int_#value_5|)) (exists ((v_ULTIMATE.start_foo_~a~0_8 (Array Int Int))) (= v_ULTIMATE.start_foo_~a~0_9 (store v_ULTIMATE.start_foo_~a~0_8 0 (select (select |ULTIMATE.start_write~int_old_#memory_int| v_ULTIMATE.start_foo_~b.base_5) v_ULTIMATE.start_foo_~b.offset_5)))))) (= (select |#valid| |v_ULTIMATE.start_read~int_#ptr.base_5|) 1) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_3|) (= |v_ULTIMATE.start_foo_#in~size_3| v_ULTIMATE.start_foo_~size_6) (< 1 v_ULTIMATE.start_foo_~size_6) (= v_ULTIMATE.start_foo_~n_6 |v_ULTIMATE.start_foo_#in~n_3|) (<= (+ v_ULTIMATE.start_foo_~b.offset_5 4) (select |#length| v_ULTIMATE.start_foo_~b.base_5)) (<= 0 |v_ULTIMATE.start_read~int_#ptr.offset_5|) (= 4 |v_ULTIMATE.start_read~int_#sizeOfReadType_5|) (< 0 v_ULTIMATE.start_foo_~n_6)) (and (= v_ULTIMATE.start_foo_~b.offset_5 |v_ULTIMATE.start_foo_#in~b.offset_3|) (= |v_ULTIMATE.start_foo_#in~size_3| (+ ULTIMATE.start_main_~i~1 (- 1))) (= (+ ULTIMATE.start_main_~i~1 (- 1)) |v_ULTIMATE.start_foo_#in~n_3|) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_3|) (< ULTIMATE.start_main_~i~1 101) (or (and (= 1 (select |#valid| |ULTIMATE.start_main_~#b~0.base|)) (<= 8 (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1))) (exists ((|v_ULTIMATE.start_write~int_#value_2| Int) (|v_ULTIMATE.start_write~int_old_#memory_int_2| (Array Int (Array Int Int)))) (and (<= 0 (+ |v_ULTIMATE.start_write~int_#value_2| 2147483648)) (exists ((v_ULTIMATE.start_foo_~b.base_4 Int) (|v_ULTIMATE.start_foo_#in~n_2| Int) (v_ULTIMATE.start_foo_~a~0_7 (Array Int Int)) (v_ULTIMATE.start_foo_~n_5 Int) (|v_ULTIMATE.start_foo_#in~size_2| Int) (v_ULTIMATE.start_foo_~b.offset_4 Int) (|v_ULTIMATE.start_foo_#in~b.base_2| Int) (v_ULTIMATE.start_foo_~size_5 Int) (|v_ULTIMATE.start_foo_#in~b.offset_2| Int)) (and (or (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_foo_#in~size_2| (+ ULTIMATE.start_main_~i~1 (- 2))) (= |v_ULTIMATE.start_foo_#in~b.base_2| v_ULTIMATE.start_foo_~b.base_4) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= 0 |#NULL.base|) (= (+ ULTIMATE.start_main_~i~1 (- 2)) |v_ULTIMATE.start_foo_#in~n_2|) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (= v_ULTIMATE.start_foo_~b.offset_4 |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (< ULTIMATE.start_main_~i~1 102) (= 0 (+ ULTIMATE.start_main_~i~1 (- 2))) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_write~int_#value_2| 0) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= v_ULTIMATE.start_foo_~n_5 |v_ULTIMATE.start_foo_#in~n_2|) (= |#NULL.offset| 0) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_2|) (= |v_ULTIMATE.start_foo_#in~size_2| v_ULTIMATE.start_foo_~size_5)) (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |v_ULTIMATE.start_foo_#in~size_2| (+ ULTIMATE.start_main_~i~1 (- 2))) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= |v_ULTIMATE.start_foo_#in~b.base_2| v_ULTIMATE.start_foo_~b.base_4) (= 0 |#NULL.base|) (= (+ ULTIMATE.start_main_~i~1 (- 2)) |v_ULTIMATE.start_foo_#in~n_2|) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (= v_ULTIMATE.start_foo_~b.offset_4 |v_ULTIMATE.start_foo_#in~b.offset_2|) (= |v_ULTIMATE.start_write~int_#value_2| 2) (= (+ v_ULTIMATE.start_foo_~b.offset_4 4) |v_ULTIMATE.start_read~int_#ptr.offset_5|) (< 0 v_ULTIMATE.start_foo_~size_5) (exists ((v_ULTIMATE.start_foo_~a~0_6 (Array Int Int))) (and (= v_ULTIMATE.start_foo_~a~0_7 (store v_ULTIMATE.start_foo_~a~0_6 1 |v_ULTIMATE.start_read~int_#value_5|)) (exists ((v_ULTIMATE.start_foo_~a~0_5 (Array Int Int))) (= (store v_ULTIMATE.start_foo_~a~0_5 0 (select (select |v_ULTIMATE.start_write~int_old_#memory_int_2| v_ULTIMATE.start_foo_~b.base_4) v_ULTIMATE.start_foo_~b.offset_4)) v_ULTIMATE.start_foo_~a~0_6)))) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (<= (+ |v_ULTIMATE.start_read~int_#sizeOfReadType_5| |v_ULTIMATE.start_read~int_#ptr.offset_5|) (select |#length| |v_ULTIMATE.start_read~int_#ptr.base_5|)) (= 0 (+ ULTIMATE.start_main_~i~1 (- 2))) (<= (+ v_ULTIMATE.start_foo_~b.offset_4 4) (select |#length| v_ULTIMATE.start_foo_~b.base_4)) (< 1 v_ULTIMATE.start_foo_~n_5) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= |v_ULTIMATE.start_read~int_#value_5| (select (select |v_ULTIMATE.start_write~int_old_#memory_int_2| |v_ULTIMATE.start_read~int_#ptr.base_5|) |v_ULTIMATE.start_read~int_#ptr.offset_5|)) (= |v_ULTIMATE.start_foo_#in~size_2| v_ULTIMATE.start_foo_~size_5) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= |ULTIMATE.start_main_~#b~0.offset| |v_ULTIMATE.start_foo_#in~b.offset_2|) (= (select |#valid| |v_ULTIMATE.start_read~int_#ptr.base_5|) 1) (< ULTIMATE.start_main_~i~1 102) (= (select |#valid| v_ULTIMATE.start_foo_~b.base_4) 1) (= |v_ULTIMATE.start_read~int_#ptr.base_5| v_ULTIMATE.start_foo_~b.base_4) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= v_ULTIMATE.start_foo_~n_5 |v_ULTIMATE.start_foo_#in~n_2|) (<= 0 v_ULTIMATE.start_foo_~b.offset_4) (<= 0 |v_ULTIMATE.start_read~int_#ptr.offset_5|) (= 4 |v_ULTIMATE.start_read~int_#sizeOfReadType_5|) (= |#NULL.offset| 0) (< 0 v_ULTIMATE.start_foo_~n_5) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_2|) (< 1 v_ULTIMATE.start_foo_~size_5))) (<= v_ULTIMATE.start_foo_~size_5 |v_ULTIMATE.start_write~int_#value_2|))) (= (store |v_ULTIMATE.start_write~int_old_#memory_int_2| |ULTIMATE.start_main_~#b~0.base| (store (select |v_ULTIMATE.start_write~int_old_#memory_int_2| |ULTIMATE.start_main_~#b~0.base|) (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1) (- 8)) |v_ULTIMATE.start_write~int_#value_2|)) |ULTIMATE.start_write~int_old_#memory_int|) (<= |v_ULTIMATE.start_write~int_#value_2| 2147483647))) (<= (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1)) (+ (select |#length| |ULTIMATE.start_main_~#b~0.base|) 4))) (and (= 0 |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= |ULTIMATE.start_main_~#b~0.offset| |ULTIMATE.start_#Ultimate.alloc_#res.offset|) (= 400 |ULTIMATE.start_#Ultimate.alloc_~size|) (= 0 |#NULL.base|) (= 0 (+ ULTIMATE.start_main_~i~1 (- 1))) (exists ((|v_#valid_6| (Array Int Int))) (and (= |ULTIMATE.start_main_old_#valid| (store |v_#valid_6| 0 0)) (= |ULTIMATE.start_#Ultimate.alloc_old_#valid| (store |v_#valid_6| 0 0)))) (not (= |ULTIMATE.start_#Ultimate.alloc_#res.base| 0)) (= 0 (select |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base|)) (= |#valid| (store |ULTIMATE.start_#Ultimate.alloc_old_#valid| |ULTIMATE.start_#Ultimate.alloc_#res.base| 1)) (= (store |ULTIMATE.start_#Ultimate.alloc_old_#length| |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_#Ultimate.alloc_~size|) |#length|) (= |ULTIMATE.start_#Ultimate.alloc_#res.base| |ULTIMATE.start_main_~#b~0.base|) (= |#NULL.offset| 0))) (= |ULTIMATE.start_write~int_#value| 0) (= |ULTIMATE.start_main_~#b~0.base| |v_ULTIMATE.start_foo_#in~b.base_3|) (= |v_ULTIMATE.start_foo_#in~size_3| v_ULTIMATE.start_foo_~size_6) (= |v_ULTIMATE.start_foo_#in~b.base_3| v_ULTIMATE.start_foo_~b.base_5) (= v_ULTIMATE.start_foo_~n_6 |v_ULTIMATE.start_foo_#in~n_3|))) (<= v_ULTIMATE.start_foo_~size_6 |ULTIMATE.start_write~int_#value|))) (= (select |#valid| |ULTIMATE.start_write~int_#ptr.base|) 1) (= 1 (select |#valid| |ULTIMATE.start_read~int_#ptr.base|)) (< ULTIMATE.start_foo_~i~0 ULTIMATE.start_foo_~size) (or (not (< ULTIMATE.start_foo_~i~0 ULTIMATE.start_foo_~n)) (not (<= 0 ULTIMATE.start_foo_~i~0))) (<= (+ |ULTIMATE.start_read~int_#sizeOfReadType| |ULTIMATE.start_read~int_#ptr.offset|) (select |#length| |ULTIMATE.start_read~int_#ptr.base|)) (= ULTIMATE.start_main_~i~1 |ULTIMATE.start_foo_#in~n|) (= ULTIMATE.start_main_~i~1 |ULTIMATE.start_foo_#in~size|) (< 0 ULTIMATE.start_foo_~n) (<= 0 |ULTIMATE.start_read~int_#ptr.offset|) (= |ULTIMATE.start_read~int_#sizeOfReadType| 4) (= |ULTIMATE.start_foo_#in~size| ULTIMATE.start_foo_~size) (= |ULTIMATE.start_write~int_#ptr.base| |ULTIMATE.start_main_~#b~0.base|) (< ULTIMATE.start_main_~i~1 100) (<= 0 |ULTIMATE.start_write~int_#ptr.offset|) (= |ULTIMATE.start_write~int_#sizeOfWrittenType| 4) (= (+ |ULTIMATE.start_main_~#b~0.offset| (* 4 ULTIMATE.start_main_~i~1)) (+ |ULTIMATE.start_write~int_#ptr.offset| 4)) (= |ULTIMATE.start_foo_#in~b.base| ULTIMATE.start_foo_~b.base) (<= 0 (+ |ULTIMATE.start_write~int_#value| 2147483648)) (< 0 ULTIMATE.start_foo_~size) (= 1 ULTIMATE.start_foo_~i~0) (= |ULTIMATE.start_foo_#in~b.offset| ULTIMATE.start_foo_~b.offset) (= |ULTIMATE.start_foo_#in~b.offset| |ULTIMATE.start_main_~#b~0.offset|) (= ULTIMATE.start_foo_~b.base |ULTIMATE.start_read~int_#ptr.base|) (= (store |ULTIMATE.start_write~int_old_#memory_int| |ULTIMATE.start_write~int_#ptr.base| (store (select |ULTIMATE.start_write~int_old_#memory_int| |ULTIMATE.start_write~int_#ptr.base|) |ULTIMATE.start_write~int_#ptr.offset| |ULTIMATE.start_write~int_#value|)) |#memory_int|) (= |ULTIMATE.start_read~int_#ptr.offset| ULTIMATE.start_foo_~b.offset) (= |ULTIMATE.start_read~int_#value| (select (select |#memory_int| |ULTIMATE.start_read~int_#ptr.base|) |ULTIMATE.start_read~int_#ptr.offset|)) (<= (+ |ULTIMATE.start_write~int_#sizeOfWrittenType| |ULTIMATE.start_write~int_#ptr.offset|) (select |#length| |ULTIMATE.start_write~int_#ptr.base|)) (= ULTIMATE.start_foo_~n |ULTIMATE.start_foo_#in~n|) (exists ((v_ULTIMATE.start_foo_~a~0_11 (Array Int Int))) (= ULTIMATE.start_foo_~a~0 (store v_ULTIMATE.start_foo_~a~0_11 0 |ULTIMATE.start_read~int_#value|)))) [2019-08-06 16:57:21,412 WARN L88 terpretationObserver]: Some locations of interest might be reachable, see reported results. [2019-08-06 16:57:21,421 INFO L132 PluginConnector]: ------------------------ END Symbolic Interpretation---------------------------- [2019-08-06 16:57:21,424 INFO L168 Benchmark]: Toolchain (without parser) took 800.59 ms. Allocated memory is still 130.5 MB. Free memory was 106.5 MB in the beginning and 71.9 MB in the end (delta: 34.6 MB). Peak memory consumption was 34.6 MB. Max. memory is 7.1 GB. [2019-08-06 16:57:21,426 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.21 ms. Allocated memory is still 130.5 MB. Free memory is still 107.7 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-08-06 16:57:21,429 INFO L168 Benchmark]: Boogie Preprocessor took 47.41 ms. Allocated memory is still 130.5 MB. Free memory was 106.5 MB in the beginning and 104.2 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. [2019-08-06 16:57:21,430 INFO L168 Benchmark]: RCFGBuilder took 317.70 ms. Allocated memory is still 130.5 MB. Free memory was 104.2 MB in the beginning and 91.7 MB in the end (delta: 12.5 MB). Peak memory consumption was 12.5 MB. Max. memory is 7.1 GB. [2019-08-06 16:57:21,431 INFO L168 Benchmark]: Symbolic Interpretation took 432.19 ms. Allocated memory is still 130.5 MB. Free memory was 91.7 MB in the beginning and 71.9 MB in the end (delta: 19.9 MB). Peak memory consumption was 19.9 MB. Max. memory is 7.1 GB. [2019-08-06 16:57:21,435 INFO L335 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.symbolicinterpretation: - UnprovableResult [Line: 129]: Unable to prove that assertion always holds Unable to prove that assertion always holds Reason: Interpreter reached this location of interest. Location might be reachable.. Possible FailurePath: * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.21 ms. Allocated memory is still 130.5 MB. Free memory is still 107.7 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Preprocessor took 47.41 ms. Allocated memory is still 130.5 MB. Free memory was 106.5 MB in the beginning and 104.2 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. * RCFGBuilder took 317.70 ms. Allocated memory is still 130.5 MB. Free memory was 104.2 MB in the beginning and 91.7 MB in the end (delta: 12.5 MB). Peak memory consumption was 12.5 MB. Max. memory is 7.1 GB. * Symbolic Interpretation took 432.19 ms. Allocated memory is still 130.5 MB. Free memory was 91.7 MB in the beginning and 71.9 MB in the end (delta: 19.9 MB). Peak memory consumption was 19.9 MB. Max. memory is 7.1 GB. RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request...