java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -s ../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf -i ../../../trunk/examples/programs/heapseparator/speedup-poc-dd-5-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b7bd044-m [2019-01-18 14:51:39,532 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-18 14:51:39,535 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-18 14:51:39,552 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-18 14:51:39,552 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-18 14:51:39,554 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-18 14:51:39,555 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-18 14:51:39,559 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-18 14:51:39,561 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-18 14:51:39,562 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-18 14:51:39,570 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-18 14:51:39,571 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-18 14:51:39,572 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-18 14:51:39,573 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-18 14:51:39,576 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-18 14:51:39,577 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-18 14:51:39,578 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-18 14:51:39,583 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-18 14:51:39,588 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-18 14:51:39,590 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-18 14:51:39,592 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-18 14:51:39,593 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-18 14:51:39,597 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-18 14:51:39,597 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-18 14:51:39,598 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-18 14:51:39,598 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-18 14:51:39,600 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-18 14:51:39,601 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-18 14:51:39,601 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-18 14:51:39,602 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-18 14:51:39,603 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-18 14:51:39,606 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-18 14:51:39,606 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-18 14:51:39,606 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-18 14:51:39,608 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-18 14:51:39,608 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-18 14:51:39,609 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf [2019-01-18 14:51:39,632 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-18 14:51:39,632 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-18 14:51:39,633 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-18 14:51:39,633 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-18 14:51:39,634 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-18 14:51:39,634 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-18 14:51:39,634 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-18 14:51:39,634 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-18 14:51:39,634 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-18 14:51:39,635 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-18 14:51:39,635 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-18 14:51:39,635 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-18 14:51:39,635 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-18 14:51:39,636 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-18 14:51:39,636 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-18 14:51:39,636 INFO L133 SettingsManager]: * Use SBE=true [2019-01-18 14:51:39,636 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-18 14:51:39,637 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-18 14:51:39,638 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-18 14:51:39,638 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-18 14:51:39,638 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-18 14:51:39,638 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-18 14:51:39,638 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-18 14:51:39,639 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-18 14:51:39,639 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-18 14:51:39,639 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:51:39,639 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-18 14:51:39,639 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-18 14:51:39,640 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-18 14:51:39,685 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-18 14:51:39,698 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-18 14:51:39,705 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-18 14:51:39,706 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-18 14:51:39,707 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-18 14:51:39,708 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-5-unlimited.bpl [2019-01-18 14:51:39,708 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-5-unlimited.bpl' [2019-01-18 14:51:39,764 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-18 14:51:39,766 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-18 14:51:39,767 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-18 14:51:39,767 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-18 14:51:39,767 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-18 14:51:39,784 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,798 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,823 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-18 14:51:39,827 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-18 14:51:39,827 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-18 14:51:39,827 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-18 14:51:39,837 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,837 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,839 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,839 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,843 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,849 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,850 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/1) ... [2019-01-18 14:51:39,852 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-18 14:51:39,852 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-18 14:51:39,853 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-18 14:51:39,853 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-18 14:51:39,854 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (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 [2019-01-18 14:51:39,922 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-18 14:51:39,922 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-18 14:51:40,596 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-18 14:51:40,597 INFO L286 CfgBuilder]: Removed 13 assue(true) statements. [2019-01-18 14:51:40,598 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:51:40 BoogieIcfgContainer [2019-01-18 14:51:40,598 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-18 14:51:40,599 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-18 14:51:40,600 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-18 14:51:40,603 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-18 14:51:40,603 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:39" (1/2) ... [2019-01-18 14:51:40,604 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5eb86ed3 and model type speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.01 02:51:40, skipping insertion in model container [2019-01-18 14:51:40,604 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-5-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:51:40" (2/2) ... [2019-01-18 14:51:40,606 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-5-unlimited.bpl [2019-01-18 14:51:40,616 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-18 14:51:40,624 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 5 error locations. [2019-01-18 14:51:40,642 INFO L257 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2019-01-18 14:51:40,678 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-18 14:51:40,679 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-18 14:51:40,679 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-18 14:51:40,679 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-18 14:51:40,679 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-18 14:51:40,680 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-18 14:51:40,680 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-18 14:51:40,680 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-18 14:51:40,706 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states. [2019-01-18 14:51:40,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-18 14:51:40,718 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:40,719 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-18 14:51:40,721 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:40,729 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:40,729 INFO L82 PathProgramCache]: Analyzing trace with hash 984, now seen corresponding path program 1 times [2019-01-18 14:51:40,732 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:40,782 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,782 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:40,782 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,782 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:40,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:40,959 INFO L273 TraceCheckUtils]: 0: Hoare triple {16#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {18#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:51:40,964 INFO L273 TraceCheckUtils]: 1: Hoare triple {18#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {17#false} is VALID [2019-01-18 14:51:40,966 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:40,969 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:51:40,969 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:51:40,969 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:51:40,974 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:51:40,976 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:51:40,980 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:51:41,011 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2 edges. 2 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:41,012 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:51:41,019 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:51:41,019 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:51:41,022 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 3 states. [2019-01-18 14:51:41,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:41,417 INFO L93 Difference]: Finished difference Result 25 states and 33 transitions. [2019-01-18 14:51:41,417 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:51:41,417 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:51:41,417 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:51:41,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:41,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 33 transitions. [2019-01-18 14:51:41,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:41,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 33 transitions. [2019-01-18 14:51:41,426 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 33 transitions. [2019-01-18 14:51:41,572 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:41,584 INFO L225 Difference]: With dead ends: 25 [2019-01-18 14:51:41,584 INFO L226 Difference]: Without dead ends: 20 [2019-01-18 14:51:41,588 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:51:41,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2019-01-18 14:51:41,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 12. [2019-01-18 14:51:41,659 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:51:41,660 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand 12 states. [2019-01-18 14:51:41,660 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 12 states. [2019-01-18 14:51:41,661 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 12 states. [2019-01-18 14:51:41,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:41,666 INFO L93 Difference]: Finished difference Result 20 states and 28 transitions. [2019-01-18 14:51:41,666 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 28 transitions. [2019-01-18 14:51:41,667 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:41,667 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:41,667 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 20 states. [2019-01-18 14:51:41,667 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 20 states. [2019-01-18 14:51:41,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:41,671 INFO L93 Difference]: Finished difference Result 20 states and 28 transitions. [2019-01-18 14:51:41,671 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 28 transitions. [2019-01-18 14:51:41,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:41,675 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:41,675 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:51:41,676 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:51:41,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-01-18 14:51:41,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 21 transitions. [2019-01-18 14:51:41,683 INFO L78 Accepts]: Start accepts. Automaton has 12 states and 21 transitions. Word has length 2 [2019-01-18 14:51:41,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:51:41,684 INFO L480 AbstractCegarLoop]: Abstraction has 12 states and 21 transitions. [2019-01-18 14:51:41,686 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:51:41,686 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 21 transitions. [2019-01-18 14:51:41,686 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:51:41,686 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:41,687 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:51:41,687 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:41,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:41,688 INFO L82 PathProgramCache]: Analyzing trace with hash 30372, now seen corresponding path program 1 times [2019-01-18 14:51:41,688 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:41,689 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:41,690 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:41,690 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:41,691 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:41,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:42,133 WARN L181 SmtUtils]: Spent 199.00 ms on a formula simplification. DAG size of input: 16 DAG size of output: 13 [2019-01-18 14:51:42,241 INFO L273 TraceCheckUtils]: 0: Hoare triple {102#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {104#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:51:42,242 INFO L273 TraceCheckUtils]: 1: Hoare triple {104#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {105#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:51:42,253 INFO L273 TraceCheckUtils]: 2: Hoare triple {105#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {103#false} is VALID [2019-01-18 14:51:42,254 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:42,254 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:42,254 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:51:42,255 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:51:42,256 INFO L207 CegarAbsIntRunner]: [0], [18], [23] [2019-01-18 14:51:42,305 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:51:42,305 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:51:46,579 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:46,580 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:46,582 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:46,583 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:46,583 WARN L224 ngHoareTripleChecker]: Pre: {2147483645#(forall ((v_idx_25 Int) (v_idx_26 Int) (v_idx_23 Int) (v_idx_24 Int) (v_idx_21 Int) (v_idx_22 Int) (v_idx_20 Int) (v_idx_18 Int) (v_idx_19 Int) (v_idx_27 Int) (v_idx_17 Int)) (exists ((v_v_67_1 Int) (v_v_46_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_20) v_v_2_1) (or (= (select |c_#valid| v_idx_23) v_v_54_1) (< v_idx_23 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_25) (= v_v_67_1 (select |c_#memory_int| v_idx_25))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_24)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_22) (< v_idx_22 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_22) 1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_19) v_v_48_1) (< v_idx_19 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_26 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_26) (= (select |c_#memory_int| v_idx_26) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_17) v_v_46_1) (<= c_ULTIMATE.start_main_p5 v_idx_17)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_18)) (< v_idx_18 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_18)) (or (= (select |c_#memory_int| v_idx_27) v_v_69_1) (< v_idx_27 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_21) (= (select |c_#valid| v_idx_21) v_v_52_1)))))} [2019-01-18 14:51:46,583 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:51:46,584 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:51:46,584 WARN L230 ngHoareTripleChecker]: Post: {2147483644#(forall ((v_idx_36 Int) (v_idx_37 Int) (v_idx_34 Int) (v_idx_35 Int) (v_idx_32 Int) (v_idx_33 Int) (v_idx_30 Int) (v_idx_31 Int) (v_idx_29 Int) (v_idx_38 Int) (v_idx_28 Int)) (exists ((v_v_46_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_70_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_38) v_v_72_1) (< v_idx_38 (+ c_ULTIMATE.start_main_p4 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_32) (= (select |c_#valid| v_idx_32) v_v_52_1)) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_37) (= (select |c_#memory_int| v_idx_37) v_v_71_1) (< v_idx_37 c_ULTIMATE.start_main_p4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 1 (select |c_#valid| v_idx_33)) (< v_idx_33 c_ULTIMATE.start_main_p5)) (or (< v_idx_34 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_34) v_v_54_1)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_35)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_29)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_29) (< v_idx_29 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p4 v_idx_36) (= (select |c_#memory_int| v_idx_36) v_v_70_1)) (or (< v_idx_30 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_30))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_31)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_46_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_28)) (<= c_ULTIMATE.start_main_p5 v_idx_28)))))} [2019-01-18 14:51:46,585 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:46,961 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:46,962 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:47,353 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_26 Int)) (or (< v_idx_26 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_26) (= (select |#memory_int| v_idx_26) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_18 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_18)) (< v_idx_18 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_18))) (forall ((v_idx_22 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_22) (< v_idx_22 ULTIMATE.start_main_p5) (= (select |#valid| v_idx_22) 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:51:47,353 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:51:47,354 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:51:47,465 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_29 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_29)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_29) (< v_idx_29 ULTIMATE.start_main_p5))) (forall ((v_idx_33 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 1 (select |#valid| v_idx_33)) (< v_idx_33 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:51:50,684 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:50,685 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:50,685 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:50,686 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:50,686 WARN L224 ngHoareTripleChecker]: Pre: {2147483643#(forall ((v_idx_47 Int) (v_idx_48 Int) (v_idx_45 Int) (v_idx_46 Int) (v_idx_43 Int) (v_idx_44 Int) (v_idx_41 Int) (v_idx_42 Int) (v_idx_40 Int) (v_idx_49 Int) (v_idx_39 Int)) (exists ((v_v_67_1 Int) (v_v_46_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_47) (= (select |c_#memory_int| v_idx_47) v_v_67_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_48 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 0 (select |c_#memory_int| v_idx_48))) (or (< v_idx_44 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_44)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_44)) (or (< v_idx_45 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_45) v_v_54_1)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_46)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_39) v_v_46_1) (<= c_ULTIMATE.start_main_p5 v_idx_39)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_40) (< v_idx_40 c_ULTIMATE.start_main_p5)) (= v_v_2_1 (select |c_old(#valid)| v_idx_42)) (or (< v_idx_49 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_49) v_v_69_1)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_43) v_v_52_1) (<= c_ULTIMATE.start_main_p5 v_idx_43)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_41) v_v_48_1) (< v_idx_41 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:51:50,686 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:50,687 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:50,687 WARN L230 ngHoareTripleChecker]: Post: {2147483642#(forall ((v_idx_58 Int) (v_idx_59 Int) (v_idx_56 Int) (v_idx_57 Int) (v_idx_54 Int) (v_idx_55 Int) (v_idx_52 Int) (v_idx_53 Int) (v_idx_50 Int) (v_idx_51 Int) (v_idx_60 Int)) (exists ((v_v_46_1 Int) (v_v_85_1 Int) (v_v_84_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_86_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= (- v_v_85_1 (- v_v_85_1)) (- 2)) (or (<= c_ULTIMATE.start_main_p1 v_idx_58) (= (select |c_#memory_int| v_idx_58) v_v_84_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_50) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_50) v_v_46_1)) (or (< v_idx_51 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_51) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_51))) (or (< v_idx_55 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_55) (= 1 (select |c_#valid| v_idx_55))) (= v_v_2_1 (select |c_old(#valid)| v_idx_53)) (or (= v_v_54_1 (select |c_#valid| v_idx_56)) (< v_idx_56 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= (+ v_v_85_1 1) 0) (= (select |c_old(#memory_int)| v_idx_57) v_v_4_1) (or (< v_idx_52 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_52))) (or (< v_idx_60 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_60) v_v_86_1)) (or (<= c_ULTIMATE.start_main_p5 v_idx_54) (= v_v_52_1 (select |c_#valid| v_idx_54))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_59) (= (select |c_#memory_int| v_idx_59) v_v_85_1) (< v_idx_59 c_ULTIMATE.start_main_p1)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:51:50,687 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:51,243 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:51,243 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:51,495 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_48 Int)) (or (< v_idx_48 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 0 (select |#memory_int| v_idx_48)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_44 Int)) (or (< v_idx_44 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_44)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_44))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_40 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_40) (< v_idx_40 ULTIMATE.start_main_p5))))} [2019-01-18 14:51:51,495 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:51,495 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:51,636 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_55 Int)) (or (< v_idx_55 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_55) (= 1 (select |#valid| v_idx_55)))) (forall ((v_idx_59 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_59) (< v_idx_59 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_59) 1) 0))) (forall ((v_prenex_1 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_1)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_1) (< v_prenex_1 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_51 Int)) (or (< v_idx_51 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_51) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_51)))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:51:54,407 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:54,407 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:54,408 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:54,408 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:54,409 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_70_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p4 v_idx_80) (= (select |c_#memory_int| v_idx_80) v_v_70_1)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_79)) (or (< v_idx_81 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_81) (= (select |c_#memory_int| v_idx_81) v_v_71_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_73) (< v_idx_73 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (or (< v_idx_74 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_48_1)) (or (< v_idx_77 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_77) (= (select |c_#valid| v_idx_77) 1)) (or (< v_idx_78 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_78) v_v_54_1)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_82 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_82) v_v_72_1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_75)) (or (= (select |c_#valid| v_idx_76) v_v_52_1) (<= c_ULTIMATE.start_main_p5 v_idx_76)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_46_1) (<= c_ULTIMATE.start_main_p5 v_idx_72))))) (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_46_1 Int) (v_v_67_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_70))) (or (= v_v_69_1 (select |c_#memory_int| v_idx_71)) (< v_idx_71 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_67) v_v_54_1) (< v_idx_67 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_62) (< v_idx_62 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_62) 0)) (= (select |c_old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |c_old(#valid)| v_idx_64)) (or (<= c_ULTIMATE.start_main_p5 v_idx_61) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_46_1)) (or (< v_idx_63 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_63))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_66 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_66) (= 1 (select |c_#valid| v_idx_66))) (or (<= c_ULTIMATE.start_main_p5 v_idx_65) (= (select |c_#valid| v_idx_65) v_v_52_1)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_69) (= (select |c_#memory_int| v_idx_69) v_v_67_1))))))} [2019-01-18 14:51:54,409 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:51:54,409 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:51:54,410 WARN L230 ngHoareTripleChecker]: Post: {2147483640#(forall ((v_idx_89 Int) (v_idx_87 Int) (v_idx_88 Int) (v_idx_85 Int) (v_idx_86 Int) (v_idx_83 Int) (v_idx_84 Int) (v_idx_92 Int) (v_idx_93 Int) (v_idx_90 Int) (v_idx_91 Int)) (exists ((v_v_89_1 Int) (v_v_88_1 Int) (v_v_46_1 Int) (v_v_52_1 Int) (v_v_87_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_91) v_v_87_1) (<= c_ULTIMATE.start_main_p4 v_idx_91)) (or (= (select |c_#memory_int| v_idx_93) v_v_89_1) (< v_idx_93 (+ c_ULTIMATE.start_main_p4 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_2_1 (select |c_old(#valid)| v_idx_86)) (or (= (select |c_#valid| v_idx_88) 1) (< v_idx_88 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_88)) (= (select |c_old(#memory_int)| v_idx_90) v_v_4_1) (or (< v_idx_92 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_92) (= (select |c_#memory_int| v_idx_92) v_v_88_1)) (or (< v_idx_89 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_89) v_v_54_1)) (or (= (select |c_#valid| v_idx_87) v_v_52_1) (<= c_ULTIMATE.start_main_p5 v_idx_87)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_84)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p5 v_idx_83) (= v_v_46_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_83))) (or (= v_v_48_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_85)) (< v_idx_85 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:51:54,410 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:54,899 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:54,899 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:03,137 WARN L181 SmtUtils]: Spent 8.24 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:03,138 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_70_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p4 v_idx_80) (= (select |#memory_int| v_idx_80) v_v_70_1)) (= v_v_4_1 (select |old(#memory_int)| v_idx_79)) (or (< v_idx_81 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_81) (= (select |#memory_int| v_idx_81) v_v_71_1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_73) (< v_idx_73 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (or (< v_idx_74 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_48_1)) (or (< v_idx_77 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_77) (= (select |#valid| v_idx_77) 1)) (or (< v_idx_78 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_78) v_v_54_1)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_82 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_82) v_v_72_1)) (= v_v_2_1 (select |old(#valid)| v_idx_75)) (or (= (select |#valid| v_idx_76) v_v_52_1) (<= ULTIMATE.start_main_p5 v_idx_76)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_46_1) (<= ULTIMATE.start_main_p5 v_idx_72))))) (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_46_1 Int) (v_v_67_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 ULTIMATE.start_main_p5) (= 0 (select |#memory_int| v_idx_70))) (or (= v_v_69_1 (select |#memory_int| v_idx_71)) (< v_idx_71 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#valid| v_idx_67) v_v_54_1) (< v_idx_67 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_62) (< v_idx_62 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_62) 0)) (= (select |old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |old(#valid)| v_idx_64)) (or (<= ULTIMATE.start_main_p5 v_idx_61) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_46_1)) (or (< v_idx_63 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_48_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_63))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_66 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_66) (= 1 (select |#valid| v_idx_66))) (or (<= ULTIMATE.start_main_p5 v_idx_65) (= (select |#valid| v_idx_65) v_v_52_1)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p5 v_idx_69) (= (select |#memory_int| v_idx_69) v_v_67_1))))))} [2019-01-18 14:52:03,138 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:03,138 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:52:03,180 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_84 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_84))) (forall ((v_idx_88 Int)) (or (= (select |#valid| v_idx_88) 1) (< v_idx_88 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_88))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:07,010 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:07,010 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:07,011 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:07,011 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:07,011 WARN L224 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_46_1 Int) (v_v_67_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_54_1 (select |c_#valid| v_idx_100)) (< v_idx_100 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_95)) (or (= (select |c_#memory_int| v_idx_103) 0) (< v_idx_103 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_103)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_101)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_46_1) (<= c_ULTIMATE.start_main_p5 v_idx_94)) (or (= (select |c_#memory_int| v_idx_102) v_v_67_1) (<= c_ULTIMATE.start_main_p5 v_idx_102)) (or (= (select |c_#valid| v_idx_98) v_v_52_1) (<= c_ULTIMATE.start_main_p5 v_idx_98)) (or (< v_idx_96 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_48_1)) (or (< v_idx_99 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_99) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_99)) (= (select |c_old(#valid)| v_idx_97) v_v_2_1) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_104) v_v_69_1) (< v_idx_104 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_70_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_114 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_114) (= (select |c_#memory_int| v_idx_114) v_v_71_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_72_1 (select |c_#memory_int| v_idx_115)) (< v_idx_115 (+ c_ULTIMATE.start_main_p4 1))) (or (= v_v_48_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_107)) (< v_idx_107 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p4 v_idx_113) (= (select |c_#memory_int| v_idx_113) v_v_70_1)) (or (< v_idx_106 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_106) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_106)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_110) (= 1 (select |c_#valid| v_idx_110)) (< v_idx_110 c_ULTIMATE.start_main_p5)) (or (= v_v_54_1 (select |c_#valid| v_idx_111)) (< v_idx_111 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_108)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_46_1) (<= c_ULTIMATE.start_main_p5 v_idx_105)) (or (= v_v_52_1 (select |c_#valid| v_idx_109)) (<= c_ULTIMATE.start_main_p5 v_idx_109)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_112))))))} [2019-01-18 14:52:07,011 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:07,012 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:07,012 WARN L230 ngHoareTripleChecker]: Post: {2147483638#(forall ((v_idx_126 Int) (v_idx_116 Int) (v_idx_124 Int) (v_idx_125 Int) (v_idx_119 Int) (v_idx_117 Int) (v_idx_118 Int) (v_idx_122 Int) (v_idx_123 Int) (v_idx_120 Int) (v_idx_121 Int)) (exists ((v_v_46_1 Int) (v_v_131_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_132_1 Int) (v_v_48_1 Int) (v_v_133_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_54_1 (select |c_#valid| v_idx_122)) (< v_idx_122 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_117) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_117)) (< v_idx_117 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_123)) (or (<= c_ULTIMATE.start_main_p5 v_idx_116) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_116) v_v_46_1)) (<= (+ v_v_132_1 1) 0) (or (= 1 (select |c_#valid| v_idx_121)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_121) (< v_idx_121 c_ULTIMATE.start_main_p5)) (or (< v_idx_118 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_118) v_v_48_1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_119)) (or (<= c_ULTIMATE.start_main_p1 v_idx_124) (= (select |c_#memory_int| v_idx_124) v_v_131_1)) (or (< v_idx_126 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_133_1 (select |c_#memory_int| v_idx_126))) (<= (- v_v_132_1 (- v_v_132_1)) (- 2)) (or (= v_v_132_1 (select |c_#memory_int| v_idx_125)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_52_1 (select |c_#valid| v_idx_120)) (<= c_ULTIMATE.start_main_p5 v_idx_120)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:52:07,012 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:07,773 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:07,774 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:15,940 WARN L181 SmtUtils]: Spent 8.17 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:15,941 WARN L270 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_46_1 Int) (v_v_67_1 Int) (v_v_69_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_54_1 (select |#valid| v_idx_100)) (< v_idx_100 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_95)) (or (= (select |#memory_int| v_idx_103) 0) (< v_idx_103 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_103)) (= v_v_4_1 (select |old(#memory_int)| v_idx_101)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_46_1) (<= ULTIMATE.start_main_p5 v_idx_94)) (or (= (select |#memory_int| v_idx_102) v_v_67_1) (<= ULTIMATE.start_main_p5 v_idx_102)) (or (= (select |#valid| v_idx_98) v_v_52_1) (<= ULTIMATE.start_main_p5 v_idx_98)) (or (< v_idx_96 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_48_1)) (or (< v_idx_99 ULTIMATE.start_main_p5) (= (select |#valid| v_idx_99) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_99)) (= (select |old(#valid)| v_idx_97) v_v_2_1) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_104) v_v_69_1) (< v_idx_104 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_52_1 Int) (v_v_54_1 Int) (v_v_70_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_48_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_114 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_114) (= (select |#memory_int| v_idx_114) v_v_71_1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_72_1 (select |#memory_int| v_idx_115)) (< v_idx_115 (+ ULTIMATE.start_main_p4 1))) (or (= v_v_48_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_107)) (< v_idx_107 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p4 v_idx_113) (= (select |#memory_int| v_idx_113) v_v_70_1)) (or (< v_idx_106 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_106) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_106)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_110) (= 1 (select |#valid| v_idx_110)) (< v_idx_110 ULTIMATE.start_main_p5)) (or (= v_v_54_1 (select |#valid| v_idx_111)) (< v_idx_111 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |old(#valid)| v_idx_108)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_46_1) (<= ULTIMATE.start_main_p5 v_idx_105)) (or (= v_v_52_1 (select |#valid| v_idx_109)) (<= ULTIMATE.start_main_p5 v_idx_109)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |old(#memory_int)| v_idx_112))))))} [2019-01-18 14:52:15,941 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:15,941 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:16,113 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_125 Int)) (or (<= (+ (select |#memory_int| v_idx_125) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_117 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_117) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_117)) (< v_idx_117 ULTIMATE.start_main_p5))) (forall ((v_idx_121 Int)) (or (= 1 (select |#valid| v_idx_121)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_121) (< v_idx_121 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_2 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_2)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:16,303 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:52:16,305 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:52:16,309 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:16,311 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:52:16,311 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:16,311 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:52:16,331 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:16,331 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:52:16,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:16,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:16,356 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:52:16,436 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,442 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-18 14:52:16,499 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,501 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,503 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-18 14:52:16,683 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,697 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,718 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,738 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:16,739 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-18 14:52:16,746 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,765 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,778 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,802 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-01-18 14:52:16,812 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-01-18 14:52:16,830 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-01-18 14:52:16,844 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-01-18 14:52:16,868 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 50 [2019-01-18 14:52:16,871 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,891 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,909 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,944 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,956 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:16,989 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:16,989 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 5 variables, input treesize:52, output treesize:50 [2019-01-18 14:52:17,002 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:17,002 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_27|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, |v_#valid_7|]. (let ((.cse0 (store |v_#valid_7| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= 0 (select (store .cse1 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4)) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= |#memory_int| (store (store (store (store (store |v_#memory_int_27| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0))))) [2019-01-18 14:52:17,003 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:52:17,204 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:17,208 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 45 [2019-01-18 14:52:17,214 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:17,246 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:17,247 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:55, output treesize:33 [2019-01-18 14:52:17,259 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:17,260 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_28| ULTIMATE.start_main_p4))) (and (= (store |v_#memory_int_28| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_28| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_28| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_28| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= .cse0 0))) [2019-01-18 14:52:17,260 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) (- 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:52:17,297 INFO L273 TraceCheckUtils]: 0: Hoare triple {102#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {109#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:52:17,299 INFO L273 TraceCheckUtils]: 1: Hoare triple {109#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {113#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-18 14:52:17,300 INFO L273 TraceCheckUtils]: 2: Hoare triple {113#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} assume !(#memory_int[main_p1] >= 0); {103#false} is VALID [2019-01-18 14:52:17,300 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:17,301 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:52:17,338 INFO L273 TraceCheckUtils]: 2: Hoare triple {117#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {103#false} is VALID [2019-01-18 14:52:17,340 INFO L273 TraceCheckUtils]: 1: Hoare triple {121#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {117#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:17,344 INFO L273 TraceCheckUtils]: 0: Hoare triple {102#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {121#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:17,345 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:17,365 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:52:17,366 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:52:17,366 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:52:17,367 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:17,367 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:17,367 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:52:17,383 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:17,383 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:52:17,383 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:52:17,383 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:52:17,384 INFO L87 Difference]: Start difference. First operand 12 states and 21 transitions. Second operand 6 states. [2019-01-18 14:52:18,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,038 INFO L93 Difference]: Finished difference Result 39 states and 56 transitions. [2019-01-18 14:52:18,038 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:52:18,038 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:18,038 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:18,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:18,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2019-01-18 14:52:18,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:18,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2019-01-18 14:52:18,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2019-01-18 14:52:18,194 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:18,199 INFO L225 Difference]: With dead ends: 39 [2019-01-18 14:52:18,199 INFO L226 Difference]: Without dead ends: 37 [2019-01-18 14:52:18,200 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:52:18,200 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2019-01-18 14:52:18,220 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 16. [2019-01-18 14:52:18,220 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:18,220 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand 16 states. [2019-01-18 14:52:18,220 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand 16 states. [2019-01-18 14:52:18,221 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 16 states. [2019-01-18 14:52:18,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,225 INFO L93 Difference]: Finished difference Result 37 states and 53 transitions. [2019-01-18 14:52:18,226 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 53 transitions. [2019-01-18 14:52:18,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:18,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:18,226 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 37 states. [2019-01-18 14:52:18,227 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 37 states. [2019-01-18 14:52:18,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,230 INFO L93 Difference]: Finished difference Result 37 states and 53 transitions. [2019-01-18 14:52:18,230 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 53 transitions. [2019-01-18 14:52:18,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:18,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:18,231 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:18,231 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:18,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-01-18 14:52:18,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 32 transitions. [2019-01-18 14:52:18,233 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 32 transitions. Word has length 3 [2019-01-18 14:52:18,234 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:18,234 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 32 transitions. [2019-01-18 14:52:18,234 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:52:18,234 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 32 transitions. [2019-01-18 14:52:18,234 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:18,234 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:18,234 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:18,235 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:18,235 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:18,235 INFO L82 PathProgramCache]: Analyzing trace with hash 30434, now seen corresponding path program 1 times [2019-01-18 14:52:18,235 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:18,236 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:18,237 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:18,237 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:18,237 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:18,247 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:18,333 INFO L273 TraceCheckUtils]: 0: Hoare triple {262#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {264#(and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))) (= (select |#memory_int| ULTIMATE.start_main_p5) 0))} is VALID [2019-01-18 14:52:18,335 INFO L273 TraceCheckUtils]: 1: Hoare triple {264#(and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))) (= (select |#memory_int| ULTIMATE.start_main_p5) 0))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {265#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:18,341 INFO L273 TraceCheckUtils]: 2: Hoare triple {265#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {263#false} is VALID [2019-01-18 14:52:18,341 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:18,341 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:18,341 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:18,342 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:52:18,342 INFO L207 CegarAbsIntRunner]: [0], [20], [23] [2019-01-18 14:52:18,344 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:18,344 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:52:21,255 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:21,256 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:21,256 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:21,256 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:21,256 WARN L224 ngHoareTripleChecker]: Pre: {2147483635#(forall ((v_idx_148 Int) (v_idx_149 Int) (v_idx_146 Int) (v_idx_147 Int) (v_idx_151 Int) (v_idx_152 Int) (v_idx_150 Int) (v_idx_144 Int) (v_idx_145 Int) (v_idx_153 Int) (v_idx_143 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_148) (= 1 (select |c_#valid| v_idx_148)) (< v_idx_148 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_151) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_151)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_143) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) v_v_46_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_146)) (or (= (select |c_#memory_int| v_idx_153) v_v_69_2) (< v_idx_153 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_145 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_145) v_v_48_2)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_150)) (or (< v_idx_149 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_149))) (or (<= c_ULTIMATE.start_main_p5 v_idx_147) (= v_v_52_2 (select |c_#valid| v_idx_147))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_144) (< v_idx_144 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_152) (< v_idx_152 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_152) 0)))))} [2019-01-18 14:52:21,256 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:52:21,257 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:52:21,257 WARN L230 ngHoareTripleChecker]: Post: {2147483634#(forall ((v_idx_159 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_164 Int) (v_idx_154 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_154) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_154)) (or (= v_v_52_2 (select |c_#valid| v_idx_158)) (<= c_ULTIMATE.start_main_p5 v_idx_158)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_48_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_156)) (< v_idx_156 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_54_2 (select |c_#valid| v_idx_160)) (< v_idx_160 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_163) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_163) (< v_idx_163 c_ULTIMATE.start_main_p5)) (or (< v_idx_155 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_155)) (or (= (select |c_#memory_int| v_idx_162) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_162)) (or (= 1 (select |c_#valid| v_idx_159)) (< v_idx_159 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_159)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_161)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_164 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_164) v_v_69_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_157)))))} [2019-01-18 14:52:21,257 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:21,960 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:21,960 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:22,142 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_148 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_148) (= 1 (select |#valid| v_idx_148)) (< v_idx_148 ULTIMATE.start_main_p5))) (forall ((v_idx_152 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_152) (< v_idx_152 ULTIMATE.start_main_p5) (= (select |#memory_int| v_idx_152) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_144 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_144) (< v_idx_144 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_144)))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:22,143 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:52:22,143 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:52:22,169 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_155 Int)) (or (< v_idx_155 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_155))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_159 Int)) (or (= 1 (select |#valid| v_idx_159)) (< v_idx_159 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_159))) (forall ((v_idx_163 Int)) (or (= (select |#memory_int| v_idx_163) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_163) (< v_idx_163 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:24,965 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:24,966 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:24,966 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:24,966 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:24,967 WARN L224 ngHoareTripleChecker]: Pre: {2147483633#(forall ((v_idx_168 Int) (v_idx_169 Int) (v_idx_170 Int) (v_idx_173 Int) (v_idx_174 Int) (v_idx_171 Int) (v_idx_172 Int) (v_idx_166 Int) (v_idx_167 Int) (v_idx_175 Int) (v_idx_165 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_168)) (or (= v_v_52_2 (select |c_#valid| v_idx_169)) (<= c_ULTIMATE.start_main_p5 v_idx_169)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_166) (< v_idx_166 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) 0)) (or (< v_idx_171 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_171))) (or (= v_v_48_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_167)) (< v_idx_167 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_170) (= 1 (select |c_#valid| v_idx_170)) (< v_idx_170 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_174) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_174) (< v_idx_174 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_165) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) v_v_46_2)) (or (= (select |c_#memory_int| v_idx_175) v_v_69_2) (< v_idx_175 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_173) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_173)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_172)))))} [2019-01-18 14:52:24,967 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:24,967 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:24,967 WARN L230 ngHoareTripleChecker]: Post: {2147483632#(forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_186 Int) (v_idx_176 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_84_2 Int) (v_v_86_2 Int) (v_v_52_2 Int) (v_v_85_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_2_2 (select |c_old(#valid)| v_idx_179)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_177) (< v_idx_177 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) 0)) (<= (- v_v_85_2 (- v_v_85_2)) (- 2)) (or (= 1 (select |c_#valid| v_idx_181)) (< v_idx_181 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_181)) (or (< v_idx_186 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_86_2 (select |c_#memory_int| v_idx_186))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_178) v_v_48_2) (< v_idx_178 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_184) (= (select |c_#memory_int| v_idx_184) v_v_84_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_183)) (<= (+ v_v_85_2 1) 0) (or (= (select |c_#memory_int| v_idx_185) v_v_85_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_46_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176)) (<= c_ULTIMATE.start_main_p5 v_idx_176)) (or (= v_v_52_2 (select |c_#valid| v_idx_180)) (<= c_ULTIMATE.start_main_p5 v_idx_180)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_182 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_182))))))} [2019-01-18 14:52:24,967 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:25,171 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:25,171 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:25,347 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_174 Int)) (or (= (select |#memory_int| v_idx_174) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_174) (< v_idx_174 ULTIMATE.start_main_p5))) (forall ((v_idx_170 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_170) (= 1 (select |#valid| v_idx_170)) (< v_idx_170 ULTIMATE.start_main_p5))) (forall ((v_idx_166 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_166) (< v_idx_166 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) 0))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:25,348 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:25,348 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:25,399 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_3 Int)) (or (<= (+ (select |#memory_int| v_prenex_3) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1))) (forall ((v_idx_177 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_177) (< v_idx_177 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_177) 0))) (forall ((v_idx_185 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_185)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_181 Int)) (or (= 1 (select |#valid| v_idx_181)) (< v_idx_181 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_181))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:52:28,899 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:28,899 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:28,899 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:28,900 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:28,900 WARN L224 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_197 Int) (v_idx_187 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_190)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_191) (= v_v_52_2 (select |c_#valid| v_idx_191))) (= (select |c_old(#memory_int)| v_idx_194) v_v_4_2) (or (= 1 (select |c_#valid| v_idx_192)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_192) (< v_idx_192 c_ULTIMATE.start_main_p5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_187)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_196))) (or (< v_idx_189 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_195) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_195)) (or (< v_idx_188 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_188) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) 0)) (or (= v_v_54_2 (select |c_#valid| v_idx_193)) (< v_idx_193 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_197 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_197) v_v_69_2))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_202) (= v_v_52_2 (select |c_#valid| v_idx_202))) (or (<= c_ULTIMATE.start_main_p5 v_idx_198) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_46_2)) (or (< v_idx_207 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_207) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_207)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_54_2 (select |c_#valid| v_idx_204)) (< v_idx_204 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_203 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_203) (= 1 (select |c_#valid| v_idx_203))) (or (= (select |c_#memory_int| v_idx_208) v_v_69_2) (< v_idx_208 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_199)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_199) (< v_idx_199 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_205)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_48_2) (< v_idx_200 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_2 (select |c_old(#valid)| v_idx_201)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_206) (= (select |c_#memory_int| v_idx_206) v_v_67_2))))))} [2019-01-18 14:52:28,900 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:52:28,900 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:52:28,900 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(or (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_228) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_228)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#memory_int| v_idx_230) v_v_69_2) (< v_idx_230 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_223) v_v_2_2) (or (= v_v_46_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_220)) (<= c_ULTIMATE.start_main_p5 v_idx_220)) (or (< v_idx_222 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_48_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_227)) (or (= v_v_54_2 (select |c_#valid| v_idx_226)) (< v_idx_226 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= 2 (select |c_#memory_int| v_idx_229)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_229) (< v_idx_229 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_224) (= v_v_52_2 (select |c_#valid| v_idx_224))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_225)) (< v_idx_225 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_225)) (or (< v_idx_221 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_221) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_221))))) (forall ((v_idx_214 Int) (v_idx_215 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_214)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_214) (< v_idx_214 c_ULTIMATE.start_main_p5)) (or (< v_idx_215 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_215))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_209) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_46_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_218) (< v_idx_218 c_ULTIMATE.start_main_p5) (= 1 (select |c_#memory_int| v_idx_218))) (or (< v_idx_210 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_210)) (or (<= c_ULTIMATE.start_main_p5 v_idx_213) (= v_v_52_2 (select |c_#valid| v_idx_213))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_48_2) (< v_idx_211 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_216)) (= (select |c_old(#valid)| v_idx_212) v_v_2_2) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_219) v_v_69_2) (< v_idx_219 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_217) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_217)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:52:28,901 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:29,504 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:29,504 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:37,642 WARN L181 SmtUtils]: Spent 8.14 s on a formula simplification that was a NOOP. DAG size: 141 [2019-01-18 14:52:37,643 WARN L270 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_197 Int) (v_idx_187 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |old(#valid)| v_idx_190)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= ULTIMATE.start_main_p5 v_idx_191) (= v_v_52_2 (select |#valid| v_idx_191))) (= (select |old(#memory_int)| v_idx_194) v_v_4_2) (or (= 1 (select |#valid| v_idx_192)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_192) (< v_idx_192 ULTIMATE.start_main_p5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_46_2) (<= ULTIMATE.start_main_p5 v_idx_187)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 ULTIMATE.start_main_p5) (= 0 (select |#memory_int| v_idx_196))) (or (< v_idx_189 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_48_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_189))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_195) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_195)) (or (< v_idx_188 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_188) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) 0)) (or (= v_v_54_2 (select |#valid| v_idx_193)) (< v_idx_193 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_197 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_197) v_v_69_2))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p5 v_idx_202) (= v_v_52_2 (select |#valid| v_idx_202))) (or (<= ULTIMATE.start_main_p5 v_idx_198) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_46_2)) (or (< v_idx_207 ULTIMATE.start_main_p5) (= (select |#memory_int| v_idx_207) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_207)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_54_2 (select |#valid| v_idx_204)) (< v_idx_204 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_203 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_203) (= 1 (select |#valid| v_idx_203))) (or (= (select |#memory_int| v_idx_208) v_v_69_2) (< v_idx_208 (+ ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_199)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_199) (< v_idx_199 ULTIMATE.start_main_p5)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |old(#memory_int)| v_idx_205)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_48_2) (< v_idx_200 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_2 (select |old(#valid)| v_idx_201)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p5 v_idx_206) (= (select |#memory_int| v_idx_206) v_v_67_2))))))} [2019-01-18 14:52:37,643 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:52:37,643 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:52:45,848 WARN L181 SmtUtils]: Spent 8.20 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:52:45,849 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(or (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_228) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_228)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= (select |#memory_int| v_idx_230) v_v_69_2) (< v_idx_230 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_223) v_v_2_2) (or (= v_v_46_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_220)) (<= ULTIMATE.start_main_p5 v_idx_220)) (or (< v_idx_222 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_48_2)) (= v_v_4_2 (select |old(#memory_int)| v_idx_227)) (or (= v_v_54_2 (select |#valid| v_idx_226)) (< v_idx_226 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= 2 (select |#memory_int| v_idx_229)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_229) (< v_idx_229 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_224) (= v_v_52_2 (select |#valid| v_idx_224))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |#valid| v_idx_225)) (< v_idx_225 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_225)) (or (< v_idx_221 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_221) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_221))))) (forall ((v_idx_214 Int) (v_idx_215 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |#valid| v_idx_214)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_214) (< v_idx_214 ULTIMATE.start_main_p5)) (or (< v_idx_215 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |#valid| v_idx_215))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= ULTIMATE.start_main_p5 v_idx_209) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_46_2)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_218) (< v_idx_218 ULTIMATE.start_main_p5) (= 1 (select |#memory_int| v_idx_218))) (or (< v_idx_210 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_210)) (or (<= ULTIMATE.start_main_p5 v_idx_213) (= v_v_52_2 (select |#valid| v_idx_213))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_48_2) (< v_idx_211 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_2 (select |old(#memory_int)| v_idx_216)) (= (select |old(#valid)| v_idx_212) v_v_2_2) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_219) v_v_69_2) (< v_idx_219 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_217) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_217)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:53:00,081 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:00,082 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:00,082 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:00,082 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:00,083 WARN L224 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_244 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_48_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_249)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_247) (< v_idx_247 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_247))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_54_2 (select |c_#valid| v_idx_248)) (< v_idx_248 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_245) v_v_2_2) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_243) (< v_idx_243 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_243))) (or (< v_idx_251 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_251) (= (select |c_#memory_int| v_idx_251) 1)) (or (<= c_ULTIMATE.start_main_p5 v_idx_250) (= (select |c_#memory_int| v_idx_250) v_v_67_2)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_252 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_252) v_v_69_2)) (or (<= c_ULTIMATE.start_main_p5 v_idx_246) (= v_v_52_2 (select |c_#valid| v_idx_246))) (or (<= c_ULTIMATE.start_main_p5 v_idx_242) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_46_2)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_232 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_232) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_232) 0)) (or (<= c_ULTIMATE.start_main_p5 v_idx_231) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_46_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_52_2 (select |c_#valid| v_idx_235)) (<= c_ULTIMATE.start_main_p5 v_idx_235)) (or (<= c_ULTIMATE.start_main_p5 v_idx_239) (= (select |c_#memory_int| v_idx_239) v_v_67_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_234)) (or (< v_idx_241 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_241) v_v_69_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_236) (= 1 (select |c_#valid| v_idx_236)) (< v_idx_236 c_ULTIMATE.start_main_p5)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_238)) (or (= v_v_54_2 (select |c_#valid| v_idx_237)) (< v_idx_237 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_48_2) (< v_idx_233 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_240 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_240)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_240)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:53:00,083 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:00,083 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:00,083 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(forall ((v_idx_258 Int) (v_idx_259 Int) (v_idx_256 Int) (v_idx_257 Int) (v_idx_261 Int) (v_idx_262 Int) (v_idx_260 Int) (v_idx_254 Int) (v_idx_255 Int) (v_idx_263 Int) (v_idx_253 Int)) (exists ((v_v_54_2 Int) (v_v_445_1 Int) (v_v_46_2 Int) (v_v_447_1 Int) (v_v_446_1 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_255 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_255) v_v_48_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (+ v_v_446_1 1) 0) (or (= v_v_54_2 (select |c_#valid| v_idx_259)) (< v_idx_259 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_258 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_258)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_258)) (or (= (select |c_#memory_int| v_idx_261) v_v_445_1) (<= c_ULTIMATE.start_main_p1 v_idx_261)) (or (< v_idx_254 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_254)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_254)) (or (= v_v_46_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_253)) (<= c_ULTIMATE.start_main_p5 v_idx_253)) (or (<= c_ULTIMATE.start_main_p5 v_idx_257) (= v_v_52_2 (select |c_#valid| v_idx_257))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_262) (< v_idx_262 c_ULTIMATE.start_main_p1) (= v_v_446_1 (select |c_#memory_int| v_idx_262))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_260)) (<= (- v_v_446_1 (- v_v_446_1)) (- 2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_256)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_447_1 (select |c_#memory_int| v_idx_263)) (< v_idx_263 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-18 14:53:00,083 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:00,445 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:00,446 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:08,704 WARN L181 SmtUtils]: Spent 8.26 s on a formula simplification that was a NOOP. DAG size: 141 [2019-01-18 14:53:08,705 WARN L270 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_244 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_48_2)) (= v_v_4_2 (select |old(#memory_int)| v_idx_249)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_247) (< v_idx_247 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_247))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_54_2 (select |#valid| v_idx_248)) (< v_idx_248 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_245) v_v_2_2) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_243) (< v_idx_243 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_243))) (or (< v_idx_251 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_251) (= (select |#memory_int| v_idx_251) 1)) (or (<= ULTIMATE.start_main_p5 v_idx_250) (= (select |#memory_int| v_idx_250) v_v_67_2)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_252 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_252) v_v_69_2)) (or (<= ULTIMATE.start_main_p5 v_idx_246) (= v_v_52_2 (select |#valid| v_idx_246))) (or (<= ULTIMATE.start_main_p5 v_idx_242) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_46_2)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_232 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_232) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_232) 0)) (or (<= ULTIMATE.start_main_p5 v_idx_231) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_46_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_52_2 (select |#valid| v_idx_235)) (<= ULTIMATE.start_main_p5 v_idx_235)) (or (<= ULTIMATE.start_main_p5 v_idx_239) (= (select |#memory_int| v_idx_239) v_v_67_2)) (= v_v_2_2 (select |old(#valid)| v_idx_234)) (or (< v_idx_241 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_241) v_v_69_2)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_236) (= 1 (select |#valid| v_idx_236)) (< v_idx_236 ULTIMATE.start_main_p5)) (= v_v_4_2 (select |old(#memory_int)| v_idx_238)) (or (= v_v_54_2 (select |#valid| v_idx_237)) (< v_idx_237 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_48_2) (< v_idx_233 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_240 ULTIMATE.start_main_p5) (= 0 (select |#memory_int| v_idx_240)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_240)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:53:08,705 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:08,705 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:08,934 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_4 Int)) (or (<= (+ (select |#memory_int| v_prenex_4) 1) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (forall ((v_idx_258 Int)) (or (< v_idx_258 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_258)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_258))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_262 Int)) (or (< v_idx_262 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_262) (<= (+ (* 2 (select |#memory_int| v_idx_262)) 2) 0))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_254 Int)) (or (< v_idx_254 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_254)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_254))))} [2019-01-18 14:53:11,948 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:11,949 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:11,949 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:11,949 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:11,949 WARN L224 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_274 Int) (v_idx_264 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_267)) (or (<= c_ULTIMATE.start_main_p5 v_idx_264) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_264) v_v_46_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_274 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_274) v_v_69_2)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_265)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_265) (< v_idx_265 c_ULTIMATE.start_main_p5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_266) v_v_48_2) (< v_idx_266 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |c_#valid| v_idx_269)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_269) (< v_idx_269 c_ULTIMATE.start_main_p5)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_271)) (or (= (select |c_#memory_int| v_idx_272) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_272)) (or (< v_idx_270 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_270))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_273) (= 1 (select |c_#memory_int| v_idx_273)) (< v_idx_273 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_52_2 (select |c_#valid| v_idx_268)) (<= c_ULTIMATE.start_main_p5 v_idx_268))))) (forall ((v_idx_278 Int) (v_idx_279 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_285 Int) (v_idx_275 Int)) (exists ((v_v_434_1 Int) (v_v_444_1 Int) (v_v_436_1 Int) (v_v_441_1 Int) (v_v_440_1 Int) (v_v_443_1 Int) (v_v_442_1 Int) (v_v_438_1 Int) (v_v_437_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_281 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_440_1 (select |c_#valid| v_idx_281))) (= v_v_437_1 (select |c_old(#valid)| v_idx_278)) (<= 0 v_v_442_1) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= v_v_442_1 2) (or (< v_idx_284 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_443_1 (select |c_#memory_int| v_idx_284))) (or (< v_idx_283 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_283) (= v_v_442_1 (select |c_#memory_int| v_idx_283))) (or (= v_v_441_1 (select |c_#memory_int| v_idx_282)) (<= c_ULTIMATE.start_main_p5 v_idx_282)) (<= (- v_v_442_1 (- v_v_442_1)) 4) (= (select |c_old(#memory_int)| v_idx_285) v_v_444_1) (or (<= c_ULTIMATE.start_main_p5 v_idx_279) (= v_v_438_1 (select |c_#valid| v_idx_279))) (or (= 1 (select |c_#valid| v_idx_280)) (< v_idx_280 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_280)) (or (= v_v_436_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_277)) (< v_idx_277 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- v_v_442_1) v_v_442_1) 0) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p5 v_idx_275) (= v_v_434_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_275))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_276)) (< v_idx_276 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_276))))))} [2019-01-18 14:53:11,950 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:53:11,950 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:53:11,950 WARN L230 ngHoareTripleChecker]: Post: {2147483626#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_296 Int) (v_idx_286 Int)) (exists ((v_v_434_1 Int) (v_v_444_1 Int) (v_v_436_1 Int) (v_v_441_1 Int) (v_v_440_1 Int) (v_v_443_1 Int) (v_v_488_1 Int) (v_v_438_1 Int) (v_v_437_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_488_1) v_v_488_1) (- 2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_295) (< v_idx_295 c_ULTIMATE.start_main_p5) (= v_v_488_1 (select |c_#memory_int| v_idx_295))) (= v_v_437_1 (select |c_old(#valid)| v_idx_289)) (<= v_v_488_1 3) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_291 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_291)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_291)) (or (< v_idx_292 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_440_1 (select |c_#valid| v_idx_292))) (or (<= c_ULTIMATE.start_main_p5 v_idx_286) (= v_v_434_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_286))) (or (= v_v_436_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_288)) (< v_idx_288 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_287) (< v_idx_287 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_287))) (= v_v_444_1 (select |c_old(#memory_int)| v_idx_293)) (<= 1 v_v_488_1) (or (= v_v_441_1 (select |c_#memory_int| v_idx_294)) (<= c_ULTIMATE.start_main_p5 v_idx_294)) (or (= v_v_443_1 (select |c_#memory_int| v_idx_296)) (< v_idx_296 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_488_1 (- v_v_488_1)) 6) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_438_1 (select |c_#valid| v_idx_290)) (<= c_ULTIMATE.start_main_p5 v_idx_290)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:53:11,950 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:12,575 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:12,575 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:20,652 WARN L181 SmtUtils]: Spent 8.08 s on a formula simplification that was a NOOP. DAG size: 159 [2019-01-18 14:53:20,653 WARN L270 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_274 Int) (v_idx_264 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |old(#valid)| v_idx_267)) (or (<= ULTIMATE.start_main_p5 v_idx_264) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_264) v_v_46_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (< v_idx_274 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_274) v_v_69_2)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_265)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_265) (< v_idx_265 ULTIMATE.start_main_p5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_266) v_v_48_2) (< v_idx_266 (+ ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |#valid| v_idx_269)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_269) (< v_idx_269 ULTIMATE.start_main_p5)) (= v_v_4_2 (select |old(#memory_int)| v_idx_271)) (or (= (select |#memory_int| v_idx_272) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_272)) (or (< v_idx_270 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |#valid| v_idx_270))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_273) (= 1 (select |#memory_int| v_idx_273)) (< v_idx_273 ULTIMATE.start_main_p5)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_52_2 (select |#valid| v_idx_268)) (<= ULTIMATE.start_main_p5 v_idx_268))))) (forall ((v_idx_278 Int) (v_idx_279 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_285 Int) (v_idx_275 Int)) (exists ((v_v_434_1 Int) (v_v_444_1 Int) (v_v_436_1 Int) (v_v_441_1 Int) (v_v_440_1 Int) (v_v_443_1 Int) (v_v_442_1 Int) (v_v_438_1 Int) (v_v_437_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_281 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_440_1 (select |#valid| v_idx_281))) (= v_v_437_1 (select |old(#valid)| v_idx_278)) (<= 0 v_v_442_1) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= v_v_442_1 2) (or (< v_idx_284 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_443_1 (select |#memory_int| v_idx_284))) (or (< v_idx_283 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_283) (= v_v_442_1 (select |#memory_int| v_idx_283))) (or (= v_v_441_1 (select |#memory_int| v_idx_282)) (<= ULTIMATE.start_main_p5 v_idx_282)) (<= (- v_v_442_1 (- v_v_442_1)) 4) (= (select |old(#memory_int)| v_idx_285) v_v_444_1) (or (<= ULTIMATE.start_main_p5 v_idx_279) (= v_v_438_1 (select |#valid| v_idx_279))) (or (= 1 (select |#valid| v_idx_280)) (< v_idx_280 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_280)) (or (= v_v_436_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_277)) (< v_idx_277 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- v_v_442_1) v_v_442_1) 0) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p5 v_idx_275) (= v_v_434_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_275))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_276)) (< v_idx_276 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_276))))))} [2019-01-18 14:53:20,653 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:53:20,653 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:53:20,875 WARN L276 ngHoareTripleChecker]: Post: {2147483626#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_295 Int)) (or (<= (* 2 (select |#memory_int| v_idx_295)) 6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_295) (< v_idx_295 ULTIMATE.start_main_p5))) (forall ((v_prenex_5 Int)) (or (<= (select |#memory_int| v_prenex_5) 3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_5) (< v_prenex_5 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_287 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_287) (< v_idx_287 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_287)))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_7 Int)) (or (<= 2 (* 2 (select |#memory_int| v_prenex_7))) (< v_prenex_7 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_7))) (forall ((v_prenex_6 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_6) (< v_prenex_6 ULTIMATE.start_main_p5) (<= 1 (select |#memory_int| v_prenex_6)))) (forall ((v_idx_291 Int)) (or (< v_idx_291 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_291)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_291))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:53:28,471 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:28,471 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:28,471 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:28,471 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:28,472 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_434_1 Int) (v_v_444_1 Int) (v_v_436_1 Int) (v_v_441_1 Int) (v_v_440_1 Int) (v_v_443_1 Int) (v_v_442_1 Int) (v_v_438_1 Int) (v_v_437_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_444_1 (select |c_old(#memory_int)| v_idx_318)) (or (= v_v_441_1 (select |c_#memory_int| v_idx_315)) (<= c_ULTIMATE.start_main_p5 v_idx_315)) (or (< v_idx_309 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_309)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_309)) (<= 0 v_v_442_1) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= v_v_442_1 2) (<= (- v_v_442_1 (- v_v_442_1)) 4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_313) (= 1 (select |c_#valid| v_idx_313)) (< v_idx_313 c_ULTIMATE.start_main_p5)) (or (= v_v_440_1 (select |c_#valid| v_idx_314)) (< v_idx_314 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_438_1 (select |c_#valid| v_idx_312)) (<= c_ULTIMATE.start_main_p5 v_idx_312)) (<= (- (- v_v_442_1) v_v_442_1) 0) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_443_1 (select |c_#memory_int| v_idx_317)) (< v_idx_317 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_437_1 (select |c_old(#valid)| v_idx_311)) (or (= v_v_436_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_310)) (< v_idx_310 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_308) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) v_v_434_1)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_442_1 (select |c_#memory_int| v_idx_316)) (< v_idx_316 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_316))))) (forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_300 Int) (v_idx_301 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_297 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_303 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_303))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_298)) (< v_idx_298 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_298)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_304)) (or (< v_idx_302 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_302) (= 1 (select |c_#valid| v_idx_302))) (or (< v_idx_306 c_ULTIMATE.start_main_p5) (= 1 (select |c_#memory_int| v_idx_306)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_306)) (or (< v_idx_299 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_299) v_v_48_2)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_2_2 (select |c_old(#valid)| v_idx_300)) (or (<= c_ULTIMATE.start_main_p5 v_idx_305) (= (select |c_#memory_int| v_idx_305) v_v_67_2)) (or (<= c_ULTIMATE.start_main_p5 v_idx_301) (= v_v_52_2 (select |c_#valid| v_idx_301))) (or (= v_v_69_2 (select |c_#memory_int| v_idx_307)) (< v_idx_307 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_297) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_297))))))} [2019-01-18 14:53:28,472 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:28,472 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:28,472 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_54_2 Int) (v_v_678_1 Int) (v_v_46_2 Int) (v_v_677_1 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_48_2 Int) (v_v_679_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_329 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_679_1 (select |c_#memory_int| v_idx_329))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_325 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_325))) (or (< v_idx_321 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_321) v_v_48_2)) (or (< v_idx_328 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_328) (= (select |c_#memory_int| v_idx_328) v_v_678_1)) (<= (+ v_v_678_1 1) 0) (or (= v_v_52_2 (select |c_#valid| v_idx_323)) (<= c_ULTIMATE.start_main_p5 v_idx_323)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_319) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_319)) (<= (- v_v_678_1 (- v_v_678_1)) (- 2)) (= (select |c_old(#valid)| v_idx_322) v_v_2_2) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_326) v_v_4_2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_320) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_320) (< v_idx_320 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p1 v_idx_327) (= v_v_677_1 (select |c_#memory_int| v_idx_327))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_324) (= 1 (select |c_#valid| v_idx_324)) (< v_idx_324 c_ULTIMATE.start_main_p5)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:53:28,472 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:28,766 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:28,766 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:36,762 WARN L181 SmtUtils]: Spent 8.00 s on a formula simplification that was a NOOP. DAG size: 159 [2019-01-18 14:53:36,762 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_434_1 Int) (v_v_444_1 Int) (v_v_436_1 Int) (v_v_441_1 Int) (v_v_440_1 Int) (v_v_443_1 Int) (v_v_442_1 Int) (v_v_438_1 Int) (v_v_437_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_444_1 (select |old(#memory_int)| v_idx_318)) (or (= v_v_441_1 (select |#memory_int| v_idx_315)) (<= ULTIMATE.start_main_p5 v_idx_315)) (or (< v_idx_309 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_309)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_309)) (<= 0 v_v_442_1) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= v_v_442_1 2) (<= (- v_v_442_1 (- v_v_442_1)) 4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_313) (= 1 (select |#valid| v_idx_313)) (< v_idx_313 ULTIMATE.start_main_p5)) (or (= v_v_440_1 (select |#valid| v_idx_314)) (< v_idx_314 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_438_1 (select |#valid| v_idx_312)) (<= ULTIMATE.start_main_p5 v_idx_312)) (<= (- (- v_v_442_1) v_v_442_1) 0) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= v_v_443_1 (select |#memory_int| v_idx_317)) (< v_idx_317 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_437_1 (select |old(#valid)| v_idx_311)) (or (= v_v_436_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_310)) (< v_idx_310 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p5 v_idx_308) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_308) v_v_434_1)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_442_1 (select |#memory_int| v_idx_316)) (< v_idx_316 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_316))))) (forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_300 Int) (v_idx_301 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_297 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_303 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |#valid| v_idx_303))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_298)) (< v_idx_298 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_298)) (= v_v_4_2 (select |old(#memory_int)| v_idx_304)) (or (< v_idx_302 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_302) (= 1 (select |#valid| v_idx_302))) (or (< v_idx_306 ULTIMATE.start_main_p5) (= 1 (select |#memory_int| v_idx_306)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_306)) (or (< v_idx_299 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_299) v_v_48_2)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_2_2 (select |old(#valid)| v_idx_300)) (or (<= ULTIMATE.start_main_p5 v_idx_305) (= (select |#memory_int| v_idx_305) v_v_67_2)) (or (<= ULTIMATE.start_main_p5 v_idx_301) (= v_v_52_2 (select |#valid| v_idx_301))) (or (= v_v_69_2 (select |#memory_int| v_idx_307)) (< v_idx_307 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_297) v_v_46_2) (<= ULTIMATE.start_main_p5 v_idx_297))))))} [2019-01-18 14:53:36,762 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:36,763 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:36,921 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_328 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_328)) 2) 0) (< v_idx_328 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_328))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_324 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_324) (= 1 (select |#valid| v_idx_324)) (< v_idx_324 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_prenex_8) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_8))) (forall ((v_idx_320 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_320) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_320) (< v_idx_320 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:53:40,274 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:40,274 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:40,274 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:40,275 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:40,275 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_340 Int) (v_idx_330 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_333)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_331) (< v_idx_331 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_331))) (or (< v_idx_336 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_336))) (or (< v_idx_340 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_340) v_v_69_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_335) (= 1 (select |c_#valid| v_idx_335)) (< v_idx_335 c_ULTIMATE.start_main_p5)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_337)) (or (<= c_ULTIMATE.start_main_p5 v_idx_330) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_330) v_v_46_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_332) v_v_48_2) (< v_idx_332 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p5 v_idx_334) (= v_v_52_2 (select |c_#valid| v_idx_334))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_339) (< v_idx_339 c_ULTIMATE.start_main_p5) (= 1 (select |c_#memory_int| v_idx_339))) (or (= (select |c_#memory_int| v_idx_338) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_338)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_351 Int) (v_idx_341 Int)) (exists ((v_v_666_1 Int) (v_v_676_1 Int) (v_v_675_1 Int) (v_v_674_1 Int) (v_v_673_1 Int) (v_v_672_1 Int) (v_v_670_1 Int) (v_v_668_1 Int) (v_v_669_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_670_1 (select |c_#valid| v_idx_345)) (<= c_ULTIMATE.start_main_p5 v_idx_345)) (<= (- (- v_v_674_1) v_v_674_1) 0) (= v_v_669_1 (select |c_old(#valid)| v_idx_344)) (or (= v_v_668_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_343)) (< v_idx_343 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_348) (= v_v_673_1 (select |c_#memory_int| v_idx_348))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (- v_v_674_1 (- v_v_674_1)) 6) (or (= v_v_666_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_341)) (<= c_ULTIMATE.start_main_p5 v_idx_341)) (or (< v_idx_346 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_346) (= 1 (select |c_#valid| v_idx_346))) (<= v_v_674_1 3) (or (= v_v_672_1 (select |c_#valid| v_idx_347)) (< v_idx_347 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_676_1 (select |c_old(#memory_int)| v_idx_351)) (or (< v_idx_342 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_342) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_342)) (<= 0 v_v_674_1) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_350 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_675_1 (select |c_#memory_int| v_idx_350))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_349) (= v_v_674_1 (select |c_#memory_int| v_idx_349)) (< v_idx_349 c_ULTIMATE.start_main_p5)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:53:40,275 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:53:40,275 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:53:40,276 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_362 Int) (v_idx_352 Int)) (exists ((v_v_666_1 Int) (v_v_676_1 Int) (v_v_675_1 Int) (v_v_673_1 Int) (v_v_672_1 Int) (v_v_670_1 Int) (v_v_720_1 Int) (v_v_668_1 Int) (v_v_669_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_361) (< v_idx_361 c_ULTIMATE.start_main_p5) (= v_v_720_1 (select |c_#memory_int| v_idx_361))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= v_v_720_1 4) (or (< v_idx_357 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_357)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_357)) (or (<= c_ULTIMATE.start_main_p5 v_idx_356) (= v_v_670_1 (select |c_#valid| v_idx_356))) (or (<= c_ULTIMATE.start_main_p5 v_idx_360) (= (select |c_#memory_int| v_idx_360) v_v_673_1)) (= v_v_669_1 (select |c_old(#valid)| v_idx_355)) (or (= v_v_672_1 (select |c_#valid| v_idx_358)) (< v_idx_358 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_353) (< v_idx_353 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_353) 0)) (<= (- (- v_v_720_1) v_v_720_1) (- 2)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_676_1 (select |c_old(#memory_int)| v_idx_359)) (or (<= c_ULTIMATE.start_main_p5 v_idx_352) (= v_v_666_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_352))) (or (= v_v_675_1 (select |c_#memory_int| v_idx_362)) (< v_idx_362 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= 1 v_v_720_1) (<= (- v_v_720_1 (- v_v_720_1)) 8) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_354 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_668_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_354))))))} [2019-01-18 14:53:40,276 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:40,886 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:40,887 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:48,993 WARN L181 SmtUtils]: Spent 8.11 s on a formula simplification that was a NOOP. DAG size: 159 [2019-01-18 14:53:48,994 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_340 Int) (v_idx_330 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |old(#valid)| v_idx_333)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_331) (< v_idx_331 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_331))) (or (< v_idx_336 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |#valid| v_idx_336))) (or (< v_idx_340 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_340) v_v_69_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_335) (= 1 (select |#valid| v_idx_335)) (< v_idx_335 ULTIMATE.start_main_p5)) (= v_v_4_2 (select |old(#memory_int)| v_idx_337)) (or (<= ULTIMATE.start_main_p5 v_idx_330) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_330) v_v_46_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_332) v_v_48_2) (< v_idx_332 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p5 v_idx_334) (= v_v_52_2 (select |#valid| v_idx_334))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_339) (< v_idx_339 ULTIMATE.start_main_p5) (= 1 (select |#memory_int| v_idx_339))) (or (= (select |#memory_int| v_idx_338) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_338)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_351 Int) (v_idx_341 Int)) (exists ((v_v_666_1 Int) (v_v_676_1 Int) (v_v_675_1 Int) (v_v_674_1 Int) (v_v_673_1 Int) (v_v_672_1 Int) (v_v_670_1 Int) (v_v_668_1 Int) (v_v_669_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_670_1 (select |#valid| v_idx_345)) (<= ULTIMATE.start_main_p5 v_idx_345)) (<= (- (- v_v_674_1) v_v_674_1) 0) (= v_v_669_1 (select |old(#valid)| v_idx_344)) (or (= v_v_668_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_343)) (< v_idx_343 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p5 v_idx_348) (= v_v_673_1 (select |#memory_int| v_idx_348))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= (- v_v_674_1 (- v_v_674_1)) 6) (or (= v_v_666_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_341)) (<= ULTIMATE.start_main_p5 v_idx_341)) (or (< v_idx_346 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_346) (= 1 (select |#valid| v_idx_346))) (<= v_v_674_1 3) (or (= v_v_672_1 (select |#valid| v_idx_347)) (< v_idx_347 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_676_1 (select |old(#memory_int)| v_idx_351)) (or (< v_idx_342 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_342) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_342)) (<= 0 v_v_674_1) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_350 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_675_1 (select |#memory_int| v_idx_350))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_349) (= v_v_674_1 (select |#memory_int| v_idx_349)) (< v_idx_349 ULTIMATE.start_main_p5)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:53:48,994 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:53:48,994 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:53:49,211 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_11 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_11) (< v_prenex_11 ULTIMATE.start_main_p5) (<= (* 2 (select |#memory_int| v_prenex_11)) 8))) (forall ((v_idx_361 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_361) (< v_idx_361 ULTIMATE.start_main_p5) (<= (select |#memory_int| v_idx_361) 4))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_prenex_9 Int)) (or (< v_prenex_9 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_9) (<= 2 (* 2 (select |#memory_int| v_prenex_9))))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_357 Int)) (or (< v_idx_357 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_357)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_357))) (forall ((v_prenex_10 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_10) (< v_prenex_10 ULTIMATE.start_main_p5) (<= 1 (select |#memory_int| v_prenex_10)))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_353 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_353) (< v_idx_353 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_353) 0))))} [2019-01-18 14:54:01,484 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:01,484 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:01,484 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:01,485 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:01,485 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_379 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_384 Int) (v_idx_374 Int)) (exists ((v_v_666_1 Int) (v_v_676_1 Int) (v_v_675_1 Int) (v_v_674_1 Int) (v_v_673_1 Int) (v_v_672_1 Int) (v_v_670_1 Int) (v_v_668_1 Int) (v_v_669_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_674_1) v_v_674_1) 0) (= v_v_676_1 (select |c_old(#memory_int)| v_idx_384)) (or (<= c_ULTIMATE.start_main_p5 v_idx_378) (= v_v_670_1 (select |c_#valid| v_idx_378))) (or (= 1 (select |c_#valid| v_idx_379)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_379) (< v_idx_379 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (- v_v_674_1 (- v_v_674_1)) 6) (or (< v_idx_376 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_376) v_v_668_1)) (<= v_v_674_1 3) (or (< v_idx_383 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_675_1 (select |c_#memory_int| v_idx_383))) (<= 0 v_v_674_1) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_375)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_375) (< v_idx_375 c_ULTIMATE.start_main_p5)) (or (= v_v_672_1 (select |c_#valid| v_idx_380)) (< v_idx_380 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_669_1 (select |c_old(#valid)| v_idx_377)) (or (<= c_ULTIMATE.start_main_p5 v_idx_381) (= v_v_673_1 (select |c_#memory_int| v_idx_381))) (or (= v_v_674_1 (select |c_#memory_int| v_idx_382)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_382) (< v_idx_382 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_374) (= v_v_666_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_374))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_373 Int) (v_idx_363 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_370)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_2_2 (select |c_old(#valid)| v_idx_366)) (or (< v_idx_373 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_373) v_v_69_2)) (or (= 1 (select |c_#valid| v_idx_368)) (< v_idx_368 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_368)) (or (< v_idx_369 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_369))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_365) v_v_48_2) (< v_idx_365 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_371) v_v_67_2) (<= c_ULTIMATE.start_main_p5 v_idx_371)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_364) (< v_idx_364 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_364) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_363) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_363)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_372) (= 1 (select |c_#memory_int| v_idx_372)) (< v_idx_372 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_367) (= v_v_52_2 (select |c_#valid| v_idx_367)))))))} [2019-01-18 14:54:01,485 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:01,485 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:01,485 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_388 Int) (v_idx_389 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_395 Int) (v_idx_385 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_52_2 Int) (v_v_1076_1 Int) (v_v_1075_1 Int) (v_v_1074_1 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_386) (< v_idx_386 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_386) 0)) (or (<= c_ULTIMATE.start_main_p5 v_idx_389) (= v_v_52_2 (select |c_#valid| v_idx_389))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_390) (= 1 (select |c_#valid| v_idx_390)) (< v_idx_390 c_ULTIMATE.start_main_p5)) (or (< v_idx_391 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |c_#valid| v_idx_391))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_392)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_387) v_v_48_2) (< v_idx_387 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_1075_1 (- v_v_1075_1)) (- 2)) (or (<= c_ULTIMATE.start_main_p1 v_idx_393) (= (select |c_#memory_int| v_idx_393) v_v_1074_1)) (= v_v_2_2 (select |c_old(#valid)| v_idx_388)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_395 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_395) v_v_1076_1)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_394) (< v_idx_394 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_394) v_v_1075_1)) (<= (+ v_v_1075_1 1) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_385) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_385)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:54:01,485 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:02,360 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:02,360 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:10,429 WARN L181 SmtUtils]: Spent 8.07 s on a formula simplification that was a NOOP. DAG size: 159 [2019-01-18 14:54:10,429 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_379 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_384 Int) (v_idx_374 Int)) (exists ((v_v_666_1 Int) (v_v_676_1 Int) (v_v_675_1 Int) (v_v_674_1 Int) (v_v_673_1 Int) (v_v_672_1 Int) (v_v_670_1 Int) (v_v_668_1 Int) (v_v_669_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_674_1) v_v_674_1) 0) (= v_v_676_1 (select |old(#memory_int)| v_idx_384)) (or (<= ULTIMATE.start_main_p5 v_idx_378) (= v_v_670_1 (select |#valid| v_idx_378))) (or (= 1 (select |#valid| v_idx_379)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_379) (< v_idx_379 ULTIMATE.start_main_p5)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= (- v_v_674_1 (- v_v_674_1)) 6) (or (< v_idx_376 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_376) v_v_668_1)) (<= v_v_674_1 3) (or (< v_idx_383 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_675_1 (select |#memory_int| v_idx_383))) (<= 0 v_v_674_1) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_375)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_375) (< v_idx_375 ULTIMATE.start_main_p5)) (or (= v_v_672_1 (select |#valid| v_idx_380)) (< v_idx_380 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_669_1 (select |old(#valid)| v_idx_377)) (or (<= ULTIMATE.start_main_p5 v_idx_381) (= v_v_673_1 (select |#memory_int| v_idx_381))) (or (= v_v_674_1 (select |#memory_int| v_idx_382)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_382) (< v_idx_382 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_374) (= v_v_666_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_374))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_373 Int) (v_idx_363 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |old(#memory_int)| v_idx_370)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (= v_v_2_2 (select |old(#valid)| v_idx_366)) (or (< v_idx_373 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_373) v_v_69_2)) (or (= 1 (select |#valid| v_idx_368)) (< v_idx_368 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_368)) (or (< v_idx_369 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_2 (select |#valid| v_idx_369))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_365) v_v_48_2) (< v_idx_365 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_371) v_v_67_2) (<= ULTIMATE.start_main_p5 v_idx_371)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_364) (< v_idx_364 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_364) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_363) v_v_46_2) (<= ULTIMATE.start_main_p5 v_idx_363)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_372) (= 1 (select |#memory_int| v_idx_372)) (< v_idx_372 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_367) (= v_v_52_2 (select |#valid| v_idx_367)))))))} [2019-01-18 14:54:10,429 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:10,430 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:10,591 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_390 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_390) (= 1 (select |#valid| v_idx_390)) (< v_idx_390 ULTIMATE.start_main_p5))) (forall ((v_idx_386 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_386) (< v_idx_386 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_386) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_394 Int)) (or (<= (+ (select |#memory_int| v_idx_394) 1) 0) (< v_idx_394 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_394))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_12 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_12)) 2) 0) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:13,524 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:13,524 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:13,524 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:13,525 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:13,525 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_396 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_397)) (< v_idx_397 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_397)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_400) (= (select |c_#valid| v_idx_400) v_v_52_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_399)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_401) (< v_idx_401 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_401))) (or (<= c_ULTIMATE.start_main_p5 v_idx_404) (= (select |c_#memory_int| v_idx_404) v_v_67_2)) (or (= v_v_48_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_398)) (< v_idx_398 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_396) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_396)) (or (= (select |c_#memory_int| v_idx_406) v_v_69_2) (< v_idx_406 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_405 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_405) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_405)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_403)) (or (< v_idx_402 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_402) v_v_54_2)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_779_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_777_1 Int) (v_v_787_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_416 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_786_1 (select |c_#memory_int| v_idx_416))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_412) (< v_idx_412 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_412))) (<= (- (- v_v_785_1) v_v_785_1) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_779_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_409)) (< v_idx_409 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_785_1 (select |c_#memory_int| v_idx_415)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_415) (< v_idx_415 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_407) (= v_v_777_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_407))) (= v_v_780_1 (select |c_old(#valid)| v_idx_410)) (<= 0 v_v_785_1) (or (<= c_ULTIMATE.start_main_p5 v_idx_411) (= v_v_781_1 (select |c_#valid| v_idx_411))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_408)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_408) (< v_idx_408 c_ULTIMATE.start_main_p5)) (or (< v_idx_413 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_413) v_v_783_1)) (or (= v_v_784_1 (select |c_#memory_int| v_idx_414)) (<= c_ULTIMATE.start_main_p5 v_idx_414)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_787_1 (select |c_old(#memory_int)| v_idx_417)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:54:13,525 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:54:13,525 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:54:13,526 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_779_1 Int) (v_v_1117_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_786_1 Int) (v_v_777_1 Int) (v_v_787_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_786_1 (select |c_#memory_int| v_idx_428)) (< v_idx_428 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_777_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_418)) (<= c_ULTIMATE.start_main_p5 v_idx_418)) (<= (- (- v_v_1117_1) v_v_1117_1) (- 2)) (or (= v_v_783_1 (select |c_#valid| v_idx_424)) (< v_idx_424 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_427 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_427) (= (select |c_#memory_int| v_idx_427) v_v_1117_1)) (= v_v_787_1 (select |c_old(#memory_int)| v_idx_425)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_419)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_419) (< v_idx_419 c_ULTIMATE.start_main_p5)) (<= 1 v_v_1117_1) (= (select |c_old(#valid)| v_idx_421) v_v_780_1) (or (<= c_ULTIMATE.start_main_p5 v_idx_422) (= v_v_781_1 (select |c_#valid| v_idx_422))) (or (< v_idx_420 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_420) v_v_779_1)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_784_1 (select |c_#memory_int| v_idx_426)) (<= c_ULTIMATE.start_main_p5 v_idx_426)) (or (= 1 (select |c_#valid| v_idx_423)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_423) (< v_idx_423 c_ULTIMATE.start_main_p5)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:54:13,526 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:14,035 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:14,036 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:22,136 WARN L181 SmtUtils]: Spent 8.10 s on a formula simplification that was a NOOP. DAG size: 154 [2019-01-18 14:54:22,137 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_396 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_397)) (< v_idx_397 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_397)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= ULTIMATE.start_main_p5 v_idx_400) (= (select |#valid| v_idx_400) v_v_52_2)) (= v_v_2_2 (select |old(#valid)| v_idx_399)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_401) (< v_idx_401 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_401))) (or (<= ULTIMATE.start_main_p5 v_idx_404) (= (select |#memory_int| v_idx_404) v_v_67_2)) (or (= v_v_48_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_398)) (< v_idx_398 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_396) v_v_46_2) (<= ULTIMATE.start_main_p5 v_idx_396)) (or (= (select |#memory_int| v_idx_406) v_v_69_2) (< v_idx_406 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_405 ULTIMATE.start_main_p5) (= (select |#memory_int| v_idx_405) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_405)) (= v_v_4_2 (select |old(#memory_int)| v_idx_403)) (or (< v_idx_402 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_402) v_v_54_2)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_779_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_777_1 Int) (v_v_787_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_416 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_786_1 (select |#memory_int| v_idx_416))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_412) (< v_idx_412 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_412))) (<= (- (- v_v_785_1) v_v_785_1) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_779_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_409)) (< v_idx_409 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_785_1 (select |#memory_int| v_idx_415)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_415) (< v_idx_415 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_407) (= v_v_777_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_407))) (= v_v_780_1 (select |old(#valid)| v_idx_410)) (<= 0 v_v_785_1) (or (<= ULTIMATE.start_main_p5 v_idx_411) (= v_v_781_1 (select |#valid| v_idx_411))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_408)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_408) (< v_idx_408 ULTIMATE.start_main_p5)) (or (< v_idx_413 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_413) v_v_783_1)) (or (= v_v_784_1 (select |#memory_int| v_idx_414)) (<= ULTIMATE.start_main_p5 v_idx_414)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_787_1 (select |old(#memory_int)| v_idx_417)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:54:22,137 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:54:22,137 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:54:22,322 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_423 Int)) (or (= 1 (select |#valid| v_idx_423)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_423) (< v_idx_423 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_prenex_13 Int)) (or (<= 2 (* 2 (select |#memory_int| v_prenex_13))) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_13) (< v_prenex_13 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_427 Int)) (or (< v_idx_427 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_427) (<= 1 (select |#memory_int| v_idx_427)))) (forall ((v_idx_419 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_419)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_419) (< v_idx_419 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:25,754 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:25,755 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:25,755 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:25,755 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:25,755 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_779_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_777_1 Int) (v_v_787_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_449) v_v_786_1) (< v_idx_449 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_445) (= (select |c_#valid| v_idx_445) 1) (< v_idx_445 c_ULTIMATE.start_main_p5)) (<= (- (- v_v_785_1) v_v_785_1) 0) (or (= (select |c_#valid| v_idx_446) v_v_783_1) (< v_idx_446 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_777_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_440)) (<= c_ULTIMATE.start_main_p5 v_idx_440)) (or (< v_idx_441 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_441) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_441))) (<= 0 v_v_785_1) (= v_v_780_1 (select |c_old(#valid)| v_idx_443)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_448) v_v_785_1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_448) (< v_idx_448 c_ULTIMATE.start_main_p5)) (or (< v_idx_442 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_442) v_v_779_1)) (or (= (select |c_#memory_int| v_idx_447) v_v_784_1) (<= c_ULTIMATE.start_main_p5 v_idx_447)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_444) (= (select |c_#valid| v_idx_444) v_v_781_1)) (= v_v_787_1 (select |c_old(#memory_int)| v_idx_450))))) (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_437) (= (select |c_#memory_int| v_idx_437) v_v_67_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_435 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_435) v_v_54_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_429) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_429)) (or (< v_idx_434 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_434)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_434)) (or (<= c_ULTIMATE.start_main_p5 v_idx_433) (= (select |c_#valid| v_idx_433) v_v_52_2)) (or (< v_idx_430 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_430)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_430)) (= v_v_2_2 (select |c_old(#valid)| v_idx_432)) (or (= v_v_48_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_431)) (< v_idx_431 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_438) 1) (< v_idx_438 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_438)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_436)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_439) v_v_69_2) (< v_idx_439 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:54:25,755 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:25,755 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:25,756 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_461 Int) (v_idx_451 Int)) (exists ((v_v_46_2 Int) (v_v_54_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_1163_1 Int) (v_v_4_2 Int) (v_v_1165_1 Int) (v_v_48_2 Int) (v_v_1164_1 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= (+ v_v_1164_1 1) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_459) (= (select |c_#memory_int| v_idx_459) v_v_1163_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_455) v_v_52_2) (<= c_ULTIMATE.start_main_p5 v_idx_455)) (or (< v_idx_456 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_456) (= (select |c_#valid| v_idx_456) 1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_451) v_v_46_2) (<= c_ULTIMATE.start_main_p5 v_idx_451)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_458)) (= v_v_2_2 (select |c_old(#valid)| v_idx_454)) (<= (- v_v_1164_1 (- v_v_1164_1)) (- 2)) (or (= (select |c_#memory_int| v_idx_461) v_v_1165_1) (< v_idx_461 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#valid| v_idx_457) v_v_54_2) (< v_idx_457 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_453 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_453) v_v_48_2)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_460 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_460) (= (select |c_#memory_int| v_idx_460) v_v_1164_1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_452)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_452) (< v_idx_452 c_ULTIMATE.start_main_p5)))))} [2019-01-18 14:54:25,756 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:26,115 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:26,116 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:34,089 WARN L181 SmtUtils]: Spent 7.97 s on a formula simplification that was a NOOP. DAG size: 154 [2019-01-18 14:54:34,090 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_779_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_777_1 Int) (v_v_787_1 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_449) v_v_786_1) (< v_idx_449 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_445) (= (select |#valid| v_idx_445) 1) (< v_idx_445 ULTIMATE.start_main_p5)) (<= (- (- v_v_785_1) v_v_785_1) 0) (or (= (select |#valid| v_idx_446) v_v_783_1) (< v_idx_446 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_777_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_440)) (<= ULTIMATE.start_main_p5 v_idx_440)) (or (< v_idx_441 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_441) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_441))) (<= 0 v_v_785_1) (= v_v_780_1 (select |old(#valid)| v_idx_443)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_448) v_v_785_1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_448) (< v_idx_448 ULTIMATE.start_main_p5)) (or (< v_idx_442 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_442) v_v_779_1)) (or (= (select |#memory_int| v_idx_447) v_v_784_1) (<= ULTIMATE.start_main_p5 v_idx_447)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p5 v_idx_444) (= (select |#valid| v_idx_444) v_v_781_1)) (= v_v_787_1 (select |old(#memory_int)| v_idx_450))))) (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_54_2 Int) (v_v_46_2 Int) (v_v_67_2 Int) (v_v_52_2 Int) (v_v_2_2 Int) (v_v_69_2 Int) (v_v_4_2 Int) (v_v_48_2 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p5 v_idx_437) (= (select |#memory_int| v_idx_437) v_v_67_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (< v_idx_435 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_435) v_v_54_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_429) v_v_46_2) (<= ULTIMATE.start_main_p5 v_idx_429)) (or (< v_idx_434 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_434)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_434)) (or (<= ULTIMATE.start_main_p5 v_idx_433) (= (select |#valid| v_idx_433) v_v_52_2)) (or (< v_idx_430 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_430)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_430)) (= v_v_2_2 (select |old(#valid)| v_idx_432)) (or (= v_v_48_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_431)) (< v_idx_431 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_438) 1) (< v_idx_438 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_438)) (= v_v_4_2 (select |old(#memory_int)| v_idx_436)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_439) v_v_69_2) (< v_idx_439 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:54:34,090 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:34,090 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:34,260 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_14 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14) (< v_prenex_14 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_prenex_14)) 2) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_456 Int)) (or (< v_idx_456 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_456) (= (select |#valid| v_idx_456) 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_460 Int)) (or (<= (+ (select |#memory_int| v_idx_460) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_460) (< v_idx_460 ULTIMATE.start_main_p1))) (forall ((v_idx_452 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_452)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_452) (< v_idx_452 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:34,406 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:54:34,406 INFO L272 AbstractInterpreter]: Visited 3 different actions 11 times. Merged at 1 different actions 4 times. Widened at 1 different actions 1 times. Found 5 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:54:34,408 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:34,408 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:54:34,408 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:34,408 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:54:34,417 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:34,417 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:54:34,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:34,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:34,426 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:54:34,504 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,505 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-18 14:54:34,555 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,557 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,558 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-18 14:54:34,608 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,609 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,611 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,612 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:34,613 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-18 14:54:34,614 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,625 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,642 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,662 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-01-18 14:54:34,673 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-01-18 14:54:34,682 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-01-18 14:54:34,701 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-01-18 14:54:34,723 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 50 [2019-01-18 14:54:34,726 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,748 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,765 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,780 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,793 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:34,827 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:34,827 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 5 variables, input treesize:52, output treesize:50 [2019-01-18 14:54:34,853 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:34,853 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_30|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, |v_#valid_8|]. (let ((.cse0 (store |v_#valid_8| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (store (store (store (store (store |v_#memory_int_30| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) |#memory_int|) (= 0 (select (store .cse1 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4)) (= (select .cse1 ULTIMATE.start_main_p3) 0)))) [2019-01-18 14:54:34,853 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:54:34,931 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:35,003 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 7 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 8 case distinctions, treesize of input 36 treesize of output 66 [2019-01-18 14:54:35,025 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 16 xjuncts. [2019-01-18 14:54:35,256 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 16 dim-0 vars, and 5 xjuncts. [2019-01-18 14:54:35,257 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:60, output treesize:199 [2019-01-18 14:54:37,738 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:37,738 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_31|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (let ((.cse0 (select |v_#memory_int_31| ULTIMATE.start_main_p5))) (and (= (select |v_#memory_int_31| ULTIMATE.start_main_p2) 0) (= 0 (select |v_#memory_int_31| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_31| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= .cse0 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_31| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_31| ULTIMATE.start_main_p1) 0))) [2019-01-18 14:54:37,739 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [v_prenex_24, v_prenex_25, v_prenex_23, v_prenex_26, ULTIMATE.start_main_p5, v_prenex_22, v_prenex_21, v_prenex_17, v_prenex_15, v_prenex_16, v_prenex_20, v_prenex_18, v_prenex_19, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p1))) (let ((.cse0 (= .cse1 0))) (or (and (not (= v_prenex_24 v_prenex_25)) (not (= v_prenex_24 v_prenex_23)) .cse0 (not (= v_prenex_23 ULTIMATE.start_main_p1)) (not (= v_prenex_23 v_prenex_25)) (= 1 (select |#memory_int| v_prenex_26)) (= 0 (select |#memory_int| v_prenex_23)) (not (= v_prenex_24 ULTIMATE.start_main_p1)) (= (select |#memory_int| v_prenex_24) 0) (not (= ULTIMATE.start_main_p1 v_prenex_25)) (= (select |#memory_int| v_prenex_25) 0)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= v_prenex_22 v_prenex_21)) .cse0 (not (= v_prenex_21 ULTIMATE.start_main_p1)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| v_prenex_21)) (not (= v_prenex_22 ULTIMATE.start_main_p1)) (= (select |#memory_int| v_prenex_22) 0)) (and (not (= v_prenex_17 v_prenex_15)) (= .cse1 1) (not (= v_prenex_17 v_prenex_16)) (not (= v_prenex_16 v_prenex_15)) (= 0 (select |#memory_int| v_prenex_16)) (not (= v_prenex_17 ULTIMATE.start_main_p1)) (= (select |#memory_int| v_prenex_17) 0) (not (= ULTIMATE.start_main_p1 v_prenex_15)) (= (select |#memory_int| v_prenex_15) 0)) (and (not (= v_prenex_20 v_prenex_18)) (= 1 (select |#memory_int| v_prenex_19)) .cse0 (not (= v_prenex_20 ULTIMATE.start_main_p1)) (= (select |#memory_int| v_prenex_20) 0) (= (select |#memory_int| v_prenex_18) 0) (not (= ULTIMATE.start_main_p1 v_prenex_18))) (and .cse0 (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))) [2019-01-18 14:54:37,908 INFO L273 TraceCheckUtils]: 0: Hoare triple {262#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {269#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} is VALID [2019-01-18 14:54:37,911 INFO L273 TraceCheckUtils]: 1: Hoare triple {269#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {273#(or (and (exists ((v_prenex_22 Int) (v_prenex_21 Int)) (and (not (= v_prenex_22 v_prenex_21)) (not (= v_prenex_22 ULTIMATE.start_main_p1)) (not (= v_prenex_21 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| v_prenex_21)) (= (select |#memory_int| v_prenex_22) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) (and (exists ((v_prenex_16 Int) (v_prenex_15 Int) (v_prenex_17 Int)) (and (not (= v_prenex_17 v_prenex_16)) (not (= ULTIMATE.start_main_p1 v_prenex_15)) (not (= v_prenex_17 v_prenex_15)) (= (select |#memory_int| v_prenex_17) 0) (= 0 (select |#memory_int| v_prenex_16)) (= (select |#memory_int| v_prenex_15) 0) (not (= v_prenex_17 ULTIMATE.start_main_p1)) (not (= v_prenex_16 v_prenex_15)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)))} is VALID [2019-01-18 14:54:37,912 INFO L273 TraceCheckUtils]: 2: Hoare triple {273#(or (and (exists ((v_prenex_22 Int) (v_prenex_21 Int)) (and (not (= v_prenex_22 v_prenex_21)) (not (= v_prenex_22 ULTIMATE.start_main_p1)) (not (= v_prenex_21 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| v_prenex_21)) (= (select |#memory_int| v_prenex_22) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) (and (exists ((v_prenex_16 Int) (v_prenex_15 Int) (v_prenex_17 Int)) (and (not (= v_prenex_17 v_prenex_16)) (not (= ULTIMATE.start_main_p1 v_prenex_15)) (not (= v_prenex_17 v_prenex_15)) (= (select |#memory_int| v_prenex_17) 0) (= 0 (select |#memory_int| v_prenex_16)) (= (select |#memory_int| v_prenex_15) 0) (not (= v_prenex_17 ULTIMATE.start_main_p1)) (not (= v_prenex_16 v_prenex_15)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)))} assume !(#memory_int[main_p1] >= 0); {263#false} is VALID [2019-01-18 14:54:37,913 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:37,913 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:54:37,924 INFO L273 TraceCheckUtils]: 2: Hoare triple {265#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {263#false} is VALID [2019-01-18 14:54:37,926 INFO L273 TraceCheckUtils]: 1: Hoare triple {280#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {265#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:37,928 INFO L273 TraceCheckUtils]: 0: Hoare triple {262#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {280#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:37,929 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:37,948 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:54:37,948 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 14:54:37,949 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:54:37,949 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:54:37,949 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:37,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:54:37,956 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:37,956 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:54:37,956 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:54:37,956 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:54:37,957 INFO L87 Difference]: Start difference. First operand 16 states and 32 transitions. Second operand 4 states. [2019-01-18 14:54:38,055 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,055 INFO L93 Difference]: Finished difference Result 18 states and 39 transitions. [2019-01-18 14:54:38,055 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:54:38,056 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:54:38,056 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:38,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:54:38,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 22 transitions. [2019-01-18 14:54:38,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:54:38,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 22 transitions. [2019-01-18 14:54:38,058 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 22 transitions. [2019-01-18 14:54:38,135 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:38,137 INFO L225 Difference]: With dead ends: 18 [2019-01-18 14:54:38,137 INFO L226 Difference]: Without dead ends: 17 [2019-01-18 14:54:38,138 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:54:38,138 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2019-01-18 14:54:38,154 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 17. [2019-01-18 14:54:38,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:38,154 INFO L82 GeneralOperation]: Start isEquivalent. First operand 17 states. Second operand 17 states. [2019-01-18 14:54:38,155 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2019-01-18 14:54:38,155 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2019-01-18 14:54:38,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,158 INFO L93 Difference]: Finished difference Result 17 states and 38 transitions. [2019-01-18 14:54:38,158 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 38 transitions. [2019-01-18 14:54:38,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:38,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:38,158 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 17 states. [2019-01-18 14:54:38,159 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 17 states. [2019-01-18 14:54:38,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,160 INFO L93 Difference]: Finished difference Result 17 states and 38 transitions. [2019-01-18 14:54:38,160 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 38 transitions. [2019-01-18 14:54:38,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:38,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:38,161 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:38,161 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:38,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2019-01-18 14:54:38,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 38 transitions. [2019-01-18 14:54:38,163 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 38 transitions. Word has length 3 [2019-01-18 14:54:38,163 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:38,163 INFO L480 AbstractCegarLoop]: Abstraction has 17 states and 38 transitions. [2019-01-18 14:54:38,163 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:54:38,163 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 38 transitions. [2019-01-18 14:54:38,163 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:54:38,163 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:38,164 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:54:38,164 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:38,164 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:38,164 INFO L82 PathProgramCache]: Analyzing trace with hash 30560, now seen corresponding path program 1 times [2019-01-18 14:54:38,164 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:38,165 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:38,165 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:38,166 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:38,166 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:38,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:38,207 INFO L273 TraceCheckUtils]: 0: Hoare triple {360#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {362#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:38,208 INFO L273 TraceCheckUtils]: 1: Hoare triple {362#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {362#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:38,209 INFO L273 TraceCheckUtils]: 2: Hoare triple {362#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {361#false} is VALID [2019-01-18 14:54:38,209 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:38,209 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:54:38,210 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:54:38,210 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:54:38,210 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:54:38,210 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:38,210 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:54:38,218 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:38,219 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:54:38,219 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:54:38,219 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:54:38,219 INFO L87 Difference]: Start difference. First operand 17 states and 38 transitions. Second operand 3 states. [2019-01-18 14:54:38,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,309 INFO L93 Difference]: Finished difference Result 21 states and 39 transitions. [2019-01-18 14:54:38,309 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:54:38,309 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:54:38,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:38,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:54:38,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2019-01-18 14:54:38,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:54:38,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2019-01-18 14:54:38,312 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 27 transitions. [2019-01-18 14:54:38,347 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:38,349 INFO L225 Difference]: With dead ends: 21 [2019-01-18 14:54:38,349 INFO L226 Difference]: Without dead ends: 20 [2019-01-18 14:54:38,350 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:54:38,350 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2019-01-18 14:54:38,366 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 17. [2019-01-18 14:54:38,366 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:38,367 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand 17 states. [2019-01-18 14:54:38,367 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 17 states. [2019-01-18 14:54:38,367 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 17 states. [2019-01-18 14:54:38,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,370 INFO L93 Difference]: Finished difference Result 20 states and 38 transitions. [2019-01-18 14:54:38,370 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 38 transitions. [2019-01-18 14:54:38,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:38,371 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:38,371 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 20 states. [2019-01-18 14:54:38,371 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 20 states. [2019-01-18 14:54:38,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:38,373 INFO L93 Difference]: Finished difference Result 20 states and 38 transitions. [2019-01-18 14:54:38,373 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 38 transitions. [2019-01-18 14:54:38,374 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:38,374 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:38,374 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:38,374 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:38,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2019-01-18 14:54:38,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 37 transitions. [2019-01-18 14:54:38,375 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 37 transitions. Word has length 3 [2019-01-18 14:54:38,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:38,376 INFO L480 AbstractCegarLoop]: Abstraction has 17 states and 37 transitions. [2019-01-18 14:54:38,376 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:54:38,376 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 37 transitions. [2019-01-18 14:54:38,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:54:38,376 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:38,376 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:54:38,377 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:38,377 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:38,377 INFO L82 PathProgramCache]: Analyzing trace with hash 30124, now seen corresponding path program 1 times [2019-01-18 14:54:38,377 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:38,378 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:38,378 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:38,378 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:38,378 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:38,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:38,473 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {453#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:54:38,473 INFO L273 TraceCheckUtils]: 1: Hoare triple {453#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {454#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:54:38,474 INFO L273 TraceCheckUtils]: 2: Hoare triple {454#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:54:38,475 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:38,475 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:38,475 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:54:38,475 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:54:38,475 INFO L207 CegarAbsIntRunner]: [0], [10], [23] [2019-01-18 14:54:38,477 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:54:38,477 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:54:40,982 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:40,982 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:40,982 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:40,983 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:40,983 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_69_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_478) (= v_v_46_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_478))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_479) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_479)) (< v_idx_479 c_ULTIMATE.start_main_p5)) (or (< v_idx_484 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_484) v_v_54_3)) (or (<= c_ULTIMATE.start_main_p5 v_idx_486) (= (select |c_#memory_int| v_idx_486) v_v_67_3)) (= (select |c_old(#valid)| v_idx_481) v_v_2_3) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_485)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_483) (= 1 (select |c_#valid| v_idx_483)) (< v_idx_483 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_482) (= (select |c_#valid| v_idx_482) v_v_52_3)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_480 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_480) v_v_48_3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_487) (= (select |c_#memory_int| v_idx_487) 0) (< v_idx_487 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_488) v_v_69_3) (< v_idx_488 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:54:40,983 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:40,983 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:40,983 WARN L230 ngHoareTripleChecker]: Post: {2147483612#(forall ((v_idx_489 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_54_3 Int) (v_v_72_3 Int) (v_v_71_3 Int) (v_v_52_3 Int) (v_v_70_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_495) v_v_54_3) (< v_idx_495 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_492)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_494) (= 1 (select |c_#valid| v_idx_494)) (< v_idx_494 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (+ v_v_71_3 1) 0) (or (< v_idx_491 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_491) v_v_48_3)) (<= (- v_v_71_3 (- v_v_71_3)) (- 2)) (or (< v_idx_490 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_490)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_490)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_496)) (or (<= c_ULTIMATE.start_main_p5 v_idx_489) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_489) v_v_46_3)) (or (= (select |c_#memory_int| v_idx_499) v_v_72_3) (< v_idx_499 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_498) v_v_71_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_498) (< v_idx_498 c_ULTIMATE.start_main_p1)) (or (= (select |c_#memory_int| v_idx_497) v_v_70_3) (<= c_ULTIMATE.start_main_p1 v_idx_497)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_493) (= (select |c_#valid| v_idx_493) v_v_52_3)))))} [2019-01-18 14:54:40,983 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:41,360 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:41,360 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:41,531 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_487 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_487) (= (select |#memory_int| v_idx_487) 0) (< v_idx_487 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_483 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_483) (= 1 (select |#valid| v_idx_483)) (< v_idx_483 ULTIMATE.start_main_p5))) (forall ((v_idx_479 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_479) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_479)) (< v_idx_479 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:41,531 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:41,531 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:41,610 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_494 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_494) (= 1 (select |#valid| v_idx_494)) (< v_idx_494 ULTIMATE.start_main_p5))) (forall ((v_idx_498 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_498) (< v_idx_498 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_498)) 2) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_490 Int)) (or (< v_idx_490 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_490)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_490))) (forall ((v_prenex_27 Int)) (or (< v_prenex_27 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_27) (<= (+ (select |#memory_int| v_prenex_27) 1) 0))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:43,724 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:43,725 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:43,725 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:43,725 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:43,725 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_510 Int) (v_idx_504 Int) (v_idx_505 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_508 Int) (v_idx_509 Int) (v_idx_506 Int) (v_idx_507 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_69_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_507)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= (select |c_old(#valid)| v_idx_503) v_v_2_3) (or (<= c_ULTIMATE.start_main_p5 v_idx_504) (= (select |c_#valid| v_idx_504) v_v_52_3)) (or (<= c_ULTIMATE.start_main_p5 v_idx_500) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_46_3)) (or (< v_idx_502 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_502) v_v_48_3)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_501)) (< v_idx_501 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_501)) (or (= (select |c_#memory_int| v_idx_510) v_v_69_3) (< v_idx_510 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_505) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_505) (< v_idx_505 c_ULTIMATE.start_main_p5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_509) (= 0 (select |c_#memory_int| v_idx_509)) (< v_idx_509 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_508) (= (select |c_#memory_int| v_idx_508) v_v_67_3)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_54_3 (select |c_#valid| v_idx_506)) (< v_idx_506 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-18 14:54:43,726 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:43,726 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:43,726 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(forall ((v_idx_511 Int) (v_idx_512 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_515 Int) (v_idx_516 Int) (v_idx_513 Int) (v_idx_514 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_54_3 Int) (v_v_75_3 Int) (v_v_74_3 Int) (v_v_52_3 Int) (v_v_73_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_518)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_512) (< v_idx_512 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_512) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_515) (= v_v_52_3 (select |c_#valid| v_idx_515))) (or (= 1 (select |c_#valid| v_idx_516)) (< v_idx_516 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_516)) (or (= v_v_54_3 (select |c_#valid| v_idx_517)) (< v_idx_517 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_514)) (or (= (select |c_#memory_int| v_idx_519) v_v_73_3) (<= c_ULTIMATE.start_main_p2 v_idx_519)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_511) v_v_46_3) (<= c_ULTIMATE.start_main_p5 v_idx_511)) (or (= (select |c_#memory_int| v_idx_520) v_v_74_3) (< v_idx_520 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_520)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_513) v_v_48_3) (< v_idx_513 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_521 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_521) v_v_75_3)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:54:43,726 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:44,229 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:44,229 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:44,423 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_505 Int)) (or (= (select |#valid| v_idx_505) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_505) (< v_idx_505 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_509 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_509) (= 0 (select |#memory_int| v_idx_509)) (< v_idx_509 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_501 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_501)) (< v_idx_501 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_501))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:44,424 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:44,424 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:44,448 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_516 Int)) (or (= 1 (select |#valid| v_idx_516)) (< v_idx_516 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_516))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_512 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_512) (< v_idx_512 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_512) 0))))} [2019-01-18 14:54:47,086 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:47,086 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:47,087 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:47,087 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,087 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_526 Int) (v_idx_527 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_69_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_69_3 (select |c_#memory_int| v_idx_532)) (< v_idx_532 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_523 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_523) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_523))) (or (= v_v_54_3 (select |c_#valid| v_idx_528)) (< v_idx_528 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_525)) (= (select |c_old(#memory_int)| v_idx_529) v_v_4_3) (or (< v_idx_527 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_527) (= 1 (select |c_#valid| v_idx_527))) (or (<= c_ULTIMATE.start_main_p5 v_idx_530) (= (select |c_#memory_int| v_idx_530) v_v_67_3)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_531) (= 0 (select |c_#memory_int| v_idx_531)) (< v_idx_531 c_ULTIMATE.start_main_p5)) (or (= v_v_52_3 (select |c_#valid| v_idx_526)) (<= c_ULTIMATE.start_main_p5 v_idx_526)) (or (< v_idx_524 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_524))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_522) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_46_3))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_538 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_75_3 Int) (v_v_54_3 Int) (v_v_74_3 Int) (v_v_52_3 Int) (v_v_73_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= v_v_75_3 (select |c_#memory_int| v_idx_543)) (< v_idx_543 (+ c_ULTIMATE.start_main_p2 1))) (or (= 1 (select |c_#valid| v_idx_538)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 c_ULTIMATE.start_main_p5)) (or (< v_idx_535 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_535) v_v_48_3)) (or (< v_idx_534 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_534)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_534)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_540)) (or (< v_idx_542 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_542) v_v_74_3) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_542)) (or (= v_v_52_3 (select |c_#valid| v_idx_537)) (<= c_ULTIMATE.start_main_p5 v_idx_537)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |c_old(#valid)| v_idx_536)) (or (<= c_ULTIMATE.start_main_p2 v_idx_541) (= (select |c_#memory_int| v_idx_541) v_v_73_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_46_3) (<= c_ULTIMATE.start_main_p5 v_idx_533)) (or (< v_idx_539 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_3 (select |c_#valid| v_idx_539))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:54:47,087 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:47,087 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:47,088 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_548 Int) (v_idx_549 Int) (v_idx_546 Int) (v_idx_547 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_87_3 Int) (v_v_54_3 Int) (v_v_89_3 Int) (v_v_88_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= (+ v_v_88_3 1) 0) (or (<= c_ULTIMATE.start_main_p5 v_idx_544) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_544) v_v_46_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= (select |c_old(#memory_int)| v_idx_551) v_v_4_3) (or (< v_idx_546 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_546) v_v_48_3)) (<= (- v_v_88_3 (- v_v_88_3)) (- 2)) (or (<= c_ULTIMATE.start_main_p5 v_idx_548) (= v_v_52_3 (select |c_#valid| v_idx_548))) (or (< v_idx_553 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_553) (= (select |c_#memory_int| v_idx_553) v_v_88_3)) (= v_v_2_3 (select |c_old(#valid)| v_idx_547)) (or (< v_idx_545 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_545) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_545) 0)) (or (= (select |c_#memory_int| v_idx_552) v_v_87_3) (<= c_ULTIMATE.start_main_p1 v_idx_552)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_54_3 (select |c_#valid| v_idx_550)) (< v_idx_550 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_554 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_554) v_v_89_3)) (or (= 1 (select |c_#valid| v_idx_549)) (< v_idx_549 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_549)))))} [2019-01-18 14:54:47,088 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:47,748 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,748 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:55,928 WARN L181 SmtUtils]: Spent 8.18 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:55,929 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_526 Int) (v_idx_527 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_69_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_69_3 (select |#memory_int| v_idx_532)) (< v_idx_532 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (< v_idx_523 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_523) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_523))) (or (= v_v_54_3 (select |#valid| v_idx_528)) (< v_idx_528 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |old(#valid)| v_idx_525)) (= (select |old(#memory_int)| v_idx_529) v_v_4_3) (or (< v_idx_527 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_527) (= 1 (select |#valid| v_idx_527))) (or (<= ULTIMATE.start_main_p5 v_idx_530) (= (select |#memory_int| v_idx_530) v_v_67_3)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_531) (= 0 (select |#memory_int| v_idx_531)) (< v_idx_531 ULTIMATE.start_main_p5)) (or (= v_v_52_3 (select |#valid| v_idx_526)) (<= ULTIMATE.start_main_p5 v_idx_526)) (or (< v_idx_524 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_48_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_524))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p5 v_idx_522) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_46_3))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_538 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_75_3 Int) (v_v_54_3 Int) (v_v_74_3 Int) (v_v_52_3 Int) (v_v_73_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= v_v_75_3 (select |#memory_int| v_idx_543)) (< v_idx_543 (+ ULTIMATE.start_main_p2 1))) (or (= 1 (select |#valid| v_idx_538)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 ULTIMATE.start_main_p5)) (or (< v_idx_535 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_535) v_v_48_3)) (or (< v_idx_534 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_534)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_534)) (= v_v_4_3 (select |old(#memory_int)| v_idx_540)) (or (< v_idx_542 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_542) v_v_74_3) (<= (+ ULTIMATE.start_main_p2 1) v_idx_542)) (or (= v_v_52_3 (select |#valid| v_idx_537)) (<= ULTIMATE.start_main_p5 v_idx_537)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |old(#valid)| v_idx_536)) (or (<= ULTIMATE.start_main_p2 v_idx_541) (= (select |#memory_int| v_idx_541) v_v_73_3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_46_3) (<= ULTIMATE.start_main_p5 v_idx_533)) (or (< v_idx_539 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_3 (select |#valid| v_idx_539))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:54:55,929 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:55,929 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:56,107 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_28 Int)) (or (< v_prenex_28 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_28) (<= (+ (* 2 (select |#memory_int| v_prenex_28)) 2) 0))) (forall ((v_idx_553 Int)) (or (< v_idx_553 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_553) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_553))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_545 Int)) (or (< v_idx_545 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_545) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_545) 0))) (forall ((v_idx_549 Int)) (or (= 1 (select |#valid| v_idx_549)) (< v_idx_549 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_549))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:54:58,751 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:58,752 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:58,752 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:58,752 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:58,753 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_559 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_69_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_565 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_565) v_v_69_3)) (or (< v_idx_560 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_560) (= 1 (select |c_#valid| v_idx_560))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_564) (< v_idx_564 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_564) 0)) (or (<= c_ULTIMATE.start_main_p5 v_idx_555) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_46_3)) (= (select |c_old(#memory_int)| v_idx_562) v_v_4_3) (or (= v_v_52_3 (select |c_#valid| v_idx_559)) (<= c_ULTIMATE.start_main_p5 v_idx_559)) (or (= (select |c_#memory_int| v_idx_563) v_v_67_3) (<= c_ULTIMATE.start_main_p5 v_idx_563)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_557 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_557) v_v_48_3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_556) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_556)) (< v_idx_556 c_ULTIMATE.start_main_p5)) (= v_v_2_3 (select |c_old(#valid)| v_idx_558)) (or (< v_idx_561 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_3 (select |c_#valid| v_idx_561))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_75_3 Int) (v_v_54_3 Int) (v_v_74_3 Int) (v_v_52_3 Int) (v_v_73_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_569)) (= (select |c_old(#memory_int)| v_idx_573) v_v_4_3) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_575) (< v_idx_575 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_575) v_v_74_3)) (or (= (select |c_#memory_int| v_idx_576) v_v_75_3) (< v_idx_576 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_571) (= 1 (select |c_#valid| v_idx_571)) (< v_idx_571 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_570) (= v_v_52_3 (select |c_#valid| v_idx_570))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_46_3) (<= c_ULTIMATE.start_main_p5 v_idx_566)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_567) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_567) 0) (< v_idx_567 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_574) v_v_73_3) (<= c_ULTIMATE.start_main_p2 v_idx_574)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_568) v_v_48_3) (< v_idx_568 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (= v_v_54_3 (select |c_#valid| v_idx_572)) (< v_idx_572 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:54:58,753 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:58,753 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:58,753 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_586 Int) (v_idx_587 Int) (v_idx_579 Int) (v_idx_580 Int) (v_idx_581 Int) (v_idx_584 Int) (v_idx_585 Int) (v_idx_582 Int) (v_idx_583 Int)) (exists ((v_v_54_3 Int) (v_v_127_3 Int) (v_v_128_3 Int) (v_v_52_3 Int) (v_v_126_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_585) v_v_126_3) (<= c_ULTIMATE.start_main_p2 v_idx_585)) (or (< v_idx_586 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_586) v_v_127_3) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_586)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#memory_int| v_idx_587) v_v_128_3) (< v_idx_587 (+ c_ULTIMATE.start_main_p2 1))) (= (select |c_old(#valid)| v_idx_580) v_v_2_3) (= (select |c_old(#memory_int)| v_idx_584) v_v_4_3) (or (<= c_ULTIMATE.start_main_p5 v_idx_577) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_577) v_v_46_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_579) v_v_48_3) (< v_idx_579 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_578) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_578) 0) (< v_idx_578 c_ULTIMATE.start_main_p5)) (or (< v_idx_583 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_3 (select |c_#valid| v_idx_583))) (or (= v_v_52_3 (select |c_#valid| v_idx_581)) (<= c_ULTIMATE.start_main_p5 v_idx_581)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_582 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_582)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_582)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:54:58,753 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:59,341 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:59,341 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:07,495 WARN L181 SmtUtils]: Spent 8.15 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:07,496 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_559 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_54_3 Int) (v_v_67_3 Int) (v_v_52_3 Int) (v_v_2_3 Int) (v_v_69_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_565 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_565) v_v_69_3)) (or (< v_idx_560 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_560) (= 1 (select |#valid| v_idx_560))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_564) (< v_idx_564 ULTIMATE.start_main_p5) (= (select |#memory_int| v_idx_564) 0)) (or (<= ULTIMATE.start_main_p5 v_idx_555) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_46_3)) (= (select |old(#memory_int)| v_idx_562) v_v_4_3) (or (= v_v_52_3 (select |#valid| v_idx_559)) (<= ULTIMATE.start_main_p5 v_idx_559)) (or (= (select |#memory_int| v_idx_563) v_v_67_3) (<= ULTIMATE.start_main_p5 v_idx_563)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_557 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_557) v_v_48_3)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_556) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_556)) (< v_idx_556 ULTIMATE.start_main_p5)) (= v_v_2_3 (select |old(#valid)| v_idx_558)) (or (< v_idx_561 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_54_3 (select |#valid| v_idx_561))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_75_3 Int) (v_v_54_3 Int) (v_v_74_3 Int) (v_v_52_3 Int) (v_v_73_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |old(#valid)| v_idx_569)) (= (select |old(#memory_int)| v_idx_573) v_v_4_3) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_575) (< v_idx_575 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_575) v_v_74_3)) (or (= (select |#memory_int| v_idx_576) v_v_75_3) (< v_idx_576 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_571) (= 1 (select |#valid| v_idx_571)) (< v_idx_571 ULTIMATE.start_main_p5)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= ULTIMATE.start_main_p5 v_idx_570) (= v_v_52_3 (select |#valid| v_idx_570))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_46_3) (<= ULTIMATE.start_main_p5 v_idx_566)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_567) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_567) 0) (< v_idx_567 ULTIMATE.start_main_p5)) (or (= (select |#memory_int| v_idx_574) v_v_73_3) (<= ULTIMATE.start_main_p2 v_idx_574)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_568) v_v_48_3) (< v_idx_568 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (= v_v_54_3 (select |#valid| v_idx_572)) (< v_idx_572 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:55:07,496 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:55:07,496 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:55:07,659 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_578 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_578) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_578) 0) (< v_idx_578 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_582 Int)) (or (< v_idx_582 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_582)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_582))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:08,125 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:55:08,125 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:55:08,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:08,126 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:55:08,126 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:08,126 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:55:08,136 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:08,136 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:55:08,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:08,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:08,149 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:55:08,197 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-01-18 14:55:08,205 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-01-18 14:55:08,240 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,242 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,244 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-01-18 14:55:08,274 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,276 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,277 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,279 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-01-18 14:55:08,302 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 50 [2019-01-18 14:55:08,304 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,326 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,345 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,360 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,374 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,403 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,405 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-18 14:55:08,450 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,452 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,453 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-18 14:55:08,503 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,504 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,506 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,507 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,508 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-18 14:55:08,514 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,525 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,538 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,576 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:08,577 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 5 variables, input treesize:52, output treesize:50 [2019-01-18 14:55:08,585 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:08,585 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_33|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= (store (store (store (store (store |v_#memory_int_33| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) |#memory_int|) (= (select (store .cse1 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4) 0)))) [2019-01-18 14:55:08,585 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:55:08,664 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:08,665 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 51 [2019-01-18 14:55:08,667 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:08,697 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:08,698 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:55, output treesize:33 [2019-01-18 14:55:10,283 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:10,284 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_34|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (let ((.cse0 (select |v_#memory_int_34| ULTIMATE.start_main_p2))) (and (= |#memory_int| (store |v_#memory_int_34| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_34| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= .cse0 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_34| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_34| ULTIMATE.start_main_p3) 0))) [2019-01-18 14:55:10,284 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:55:10,312 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {458#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} is VALID [2019-01-18 14:55:10,314 INFO L273 TraceCheckUtils]: 1: Hoare triple {458#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {462#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} is VALID [2019-01-18 14:55:10,315 INFO L273 TraceCheckUtils]: 2: Hoare triple {462#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))))} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:55:10,315 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:10,315 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:55:10,337 INFO L273 TraceCheckUtils]: 2: Hoare triple {466#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:55:10,338 INFO L273 TraceCheckUtils]: 1: Hoare triple {470#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {466#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:55:10,340 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {470#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:55:10,341 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:10,361 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:55:10,361 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:55:10,361 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:55:10,361 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:55:10,361 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:55:10,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:55:10,371 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:55:10,372 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:55:10,372 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:55:10,372 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:55:10,373 INFO L87 Difference]: Start difference. First operand 17 states and 37 transitions. Second operand 6 states. [2019-01-18 14:55:10,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:10,792 INFO L93 Difference]: Finished difference Result 39 states and 66 transitions. [2019-01-18 14:55:10,792 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:55:10,793 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:55:10,793 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:55:10,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:55:10,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 54 transitions. [2019-01-18 14:55:10,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:55:10,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 54 transitions. [2019-01-18 14:55:10,796 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 54 transitions. [2019-01-18 14:55:10,923 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:55:10,925 INFO L225 Difference]: With dead ends: 39 [2019-01-18 14:55:10,925 INFO L226 Difference]: Without dead ends: 38 [2019-01-18 14:55:10,926 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:55:10,926 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2019-01-18 14:55:10,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 18. [2019-01-18 14:55:10,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:55:10,955 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand 18 states. [2019-01-18 14:55:10,955 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 18 states. [2019-01-18 14:55:10,955 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 18 states. [2019-01-18 14:55:10,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:10,958 INFO L93 Difference]: Finished difference Result 38 states and 64 transitions. [2019-01-18 14:55:10,958 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 64 transitions. [2019-01-18 14:55:10,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:10,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:10,959 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand 38 states. [2019-01-18 14:55:10,959 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 38 states. [2019-01-18 14:55:10,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:10,962 INFO L93 Difference]: Finished difference Result 38 states and 64 transitions. [2019-01-18 14:55:10,962 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 64 transitions. [2019-01-18 14:55:10,963 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:10,963 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:10,963 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:55:10,963 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:55:10,963 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2019-01-18 14:55:10,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 43 transitions. [2019-01-18 14:55:10,965 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 43 transitions. Word has length 3 [2019-01-18 14:55:10,965 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:55:10,965 INFO L480 AbstractCegarLoop]: Abstraction has 18 states and 43 transitions. [2019-01-18 14:55:10,965 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:55:10,965 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 43 transitions. [2019-01-18 14:55:10,966 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:55:10,966 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:55:10,966 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:55:10,966 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:55:10,967 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:10,967 INFO L82 PathProgramCache]: Analyzing trace with hash 941462, now seen corresponding path program 1 times [2019-01-18 14:55:10,967 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:55:10,968 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:10,968 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:10,968 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:10,968 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:55:10,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:11,055 INFO L273 TraceCheckUtils]: 0: Hoare triple {619#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0]; {621#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:55:11,057 INFO L273 TraceCheckUtils]: 1: Hoare triple {621#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {622#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:55:11,058 INFO L273 TraceCheckUtils]: 2: Hoare triple {622#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {623#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:55:11,060 INFO L273 TraceCheckUtils]: 3: Hoare triple {623#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {620#false} is VALID [2019-01-18 14:55:11,060 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:11,060 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:11,060 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:55:11,061 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:55:11,061 INFO L207 CegarAbsIntRunner]: [0], [18], [20], [23] [2019-01-18 14:55:11,062 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:55:11,063 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:55:13,745 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:13,745 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:13,745 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:13,745 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:13,746 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(forall ((v_idx_610 Int) (v_idx_611 Int) (v_idx_614 Int) (v_idx_604 Int) (v_idx_612 Int) (v_idx_613 Int) (v_idx_607 Int) (v_idx_608 Int) (v_idx_605 Int) (v_idx_606 Int) (v_idx_609 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_67_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_614 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_614) v_v_69_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_605)) (< v_idx_605 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_605)) (or (<= c_ULTIMATE.start_main_p5 v_idx_608) (= (select |c_#valid| v_idx_608) v_v_52_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_610 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_610) v_v_54_4)) (or (= (select |c_#memory_int| v_idx_612) v_v_67_4) (<= c_ULTIMATE.start_main_p5 v_idx_612)) (= (select |c_old(#memory_int)| v_idx_611) v_v_4_4) (or (= (select |c_#valid| v_idx_609) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_609) (< v_idx_609 c_ULTIMATE.start_main_p5)) (= v_v_2_4 (select |c_old(#valid)| v_idx_607)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_606) v_v_48_4) (< v_idx_606 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_613) (= (select |c_#memory_int| v_idx_613) 0) (< v_idx_613 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p5 v_idx_604) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_604) v_v_46_4)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:55:13,746 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:13,746 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:13,746 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_620 Int) (v_idx_625 Int) (v_idx_615 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_618 Int) (v_idx_619 Int) (v_idx_616 Int) (v_idx_617 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_71_4 Int) (v_v_70_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_622)) (or (< v_idx_624 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_624) v_v_71_4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_624)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_619) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_619)) (or (< v_idx_621 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_621) v_v_54_4)) (or (< v_idx_616 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_616) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_616) 0)) (or (< v_idx_617 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_617) v_v_48_4)) (= (select |c_old(#valid)| v_idx_618) v_v_2_4) (or (= (select |c_#memory_int| v_idx_625) v_v_72_4) (< v_idx_625 (+ c_ULTIMATE.start_main_p4 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p5 v_idx_615) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_615) v_v_46_4)) (or (= (select |c_#valid| v_idx_620) 1) (< v_idx_620 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_620)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_623) v_v_70_4) (<= c_ULTIMATE.start_main_p4 v_idx_623)))))} [2019-01-18 14:55:13,746 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:14,249 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:14,249 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:14,439 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_605 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_605)) (< v_idx_605 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_605))) (forall ((v_idx_613 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_613) (= (select |#memory_int| v_idx_613) 0) (< v_idx_613 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_609 Int)) (or (= (select |#valid| v_idx_609) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_609) (< v_idx_609 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:14,439 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:14,439 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:14,465 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_620 Int)) (or (= (select |#valid| v_idx_620) 1) (< v_idx_620 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_620))) (forall ((v_idx_616 Int)) (or (< v_idx_616 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_616) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_616) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:16,825 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:16,825 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:16,826 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:16,826 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:16,826 WARN L224 ngHoareTripleChecker]: Pre: {2147483601#(forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_630 Int) (v_idx_631 Int) (v_idx_636 Int) (v_idx_626 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_633) v_v_4_4) (or (< v_idx_636 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_636) v_v_69_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_628 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_628) v_v_48_4)) (or (= v_v_54_4 (select |c_#valid| v_idx_632)) (< v_idx_632 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_627) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_627)) (< v_idx_627 c_ULTIMATE.start_main_p5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_631) (< v_idx_631 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_631))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_635) (= (select |c_#memory_int| v_idx_635) 0) (< v_idx_635 c_ULTIMATE.start_main_p5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_626) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_626)) (or (= (select |c_#memory_int| v_idx_634) v_v_67_4) (<= c_ULTIMATE.start_main_p5 v_idx_634)) (= v_v_2_4 (select |c_old(#valid)| v_idx_629)) (or (= (select |c_#valid| v_idx_630) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_630)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:55:16,826 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:16,826 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:16,826 WARN L230 ngHoareTripleChecker]: Post: {2147483600#(forall ((v_idx_643 Int) (v_idx_644 Int) (v_idx_641 Int) (v_idx_642 Int) (v_idx_647 Int) (v_idx_637 Int) (v_idx_645 Int) (v_idx_646 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_647 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_647) v_v_69_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_642) (< v_idx_642 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_642))) (or (<= c_ULTIMATE.start_main_p5 v_idx_641) (= (select |c_#valid| v_idx_641) v_v_52_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_643 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_643) v_v_54_4)) (= (select |c_old(#memory_int)| v_idx_644) v_v_4_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_639) v_v_48_4) (< v_idx_639 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_640) v_v_2_4) (or (<= c_ULTIMATE.start_main_p5 v_idx_645) (= (select |c_#memory_int| v_idx_645) v_v_67_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_637) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_637)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_638) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_638) 0) (< v_idx_638 c_ULTIMATE.start_main_p5)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_646) (= (select |c_#memory_int| v_idx_646) 1) (< v_idx_646 c_ULTIMATE.start_main_p5)))))} [2019-01-18 14:55:16,826 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:17,442 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:17,442 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:17,617 WARN L270 ngHoareTripleChecker]: Pre: {2147483601#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_627 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_627) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_627)) (< v_idx_627 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_635 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_635) (= (select |#memory_int| v_idx_635) 0) (< v_idx_635 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_631 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_631) (< v_idx_631 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_631)))))} [2019-01-18 14:55:17,617 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:17,617 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:17,652 WARN L276 ngHoareTripleChecker]: Post: {2147483600#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_638 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_638) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_638) 0) (< v_idx_638 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_642 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_642) (< v_idx_642 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_642)))) (forall ((v_idx_646 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_646) (= (select |#memory_int| v_idx_646) 1) (< v_idx_646 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:20,312 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:20,312 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:20,313 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:20,313 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:20,313 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(forall ((v_idx_654 Int) (v_idx_655 Int) (v_idx_652 Int) (v_idx_653 Int) (v_idx_658 Int) (v_idx_648 Int) (v_idx_656 Int) (v_idx_657 Int) (v_idx_649 Int) (v_idx_650 Int) (v_idx_651 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_69_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_650 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_650) v_v_48_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_657) (= (select |c_#memory_int| v_idx_657) 0) (< v_idx_657 c_ULTIMATE.start_main_p5)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_655)) (or (< v_idx_654 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_654) v_v_54_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_648) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_648)) (or (= (select |c_#memory_int| v_idx_658) v_v_69_4) (< v_idx_658 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_652) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_652)) (= v_v_2_4 (select |c_old(#valid)| v_idx_651)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_649 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_649) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_649))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_653) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_653) (< v_idx_653 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_656) v_v_67_4) (<= c_ULTIMATE.start_main_p5 v_idx_656)))))} [2019-01-18 14:55:20,313 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:20,313 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:20,313 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_663 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_659 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_661 Int) (v_idx_662 Int) (v_idx_660 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_111_4 Int) (v_v_48_4 Int) (v_v_109_4 Int) (v_v_110_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (+ v_v_110_4 1) 0) (or (= (select |c_#valid| v_idx_665) v_v_54_4) (< v_idx_665 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_661) v_v_48_4) (< v_idx_661 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_659) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_659) v_v_46_4)) (or (<= c_ULTIMATE.start_main_p1 v_idx_667) (= (select |c_#memory_int| v_idx_667) v_v_109_4)) (or (= (select |c_#valid| v_idx_663) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_663)) (or (< v_idx_668 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_668) v_v_110_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_668)) (<= (- v_v_110_4 (- v_v_110_4)) (- 2)) (or (< v_idx_669 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_111_4 (select |c_#memory_int| v_idx_669))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_662)) (or (< v_idx_664 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_664) (= 1 (select |c_#valid| v_idx_664))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_660) (< v_idx_660 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_660))) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_666) v_v_4_4))))} [2019-01-18 14:55:20,313 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:20,650 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:20,650 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:20,827 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_649 Int)) (or (< v_idx_649 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_649) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_649)))) (forall ((v_idx_657 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_657) (= (select |#memory_int| v_idx_657) 0) (< v_idx_657 ULTIMATE.start_main_p5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_653 Int)) (or (= (select |#valid| v_idx_653) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_653) (< v_idx_653 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:20,828 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:20,828 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:20,877 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_668 Int)) (or (< v_idx_668 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_668) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_668))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_prenex_29 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_29)) 2) 0) (< v_prenex_29 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_29))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_664 Int)) (or (< v_idx_664 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_664) (= 1 (select |#valid| v_idx_664)))) (forall ((v_idx_660 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_660) (< v_idx_660 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_660)))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:23,338 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:23,338 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:23,338 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:23,339 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:23,339 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_685 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_71_4 Int) (v_v_70_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_687 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_687) v_v_54_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_686 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_686) (= 1 (select |c_#valid| v_idx_686))) (or (= (select |c_#memory_int| v_idx_690) v_v_71_4) (< v_idx_690 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_690)) (or (<= c_ULTIMATE.start_main_p5 v_idx_681) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_46_4)) (or (< v_idx_683 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_683) v_v_48_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_684)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_682)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_682) (< v_idx_682 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_688)) (or (= (select |c_#valid| v_idx_685) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_685)) (or (= (select |c_#memory_int| v_idx_691) v_v_72_4) (< v_idx_691 (+ c_ULTIMATE.start_main_p4 1))) (or (= (select |c_#memory_int| v_idx_689) v_v_70_4) (<= c_ULTIMATE.start_main_p4 v_idx_689)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_674 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_67_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_677)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_675) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_675) (< v_idx_675 c_ULTIMATE.start_main_p5)) (= v_v_2_4 (select |c_old(#valid)| v_idx_673)) (or (< v_idx_680 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_680) v_v_69_4)) (or (< v_idx_676 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_676) v_v_54_4)) (or (<= c_ULTIMATE.start_main_p5 v_idx_678) (= (select |c_#memory_int| v_idx_678) v_v_67_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_679) (= 0 (select |c_#memory_int| v_idx_679)) (< v_idx_679 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_674) (= (select |c_#valid| v_idx_674) v_v_52_4)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_671 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_671) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (< v_idx_672 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_672) v_v_48_4)) (or (<= c_ULTIMATE.start_main_p5 v_idx_670) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_46_4)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:55:23,339 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:23,339 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:23,339 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_696 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_113_4 Int) (v_v_114_4 Int) (v_v_112_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_699) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_692) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_692)) (or (<= c_ULTIMATE.start_main_p5 v_idx_696) (= v_v_52_4 (select |c_#valid| v_idx_696))) (or (< v_idx_698 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_698) v_v_54_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_697) (= 1 (select |c_#valid| v_idx_697)) (< v_idx_697 c_ULTIMATE.start_main_p5)) (or (< v_idx_702 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_702) v_v_114_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_695)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_693 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_693)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_693)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_694 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_694) v_v_48_4)) (or (< v_idx_701 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_701) (= (select |c_#memory_int| v_idx_701) v_v_113_4)) (or (<= c_ULTIMATE.start_main_p4 v_idx_700) (= (select |c_#memory_int| v_idx_700) v_v_112_4)))))} [2019-01-18 14:55:23,339 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:23,857 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:23,857 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:32,045 WARN L181 SmtUtils]: Spent 8.19 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:32,046 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_685 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_71_4 Int) (v_v_70_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_687 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_687) v_v_54_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (< v_idx_686 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_686) (= 1 (select |#valid| v_idx_686))) (or (= (select |#memory_int| v_idx_690) v_v_71_4) (< v_idx_690 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_690)) (or (<= ULTIMATE.start_main_p5 v_idx_681) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_46_4)) (or (< v_idx_683 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_683) v_v_48_4)) (= v_v_2_4 (select |old(#valid)| v_idx_684)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_682)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_682) (< v_idx_682 ULTIMATE.start_main_p5)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |old(#memory_int)| v_idx_688)) (or (= (select |#valid| v_idx_685) v_v_52_4) (<= ULTIMATE.start_main_p5 v_idx_685)) (or (= (select |#memory_int| v_idx_691) v_v_72_4) (< v_idx_691 (+ ULTIMATE.start_main_p4 1))) (or (= (select |#memory_int| v_idx_689) v_v_70_4) (<= ULTIMATE.start_main_p4 v_idx_689)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_674 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_67_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |old(#memory_int)| v_idx_677)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= (select |#valid| v_idx_675) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_675) (< v_idx_675 ULTIMATE.start_main_p5)) (= v_v_2_4 (select |old(#valid)| v_idx_673)) (or (< v_idx_680 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_680) v_v_69_4)) (or (< v_idx_676 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_676) v_v_54_4)) (or (<= ULTIMATE.start_main_p5 v_idx_678) (= (select |#memory_int| v_idx_678) v_v_67_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_679) (= 0 (select |#memory_int| v_idx_679)) (< v_idx_679 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_674) (= (select |#valid| v_idx_674) v_v_52_4)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_671 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_671) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (< v_idx_672 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_672) v_v_48_4)) (or (<= ULTIMATE.start_main_p5 v_idx_670) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_46_4)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))))} [2019-01-18 14:55:32,046 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:32,046 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:32,196 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_693 Int)) (or (< v_idx_693 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_693)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_693))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_697 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_697) (= 1 (select |#valid| v_idx_697)) (< v_idx_697 ULTIMATE.start_main_p5))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:35,430 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:35,430 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:35,431 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:35,431 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:35,431 WARN L224 ngHoareTripleChecker]: Pre: {2147483595#(or (forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_714 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_719 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_71_4 Int) (v_v_70_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_716) v_v_48_4) (< v_idx_716 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_714) (= v_v_46_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_714))) (or (= (select |c_#valid| v_idx_718) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_718)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#memory_int| v_idx_724) v_v_72_4) (< v_idx_724 (+ c_ULTIMATE.start_main_p4 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_719) (< v_idx_719 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_719))) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_723) (< v_idx_723 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_723) v_v_71_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_717)) (or (< v_idx_720 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_720) v_v_54_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_715) (< v_idx_715 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_715) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_721) v_v_4_4) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_722) v_v_70_4) (<= c_ULTIMATE.start_main_p4 v_idx_722))))) (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_703 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_709) v_v_54_4) (< v_idx_709 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_707) (= (select |c_#valid| v_idx_707) v_v_52_4)) (= (select |c_old(#valid)| v_idx_706) v_v_2_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_48_4) (< v_idx_705 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_704) (< v_idx_704 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_704))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_708) (< v_idx_708 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_708) 1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_712) (< v_idx_712 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_712) 0)) (or (= (select |c_#memory_int| v_idx_713) v_v_69_4) (< v_idx_713 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_710) v_v_4_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_703)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_711) v_v_67_4) (<= c_ULTIMATE.start_main_p5 v_idx_711))))))} [2019-01-18 14:55:35,431 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:35,431 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:35,431 WARN L230 ngHoareTripleChecker]: Post: {2147483594#(forall ((v_idx_731 Int) (v_idx_732 Int) (v_idx_730 Int) (v_idx_735 Int) (v_idx_725 Int) (v_idx_733 Int) (v_idx_734 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int)) (exists ((v_v_52_4 Int) (v_v_160_4 Int) (v_v_54_4 Int) (v_v_161_4 Int) (v_v_159_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_731 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_54_4 (select |c_#valid| v_idx_731))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= c_ULTIMATE.start_main_p5 v_idx_733) (= v_v_159_4 (select |c_#memory_int| v_idx_733))) (= v_v_2_4 (select |c_old(#valid)| v_idx_728)) (or (= (select |c_#valid| v_idx_729) v_v_52_4) (<= c_ULTIMATE.start_main_p5 v_idx_729)) (or (= v_v_160_4 (select |c_#memory_int| v_idx_734)) (< v_idx_734 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_734)) (or (< v_idx_727 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_48_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_727))) (or (< v_idx_730 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_730) (= 1 (select |c_#valid| v_idx_730))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_726)) (< v_idx_726 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_726)) (or (< v_idx_735 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_161_4 (select |c_#memory_int| v_idx_735))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_732) v_v_4_4) (or (= v_v_46_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_725)) (<= c_ULTIMATE.start_main_p5 v_idx_725)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:55:35,432 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:35,999 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:36,000 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:44,289 WARN L181 SmtUtils]: Spent 8.29 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:44,290 WARN L270 ngHoareTripleChecker]: Pre: {2147483595#(or (forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_714 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_719 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_71_4 Int) (v_v_70_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_716) v_v_48_4) (< v_idx_716 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p5 v_idx_714) (= v_v_46_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_714))) (or (= (select |#valid| v_idx_718) v_v_52_4) (<= ULTIMATE.start_main_p5 v_idx_718)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= (select |#memory_int| v_idx_724) v_v_72_4) (< v_idx_724 (+ ULTIMATE.start_main_p4 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_719) (< v_idx_719 ULTIMATE.start_main_p5) (= 1 (select |#valid| v_idx_719))) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_723) (< v_idx_723 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_723) v_v_71_4)) (= v_v_2_4 (select |old(#valid)| v_idx_717)) (or (< v_idx_720 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_720) v_v_54_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_715) (< v_idx_715 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_715) 0)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_721) v_v_4_4) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_722) v_v_70_4) (<= ULTIMATE.start_main_p4 v_idx_722))))) (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_703 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_69_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_709) v_v_54_4) (< v_idx_709 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (<= ULTIMATE.start_main_p5 v_idx_707) (= (select |#valid| v_idx_707) v_v_52_4)) (= (select |old(#valid)| v_idx_706) v_v_2_4) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_48_4) (< v_idx_705 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_704) (< v_idx_704 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_704))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_708) (< v_idx_708 ULTIMATE.start_main_p5) (= (select |#valid| v_idx_708) 1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_712) (< v_idx_712 ULTIMATE.start_main_p5) (= (select |#memory_int| v_idx_712) 0)) (or (= (select |#memory_int| v_idx_713) v_v_69_4) (< v_idx_713 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_710) v_v_4_4) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_46_4) (<= ULTIMATE.start_main_p5 v_idx_703)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_711) v_v_67_4) (<= ULTIMATE.start_main_p5 v_idx_711))))))} [2019-01-18 14:55:44,290 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:44,290 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:44,472 WARN L276 ngHoareTripleChecker]: Post: {2147483594#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_730 Int)) (or (< v_idx_730 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_730) (= 1 (select |#valid| v_idx_730)))) (forall ((v_idx_726 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_726)) (< v_idx_726 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_726))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:47,398 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:47,398 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:47,399 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:47,399 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:47,399 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_70_4 Int) (v_v_71_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_748)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_748) (< v_idx_748 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p4 v_idx_755) (= (select |c_#memory_int| v_idx_755) v_v_70_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (= v_v_2_4 (select |c_old(#valid)| v_idx_750)) (or (= 1 (select |c_#valid| v_idx_752)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_752) (< v_idx_752 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p5 v_idx_747) (= v_v_46_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_747))) (= (select |c_old(#memory_int)| v_idx_754) v_v_4_4) (or (< v_idx_753 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_753) v_v_54_4)) (or (= (select |c_#memory_int| v_idx_757) v_v_72_4) (< v_idx_757 (+ c_ULTIMATE.start_main_p4 1))) (or (<= c_ULTIMATE.start_main_p5 v_idx_751) (= v_v_52_4 (select |c_#valid| v_idx_751))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_749) v_v_48_4) (< v_idx_749 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_756) (= (select |c_#memory_int| v_idx_756) v_v_71_4) (< v_idx_756 c_ULTIMATE.start_main_p4)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_736 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_739 Int) (v_idx_737 Int) (v_idx_738 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_69_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_741) 1) (< v_idx_741 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_741)) (= v_v_2_4 (select |c_old(#valid)| v_idx_739)) (or (< v_idx_738 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_738) v_v_48_4)) (or (<= c_ULTIMATE.start_main_p5 v_idx_740) (= (select |c_#valid| v_idx_740) v_v_52_4)) (or (= (select |c_#memory_int| v_idx_745) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_745) (< v_idx_745 c_ULTIMATE.start_main_p5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_736) v_v_46_4) (<= c_ULTIMATE.start_main_p5 v_idx_736)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_737) (< v_idx_737 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_737) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_746 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_746) v_v_69_4)) (= (select |c_old(#memory_int)| v_idx_743) v_v_4_4) (or (= (select |c_#memory_int| v_idx_744) v_v_67_4) (<= c_ULTIMATE.start_main_p5 v_idx_744)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_742 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_742) v_v_54_4))))))} [2019-01-18 14:55:47,399 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:47,399 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:47,399 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_204_2 Int) (v_v_206_2 Int) (v_v_205_2 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_767) (< v_idx_767 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_767) v_v_205_2)) (or (< v_idx_768 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_768) v_v_206_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= (+ v_v_205_2 1) 0) (<= (- v_v_205_2 (- v_v_205_2)) (- 2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_759) (< v_idx_759 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_759))) (or (<= c_ULTIMATE.start_main_p5 v_idx_762) (= (select |c_#valid| v_idx_762) v_v_52_4)) (or (<= c_ULTIMATE.start_main_p5 v_idx_758) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_758) v_v_46_4)) (= (select |c_old(#valid)| v_idx_761) v_v_2_4) (or (< v_idx_760 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_760) v_v_48_4)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_765) v_v_4_4) (or (< v_idx_763 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_763) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_763)) (or (= (select |c_#valid| v_idx_764) v_v_54_4) (< v_idx_764 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_766) v_v_204_2) (<= c_ULTIMATE.start_main_p1 v_idx_766)) (<= (- (- c_ULTIMATE.start_main_p5) (- c_ULTIMATE.start_malloc_ptr)) 0))))} [2019-01-18 14:55:47,400 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:48,208 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:48,209 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:56,342 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:56,343 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_70_4 Int) (v_v_71_4 Int) (v_v_72_4 Int) (v_v_48_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_748)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_748) (< v_idx_748 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p4 v_idx_755) (= (select |#memory_int| v_idx_755) v_v_70_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (= v_v_2_4 (select |old(#valid)| v_idx_750)) (or (= 1 (select |#valid| v_idx_752)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_752) (< v_idx_752 ULTIMATE.start_main_p5)) (or (<= ULTIMATE.start_main_p5 v_idx_747) (= v_v_46_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_747))) (= (select |old(#memory_int)| v_idx_754) v_v_4_4) (or (< v_idx_753 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_753) v_v_54_4)) (or (= (select |#memory_int| v_idx_757) v_v_72_4) (< v_idx_757 (+ ULTIMATE.start_main_p4 1))) (or (<= ULTIMATE.start_main_p5 v_idx_751) (= v_v_52_4 (select |#valid| v_idx_751))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_749) v_v_48_4) (< v_idx_749 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_756) (= (select |#memory_int| v_idx_756) v_v_71_4) (< v_idx_756 ULTIMATE.start_main_p4)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0)))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_736 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_739 Int) (v_idx_737 Int) (v_idx_738 Int)) (exists ((v_v_52_4 Int) (v_v_54_4 Int) (v_v_48_4 Int) (v_v_67_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_69_4 Int) (v_v_4_4 Int)) (and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (or (= (select |#valid| v_idx_741) 1) (< v_idx_741 ULTIMATE.start_main_p5) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_741)) (= v_v_2_4 (select |old(#valid)| v_idx_739)) (or (< v_idx_738 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_738) v_v_48_4)) (or (<= ULTIMATE.start_main_p5 v_idx_740) (= (select |#valid| v_idx_740) v_v_52_4)) (or (= (select |#memory_int| v_idx_745) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_745) (< v_idx_745 ULTIMATE.start_main_p5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_736) v_v_46_4) (<= ULTIMATE.start_main_p5 v_idx_736)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_737) (< v_idx_737 ULTIMATE.start_main_p5) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_737) 0)) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (or (< v_idx_746 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_746) v_v_69_4)) (= (select |old(#memory_int)| v_idx_743) v_v_4_4) (or (= (select |#memory_int| v_idx_744) v_v_67_4) (<= ULTIMATE.start_main_p5 v_idx_744)) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_742 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_742) v_v_54_4))))))} [2019-01-18 14:55:56,343 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:56,343 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:56,499 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (<= (- ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_30 Int)) (or (<= (+ (select |#memory_int| v_prenex_30) 1) 0) (< v_prenex_30 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_30))) (forall ((v_idx_763 Int)) (or (< v_idx_763 ULTIMATE.start_main_p5) (= (select |#valid| v_idx_763) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_763))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p5) (forall ((v_idx_767 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_767) (<= (+ (* 2 (select |#memory_int| v_idx_767)) 2) 0) (< v_idx_767 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p5 ULTIMATE.start_malloc_ptr) (forall ((v_idx_759 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_759) (< v_idx_759 ULTIMATE.start_main_p5) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_759)))) (<= (- (- ULTIMATE.start_main_p5) (- ULTIMATE.start_malloc_ptr)) 0))} [2019-01-18 14:55:56,654 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:55:56,655 INFO L272 AbstractInterpreter]: Visited 4 different actions 7 times. Merged at 1 different actions 1 times. Never widened. Found 4 fixpoints after 3 different actions. Largest state had 0 variables. [2019-01-18 14:55:56,655 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:56,655 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:55:56,655 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:56,655 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:55:56,665 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:56,665 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:55:56,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:56,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:56,675 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:55:56,718 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-01-18 14:55:56,724 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-01-18 14:55:56,730 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,732 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,733 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-01-18 14:55:56,741 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,742 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,744 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,745 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-01-18 14:55:56,765 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 50 [2019-01-18 14:55:56,768 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,789 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,805 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,818 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,831 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,860 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,861 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-18 14:55:56,914 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,915 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,916 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-18 14:55:56,967 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,969 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,970 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,971 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:56,972 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-18 14:55:56,974 INFO L267 ElimStorePlain]: Start of recursive call 9: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,986 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:56,996 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,026 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 2 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:57,026 INFO L202 ElimStorePlain]: Needed 9 recursive calls to eliminate 4 variables, input treesize:52, output treesize:50 [2019-01-18 14:55:57,037 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:57,038 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_36|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, |v_#valid_10|]. (let ((.cse1 (store |v_#valid_10| ULTIMATE.start_main_p1 1))) (let ((.cse0 (store .cse1 ULTIMATE.start_main_p2 1))) (and (= 0 (select (store .cse0 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4)) (= (store (store (store (store (store |v_#memory_int_36| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) |#memory_int|) (= (select .cse1 ULTIMATE.start_main_p2) 0) (= 0 (select .cse0 ULTIMATE.start_main_p3))))) [2019-01-18 14:55:57,038 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:55:57,115 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,126 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 7 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 2 case distinctions, treesize of input 36 treesize of output 54 [2019-01-18 14:55:57,130 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 2 xjuncts. [2019-01-18 14:55:57,231 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 2 xjuncts. [2019-01-18 14:55:57,231 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:60, output treesize:74 [2019-01-18 14:55:57,281 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:57,281 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_37|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_37| ULTIMATE.start_main_p4))) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_37| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_37| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 .cse0) (= 0 (select |v_#memory_int_37| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_37| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_37| ULTIMATE.start_main_p4 (+ .cse0 (- 1)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) [2019-01-18 14:55:57,282 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [v_prenex_32, v_prenex_31, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p5)) (.cse0 (= (select |#memory_int| ULTIMATE.start_main_p1) 0))) (or (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) .cse0 (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (+ .cse1 1))) (and (= 0 .cse1) (not (= v_prenex_32 v_prenex_31)) .cse0 (not (= v_prenex_31 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) (- 1)) (= 0 (select |#memory_int| v_prenex_31)) (not (= v_prenex_32 ULTIMATE.start_main_p1)) (= (select |#memory_int| v_prenex_32) 0)))) [2019-01-18 14:55:57,380 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,381 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,382 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,383 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,392 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,393 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,395 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,420 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 10 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 6 case distinctions, treesize of input 50 treesize of output 80 [2019-01-18 14:55:57,430 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 8 xjuncts. [2019-01-18 14:55:57,622 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,624 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,625 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,626 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,627 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,628 INFO L683 Elim1Store]: detected equality via solver [2019-01-18 14:55:57,629 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 51 [2019-01-18 14:55:57,632 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,744 INFO L267 ElimStorePlain]: Start of recursive call 1: 7 dim-0 vars, 2 dim-1 vars, End of recursive call: 16 dim-0 vars, and 5 xjuncts. [2019-01-18 14:55:57,744 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 9 variables, input treesize:96, output treesize:167 [2019-01-18 14:55:59,790 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:59,790 WARN L385 uantifierElimination]: Input elimination task: ∃ [v_prenex_34, v_prenex_33, v_prenex_32, v_prenex_31, ULTIMATE.start_main_p4, |v_#memory_int_38|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (or (let ((.cse0 (+ (select |v_#memory_int_38| ULTIMATE.start_main_p5) 1))) (and (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_38| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_38| ULTIMATE.start_main_p5 .cse0)))) (let ((.cse1 (select v_prenex_34 v_prenex_33))) (and (not (= v_prenex_32 v_prenex_31)) (= 0 (select v_prenex_34 v_prenex_32)) (not (= v_prenex_32 ULTIMATE.start_main_p1)) (= |#memory_int| (store v_prenex_34 v_prenex_33 (+ .cse1 1))) (= 0 (select v_prenex_34 ULTIMATE.start_main_p1)) (= 0 .cse1) (= 0 (select v_prenex_34 v_prenex_31)) (= 0 (+ (select v_prenex_34 ULTIMATE.start_main_p4) 1)) (not (= v_prenex_31 ULTIMATE.start_main_p1))))) [2019-01-18 14:55:59,790 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [v_prenex_41, v_prenex_42, v_prenex_43, v_prenex_33, v_prenex_36, v_prenex_35, v_prenex_37, v_prenex_39, v_prenex_40, v_prenex_38, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2, v_prenex_32, ULTIMATE.start_main_p4, v_prenex_31]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p1))) (let ((.cse0 (= .cse1 0))) (or (and (not (= v_prenex_36 ULTIMATE.start_main_p1)) .cse0 (= (+ (select |#memory_int| v_prenex_35) 1) 0) (= (select |#memory_int| v_prenex_37) 1) (= 0 (select |#memory_int| v_prenex_36))) (and (not (= v_prenex_41 v_prenex_42)) (not (= v_prenex_41 ULTIMATE.start_main_p1)) .cse0 (= (+ (select |#memory_int| v_prenex_43) 1) 0) (= (select |#memory_int| v_prenex_42) 0) (= 0 (select |#memory_int| v_prenex_41)) (= 1 (select |#memory_int| v_prenex_33)) (not (= v_prenex_42 ULTIMATE.start_main_p1))) (and (not (= v_prenex_39 v_prenex_40)) (= .cse1 1) (= (+ (select |#memory_int| v_prenex_38) 1) 0) (= (select |#memory_int| v_prenex_40) 0) (= 0 (select |#memory_int| v_prenex_39))) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) .cse0 (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (and (= 1 (select |#memory_int| v_prenex_32)) .cse0 (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (= (select |#memory_int| v_prenex_31) 0) (not (= v_prenex_31 ULTIMATE.start_main_p1)))))) [2019-01-18 14:56:00,388 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-18 14:56:00,589 WARN L521 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:56:00,590 FATAL L265 ToolchainWalker]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:225) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:155) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.logic.Util.checkSat(Util.java:61) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.getRedundancy(SimplifyDDA.java:621) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getRedundancy(SimplifyDDAWithTimeout.java:122) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA$Simplifier.walk(SimplifyDDA.java:371) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:122) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:113) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.simplifyOnce(SimplifyDDA.java:650) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getSimplifiedTerm(SimplifyDDAWithTimeout.java:191) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SmtUtils.simplify(SmtUtils.java:152) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:360) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate(PredicateUnifier.java:305) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp$UnifyPostprocessor.postprocess(TraceCheckSpWp.java:575) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:439) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:200) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:286) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructForwardBackward(TraceCheckConstructor.java:224) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructTraceCheck(TraceCheckConstructor.java:188) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.get(TraceCheckConstructor.java:165) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.getTraceCheck(BaseTaipanRefinementStrategy.java:215) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.checkFeasibility(BaseRefinementStrategy.java:223) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:197) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:70) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:456) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:434) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:376) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:205) ... 45 more [2019-01-18 14:56:00,595 INFO L168 Benchmark]: Toolchain (without parser) took 260830.75 ms. Allocated memory was 139.5 MB in the beginning and 475.5 MB in the end (delta: 336.1 MB). Free memory was 106.8 MB in the beginning and 348.1 MB in the end (delta: -241.3 MB). Peak memory consumption was 94.8 MB. Max. memory is 7.1 GB. [2019-01-18 14:56:00,596 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 139.5 MB. Free memory is still 108.2 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-18 14:56:00,597 INFO L168 Benchmark]: Boogie Procedure Inliner took 59.69 ms. Allocated memory is still 139.5 MB. Free memory was 106.8 MB in the beginning and 104.4 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. [2019-01-18 14:56:00,597 INFO L168 Benchmark]: Boogie Preprocessor took 25.03 ms. Allocated memory is still 139.5 MB. Free memory was 104.4 MB in the beginning and 103.1 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. [2019-01-18 14:56:00,598 INFO L168 Benchmark]: RCFGBuilder took 745.85 ms. Allocated memory is still 139.5 MB. Free memory was 103.1 MB in the beginning and 85.6 MB in the end (delta: 17.5 MB). Peak memory consumption was 17.5 MB. Max. memory is 7.1 GB. [2019-01-18 14:56:00,599 INFO L168 Benchmark]: TraceAbstraction took 259994.64 ms. Allocated memory was 139.5 MB in the beginning and 475.5 MB in the end (delta: 336.1 MB). Free memory was 85.2 MB in the beginning and 348.1 MB in the end (delta: -262.9 MB). Peak memory consumption was 73.2 MB. Max. memory is 7.1 GB. [2019-01-18 14:56:00,602 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 139.5 MB. Free memory is still 108.2 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 59.69 ms. Allocated memory is still 139.5 MB. Free memory was 106.8 MB in the beginning and 104.4 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 25.03 ms. Allocated memory is still 139.5 MB. Free memory was 104.4 MB in the beginning and 103.1 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. * RCFGBuilder took 745.85 ms. Allocated memory is still 139.5 MB. Free memory was 103.1 MB in the beginning and 85.6 MB in the end (delta: 17.5 MB). Peak memory consumption was 17.5 MB. Max. memory is 7.1 GB. * TraceAbstraction took 259994.64 ms. Allocated memory was 139.5 MB in the beginning and 475.5 MB in the end (delta: 336.1 MB). Free memory was 85.2 MB in the beginning and 348.1 MB in the end (delta: -262.9 MB). Peak memory consumption was 73.2 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...