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-b03553c [2019-08-05 18:14:27,605 INFO L177 SettingsManager]: Resetting all preferences to default values... [2019-08-05 18:14:27,607 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2019-08-05 18:14:27,619 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-08-05 18:14:27,620 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-08-05 18:14:27,621 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-08-05 18:14:27,622 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-08-05 18:14:27,625 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2019-08-05 18:14:27,627 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-08-05 18:14:27,628 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-08-05 18:14:27,629 INFO L181 SettingsManager]: Resetting Symbolic Interpretation preferences to default values [2019-08-05 18:14:27,631 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-08-05 18:14:27,631 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-08-05 18:14:27,632 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-08-05 18:14:27,633 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-08-05 18:14:27,635 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-08-05 18:14:27,636 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-08-05 18:14:27,637 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-08-05 18:14:27,639 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-08-05 18:14:27,642 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2019-08-05 18:14:27,645 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-08-05 18:14:27,646 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-08-05 18:14:27,648 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2019-08-05 18:14:27,649 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-08-05 18:14:27,652 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-08-05 18:14:27,652 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-08-05 18:14:27,653 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-08-05 18:14:27,654 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2019-08-05 18:14:27,654 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-08-05 18:14:27,656 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2019-08-05 18:14:27,656 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-08-05 18:14:27,657 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2019-08-05 18:14:27,658 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-08-05 18:14:27,659 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2019-08-05 18:14:27,661 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-08-05 18:14:27,661 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2019-08-05 18:14:27,662 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-08-05 18:14:27,662 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-08-05 18:14:27,663 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2019-08-05 18:14:27,664 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2019-08-05 18:14:27,665 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2019-08-05 18:14:27,695 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-08-05 18:14:27,709 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-08-05 18:14:27,712 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-08-05 18:14:27,714 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-08-05 18:14:27,715 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2019-08-05 18:14:27,716 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-05 18:14:27,716 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-05 18:14:27,765 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-08-05 18:14:27,767 INFO L131 ToolchainWalker]: Walking toolchain with 3 elements. [2019-08-05 18:14:27,767 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-08-05 18:14:27,768 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-08-05 18:14:27,768 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2019-08-05 18:14:27,794 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,796 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,808 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,808 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,813 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,816 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,817 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 05.08 06:14:27" (1/1) ... [2019-08-05 18:14:27,819 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-08-05 18:14:27,820 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-08-05 18:14:27,821 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-08-05 18:14:27,821 INFO L275 PluginConnector]: RCFGBuilder initialized [2019-08-05 18:14:27,822 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 05.08 06:14:27" (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-05 18:14:27,901 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2019-08-05 18:14:27,901 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-08-05 18:14:27,902 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-08-05 18:14:28,301 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-08-05 18:14:28,301 INFO L283 CfgBuilder]: Removed 0 assume(true) statements. [2019-08-05 18:14:28,303 INFO L202 PluginConnector]: Adding new model ArraysOfVariableLength_true-valid-memsafety.c_11.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.08 06:14:28 BoogieIcfgContainer [2019-08-05 18:14:28,303 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-08-05 18:14:28,303 INFO L113 PluginConnector]: ------------------------Symbolic Interpretation---------------------------- [2019-08-05 18:14:28,304 INFO L271 PluginConnector]: Initializing Symbolic Interpretation... [2019-08-05 18:14:28,304 INFO L275 PluginConnector]: Symbolic Interpretation initialized [2019-08-05 18:14:28,305 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 05.08 06:14:28" (1/1) ... [2019-08-05 18:14:28,320 INFO L148 IcfgInterpreter]: Started Sifa with 1 locations of interest [2019-08-05 18:14:28,323 INFO L155 IcfgInterpreter]: Building call graph [2019-08-05 18:14:28,338 INFO L160 IcfgInterpreter]: Initial procedures are [ULTIMATE.start] [2019-08-05 18:14:28,347 INFO L165 IcfgInterpreter]: Starting interpretation [2019-08-05 18:14:28,349 INFO L185 IcfgInterpreter]: Interpreting procedure ULTIMATE.start with input of size 1 [2019-08-05 18:14:28,691 INFO L169 IcfgInterpreter]: Interpretation finished [2019-08-05 18:14:28,692 INFO L177 IcfgInterpreter]: Final predicates for locations of interest are: [2019-08-05 18:14:28,696 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-05 18:14:28,701 WARN L88 terpretationObserver]: Some locations of interest might be reachable, see reported results. [2019-08-05 18:14:28,709 INFO L132 PluginConnector]: ------------------------ END Symbolic Interpretation---------------------------- [2019-08-05 18:14:28,712 INFO L168 Benchmark]: Toolchain (without parser) took 944.37 ms. Allocated memory is still 133.7 MB. Free memory was 108.6 MB in the beginning and 74.1 MB in the end (delta: 34.5 MB). Peak memory consumption was 34.5 MB. Max. memory is 7.1 GB. [2019-08-05 18:14:28,714 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.29 ms. Allocated memory is still 133.7 MB. Free memory was 110.0 MB in the beginning and 109.8 MB in the end (delta: 209.9 kB). Peak memory consumption was 209.9 kB. Max. memory is 7.1 GB. [2019-08-05 18:14:28,715 INFO L168 Benchmark]: Boogie Preprocessor took 52.24 ms. Allocated memory is still 133.7 MB. Free memory was 108.4 MB in the beginning and 106.2 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. [2019-08-05 18:14:28,716 INFO L168 Benchmark]: RCFGBuilder took 482.72 ms. Allocated memory is still 133.7 MB. Free memory was 106.2 MB in the beginning and 93.6 MB in the end (delta: 12.6 MB). Peak memory consumption was 12.6 MB. Max. memory is 7.1 GB. [2019-08-05 18:14:28,717 INFO L168 Benchmark]: Symbolic Interpretation took 405.69 ms. Allocated memory is still 133.7 MB. Free memory was 93.6 MB in the beginning and 74.1 MB in the end (delta: 19.6 MB). Peak memory consumption was 19.6 MB. Max. memory is 7.1 GB. [2019-08-05 18:14:28,723 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.29 ms. Allocated memory is still 133.7 MB. Free memory was 110.0 MB in the beginning and 109.8 MB in the end (delta: 209.9 kB). Peak memory consumption was 209.9 kB. Max. memory is 7.1 GB. * Boogie Preprocessor took 52.24 ms. Allocated memory is still 133.7 MB. Free memory was 108.4 MB in the beginning and 106.2 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. * RCFGBuilder took 482.72 ms. Allocated memory is still 133.7 MB. Free memory was 106.2 MB in the beginning and 93.6 MB in the end (delta: 12.6 MB). Peak memory consumption was 12.6 MB. Max. memory is 7.1 GB. * Symbolic Interpretation took 405.69 ms. Allocated memory is still 133.7 MB. Free memory was 93.6 MB in the beginning and 74.1 MB in the end (delta: 19.6 MB). Peak memory consumption was 19.6 MB. Max. memory is 7.1 GB. RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request...