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-6-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b7bd044-m [2019-01-18 14:51:57,351 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-18 14:51:57,353 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-18 14:51:57,370 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-18 14:51:57,370 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-18 14:51:57,372 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-18 14:51:57,373 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-18 14:51:57,375 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-18 14:51:57,379 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-18 14:51:57,380 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-18 14:51:57,388 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-18 14:51:57,388 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-18 14:51:57,389 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-18 14:51:57,391 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-18 14:51:57,393 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-18 14:51:57,395 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-18 14:51:57,396 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-18 14:51:57,400 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-18 14:51:57,404 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-18 14:51:57,405 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-18 14:51:57,406 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-18 14:51:57,409 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-18 14:51:57,413 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-18 14:51:57,413 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-18 14:51:57,413 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-18 14:51:57,415 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-18 14:51:57,415 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-18 14:51:57,417 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-18 14:51:57,418 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-18 14:51:57,419 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-18 14:51:57,420 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-18 14:51:57,420 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-18 14:51:57,420 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-18 14:51:57,421 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-18 14:51:57,423 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-18 14:51:57,423 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-18 14:51:57,424 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:57,448 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-18 14:51:57,448 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-18 14:51:57,449 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-18 14:51:57,449 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-18 14:51:57,449 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-18 14:51:57,449 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-18 14:51:57,449 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-18 14:51:57,451 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-18 14:51:57,451 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-18 14:51:57,451 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-18 14:51:57,451 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-18 14:51:57,451 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-18 14:51:57,452 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-18 14:51:57,452 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-18 14:51:57,452 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-18 14:51:57,453 INFO L133 SettingsManager]: * Use SBE=true [2019-01-18 14:51:57,453 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-18 14:51:57,453 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-18 14:51:57,453 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-18 14:51:57,453 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-18 14:51:57,454 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-18 14:51:57,454 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-18 14:51:57,454 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-18 14:51:57,454 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-18 14:51:57,454 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-18 14:51:57,455 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-18 14:51:57,456 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-18 14:51:57,456 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-18 14:51:57,456 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-18 14:51:57,456 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-18 14:51:57,457 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:51:57,457 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-18 14:51:57,457 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-18 14:51:57,457 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-18 14:51:57,457 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-18 14:51:57,458 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-18 14:51:57,458 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-18 14:51:57,458 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-18 14:51:57,459 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-18 14:51:57,506 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-18 14:51:57,519 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-18 14:51:57,522 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-18 14:51:57,524 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-18 14:51:57,525 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-18 14:51:57,525 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-6-unlimited.bpl [2019-01-18 14:51:57,526 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-6-unlimited.bpl' [2019-01-18 14:51:57,581 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-18 14:51:57,583 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-18 14:51:57,584 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-18 14:51:57,584 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-18 14:51:57,584 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-18 14:51:57,601 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,617 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,653 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-18 14:51:57,658 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-18 14:51:57,658 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-18 14:51:57,658 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-18 14:51:57,670 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,671 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,672 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,673 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,678 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,685 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,686 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/1) ... [2019-01-18 14:51:57,693 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-18 14:51:57,693 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-18 14:51:57,694 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-18 14:51:57,694 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-18 14:51:57,696 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (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:57,771 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-18 14:51:57,771 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-18 14:51:58,418 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-18 14:51:58,419 INFO L286 CfgBuilder]: Removed 15 assue(true) statements. [2019-01-18 14:51:58,420 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:51:58 BoogieIcfgContainer [2019-01-18 14:51:58,420 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-18 14:51:58,421 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-18 14:51:58,421 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-18 14:51:58,425 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-18 14:51:58,425 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:51:57" (1/2) ... [2019-01-18 14:51:58,426 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10c4953f and model type speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.01 02:51:58, skipping insertion in model container [2019-01-18 14:51:58,426 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:51:58" (2/2) ... [2019-01-18 14:51:58,429 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-6-unlimited.bpl [2019-01-18 14:51:58,441 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-18 14:51:58,458 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 6 error locations. [2019-01-18 14:51:58,478 INFO L257 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2019-01-18 14:51:58,521 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-18 14:51:58,521 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-18 14:51:58,521 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-18 14:51:58,521 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-18 14:51:58,522 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-18 14:51:58,522 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-18 14:51:58,522 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-18 14:51:58,522 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-18 14:51:58,548 INFO L276 IsEmpty]: Start isEmpty. Operand 15 states. [2019-01-18 14:51:58,562 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-18 14:51:58,562 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:58,564 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-18 14:51:58,566 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:58,576 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:58,576 INFO L82 PathProgramCache]: Analyzing trace with hash 988, now seen corresponding path program 1 times [2019-01-18 14:51:58,579 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:58,628 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:58,629 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:58,629 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:58,629 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:58,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:58,886 INFO L273 TraceCheckUtils]: 0: Hoare triple {18#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {20#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:51:58,906 INFO L273 TraceCheckUtils]: 1: Hoare triple {20#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {19#false} is VALID [2019-01-18 14:51:58,909 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:58,911 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:51:58,911 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:51:58,912 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:51:58,916 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:51:58,918 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:51:58,922 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:51:58,941 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:58,942 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:51:58,948 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:51:58,949 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:51:58,951 INFO L87 Difference]: Start difference. First operand 15 states. Second operand 3 states. [2019-01-18 14:51:59,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:59,384 INFO L93 Difference]: Finished difference Result 29 states and 39 transitions. [2019-01-18 14:51:59,384 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:51:59,385 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:51:59,385 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:51:59,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:59,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2019-01-18 14:51:59,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:59,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2019-01-18 14:51:59,396 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 39 transitions. [2019-01-18 14:51:59,592 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:59,604 INFO L225 Difference]: With dead ends: 29 [2019-01-18 14:51:59,604 INFO L226 Difference]: Without dead ends: 24 [2019-01-18 14:51:59,608 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:59,627 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2019-01-18 14:51:59,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 14. [2019-01-18 14:51:59,679 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:51:59,680 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand 14 states. [2019-01-18 14:51:59,680 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand 14 states. [2019-01-18 14:51:59,681 INFO L87 Difference]: Start difference. First operand 24 states. Second operand 14 states. [2019-01-18 14:51:59,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:59,686 INFO L93 Difference]: Finished difference Result 24 states and 34 transitions. [2019-01-18 14:51:59,686 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 34 transitions. [2019-01-18 14:51:59,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:59,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:59,687 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 24 states. [2019-01-18 14:51:59,688 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 24 states. [2019-01-18 14:51:59,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:59,692 INFO L93 Difference]: Finished difference Result 24 states and 34 transitions. [2019-01-18 14:51:59,692 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 34 transitions. [2019-01-18 14:51:59,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:59,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:59,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:51:59,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:51:59,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2019-01-18 14:51:59,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 25 transitions. [2019-01-18 14:51:59,698 INFO L78 Accepts]: Start accepts. Automaton has 14 states and 25 transitions. Word has length 2 [2019-01-18 14:51:59,698 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:51:59,698 INFO L480 AbstractCegarLoop]: Abstraction has 14 states and 25 transitions. [2019-01-18 14:51:59,698 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:51:59,699 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 25 transitions. [2019-01-18 14:51:59,699 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:51:59,699 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:59,700 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:51:59,700 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:59,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:59,701 INFO L82 PathProgramCache]: Analyzing trace with hash 30376, now seen corresponding path program 1 times [2019-01-18 14:51:59,701 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:59,702 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:59,702 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:59,702 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:59,702 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:59,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:59,839 INFO L273 TraceCheckUtils]: 0: Hoare triple {118#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {120#(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:59,855 INFO L273 TraceCheckUtils]: 1: Hoare triple {120#(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]; {121#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:51:59,872 INFO L273 TraceCheckUtils]: 2: Hoare triple {121#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {119#false} is VALID [2019-01-18 14:51:59,873 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:59,873 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:59,873 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:51:59,875 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:51:59,877 INFO L207 CegarAbsIntRunner]: [0], [18], [27] [2019-01-18 14:51:59,954 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:51:59,955 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:52:06,289 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:06,290 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:06,290 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:06,291 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:06,292 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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_80_1 Int) (v_v_2_1 Int) (v_v_82_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 0 (select |c_#memory_int| v_idx_48)) (< v_idx_48 c_ULTIMATE.start_main_p6)) (or (< v_idx_49 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_49) v_v_82_1)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_46)) (or (< v_idx_41 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_41) v_v_58_1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_47) (= (select |c_#memory_int| v_idx_47) v_v_80_1)) (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_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_39) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_39) v_v_56_1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_42)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_43) v_v_62_1) (<= c_ULTIMATE.start_main_p6 v_idx_43)) (or (< v_idx_44 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_44)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_44)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_45) v_v_64_1) (< v_idx_45 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-18 14:52:06,293 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:06,293 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:06,294 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_97_1 Int) (v_v_56_1 Int) (v_v_98_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_99_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_50) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_50) v_v_56_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_51) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_51)) (< v_idx_51 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_58) v_v_97_1) (<= c_ULTIMATE.start_main_p1 v_idx_58)) (or (< v_idx_52 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_52))) (or (< v_idx_56 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_1 (select |c_#valid| v_idx_56))) (= v_v_2_1 (select |c_old(#valid)| v_idx_53)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_59) (< v_idx_59 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_59) v_v_98_1)) (or (< v_idx_60 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_60) v_v_99_1)) (or (< v_idx_55 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_55) (= 1 (select |c_#valid| v_idx_55))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_54) (= v_v_62_1 (select |c_#valid| v_idx_54))) (<= (+ v_v_98_1 1) 0) (= (select |c_old(#memory_int)| v_idx_57) v_v_4_1) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_98_1 (- v_v_98_1)) (- 2)))))} [2019-01-18 14:52:06,294 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:06,737 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:06,737 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:07,077 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_44 Int)) (or (< v_idx_44 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_44)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_44))) (forall ((v_idx_48 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 0 (select |#memory_int| v_idx_48)) (< v_idx_48 ULTIMATE.start_main_p6))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (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_p6))))} [2019-01-18 14:52:07,077 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:07,078 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:07,324 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (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_idx_55 Int)) (or (< v_idx_55 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_55) (= 1 (select |#valid| v_idx_55)))) (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_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_51 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_51) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_51)) (< v_idx_51 ULTIMATE.start_main_p6))))} [2019-01-18 14:52:10,778 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:10,778 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:10,779 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:10,779 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:10,780 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_80_1 Int) (v_v_2_1 Int) (v_v_82_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_63 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_63))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_66) (< v_idx_66 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_66))) (or (<= c_ULTIMATE.start_main_p6 v_idx_61) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_56_1)) (or (= (select |c_#valid| v_idx_67) v_v_64_1) (< v_idx_67 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |c_old(#valid)| v_idx_64)) (or (= v_v_82_1 (select |c_#memory_int| v_idx_71)) (< v_idx_71 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_65) (= (select |c_#valid| v_idx_65) v_v_62_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 c_ULTIMATE.start_main_p6) (= 0 (select |c_#memory_int| v_idx_70))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_69) v_v_80_1) (<= c_ULTIMATE.start_main_p6 v_idx_69)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_62) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (< v_idx_62 c_ULTIMATE.start_main_p6))))) (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_56_1 Int) (v_v_58_1 Int) (v_v_85_1 Int) (v_v_62_1 Int) (v_v_84_1 Int) (v_v_64_1 Int) (v_v_83_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_79)) (or (< v_idx_78 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_78) v_v_64_1)) (or (< v_idx_77 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_77) (= (select |c_#valid| v_idx_77) 1)) (or (= (select |c_#memory_int| v_idx_82) v_v_85_1) (< v_idx_82 (+ c_ULTIMATE.start_main_p4 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_76) v_v_62_1) (<= c_ULTIMATE.start_main_p6 v_idx_76)) (or (< v_idx_81 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_81) v_v_84_1) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_81)) (or (<= c_ULTIMATE.start_main_p4 v_idx_80) (= (select |c_#memory_int| v_idx_80) v_v_83_1)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_56_1) (<= c_ULTIMATE.start_main_p6 v_idx_72)) (= v_v_2_1 (select |c_old(#valid)| v_idx_75)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_58_1) (< v_idx_74 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_73) (< v_idx_73 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_73) 0))))))} [2019-01-18 14:52:10,780 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:10,780 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:10,781 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_100_1 Int) (v_v_56_1 Int) (v_v_102_1 Int) (v_v_101_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_87) (= (select |c_#valid| v_idx_87) v_v_62_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_2_1 (select |c_old(#valid)| v_idx_86)) (or (< v_idx_89 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_89) v_v_64_1)) (= (select |c_old(#memory_int)| v_idx_90) v_v_4_1) (or (<= c_ULTIMATE.start_main_p6 v_idx_83) (= v_v_56_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_83))) (or (= (select |c_#memory_int| v_idx_92) v_v_101_1) (< v_idx_92 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_92)) (or (<= c_ULTIMATE.start_main_p4 v_idx_91) (= v_v_100_1 (select |c_#memory_int| v_idx_91))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_84)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_93 (+ c_ULTIMATE.start_main_p4 1)) (= v_v_102_1 (select |c_#memory_int| v_idx_93))) (or (= v_v_58_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_85)) (< v_idx_85 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_88) 1) (< v_idx_88 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_88)))))} [2019-01-18 14:52:10,781 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:10,900 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:10,900 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:19,103 WARN L181 SmtUtils]: Spent 8.20 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:19,103 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_80_1 Int) (v_v_2_1 Int) (v_v_82_1 Int) (v_v_4_1 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_63 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_58_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_63))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_66) (< v_idx_66 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_66))) (or (<= ULTIMATE.start_main_p6 v_idx_61) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_56_1)) (or (= (select |#valid| v_idx_67) v_v_64_1) (< v_idx_67 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |old(#valid)| v_idx_64)) (or (= v_v_82_1 (select |#memory_int| v_idx_71)) (< v_idx_71 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p6 v_idx_65) (= (select |#valid| v_idx_65) v_v_62_1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| v_idx_70))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_69) v_v_80_1) (<= ULTIMATE.start_main_p6 v_idx_69)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_62) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (< v_idx_62 ULTIMATE.start_main_p6))))) (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_56_1 Int) (v_v_58_1 Int) (v_v_85_1 Int) (v_v_62_1 Int) (v_v_84_1 Int) (v_v_64_1 Int) (v_v_83_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_4_1 (select |old(#memory_int)| v_idx_79)) (or (< v_idx_78 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_78) v_v_64_1)) (or (< v_idx_77 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_77) (= (select |#valid| v_idx_77) 1)) (or (= (select |#memory_int| v_idx_82) v_v_85_1) (< v_idx_82 (+ ULTIMATE.start_main_p4 1))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_76) v_v_62_1) (<= ULTIMATE.start_main_p6 v_idx_76)) (or (< v_idx_81 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_81) v_v_84_1) (<= (+ ULTIMATE.start_main_p4 1) v_idx_81)) (or (<= ULTIMATE.start_main_p4 v_idx_80) (= (select |#memory_int| v_idx_80) v_v_83_1)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_56_1) (<= ULTIMATE.start_main_p6 v_idx_72)) (= v_v_2_1 (select |old(#valid)| v_idx_75)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_58_1) (< v_idx_74 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_73) (< v_idx_73 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_73) 0))))))} [2019-01-18 14:52:19,104 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:19,104 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:19,158 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_84 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_84))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_88 Int)) (or (= (select |#valid| v_idx_88) 1) (< v_idx_88 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_88))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:52:23,103 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:23,103 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:23,104 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:23,104 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:23,105 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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_80_1 Int) (v_v_2_1 Int) (v_v_82_1 Int) (v_v_4_1 Int)) (and (or (< v_idx_100 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_1 (select |c_#valid| v_idx_100))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_101)) (or (< v_idx_96 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_58_1)) (or (< v_idx_104 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_104) v_v_82_1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_95)) (or (<= c_ULTIMATE.start_main_p6 v_idx_98) (= (select |c_#valid| v_idx_98) v_v_62_1)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_102) v_v_80_1) (<= c_ULTIMATE.start_main_p6 v_idx_102)) (= (select |c_old(#valid)| v_idx_97) v_v_2_1) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_99 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_99) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_99)) (or (<= c_ULTIMATE.start_main_p6 v_idx_94) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_56_1)) (or (= (select |c_#memory_int| v_idx_103) 0) (< v_idx_103 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_103))))) (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_56_1 Int) (v_v_58_1 Int) (v_v_85_1 Int) (v_v_62_1 Int) (v_v_84_1 Int) (v_v_64_1 Int) (v_v_2_1 Int) (v_v_83_1 Int) (v_v_4_1 Int)) (and (or (= v_v_64_1 (select |c_#valid| v_idx_111)) (< v_idx_111 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_110 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_110) (= 1 (select |c_#valid| v_idx_110))) (or (< v_idx_107 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_107))) (or (= (select |c_#memory_int| v_idx_114) v_v_84_1) (< v_idx_114 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_114)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_56_1) (<= c_ULTIMATE.start_main_p6 v_idx_105)) (= v_v_2_1 (select |c_old(#valid)| v_idx_108)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_115 (+ c_ULTIMATE.start_main_p4 1)) (= v_v_85_1 (select |c_#memory_int| v_idx_115))) (or (= v_v_62_1 (select |c_#valid| v_idx_109)) (<= c_ULTIMATE.start_main_p6 v_idx_109)) (or (= (select |c_#memory_int| v_idx_113) v_v_83_1) (<= c_ULTIMATE.start_main_p4 v_idx_113)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_112)) (or (< v_idx_106 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_106) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_106))))))} [2019-01-18 14:52:23,105 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:23,106 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:23,106 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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_146_1 Int) (v_v_145_1 Int) (v_v_144_1 Int)) (and (or (<= c_ULTIMATE.start_main_p1 v_idx_124) (= (select |c_#memory_int| v_idx_124) v_v_144_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_123)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_118) v_v_58_1) (< v_idx_118 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_145_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)) (or (= 1 (select |c_#valid| v_idx_121)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_121) (< v_idx_121 c_ULTIMATE.start_main_p6)) (= v_v_2_1 (select |c_old(#valid)| v_idx_119)) (<= (+ v_v_145_1 1) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_117) (< v_idx_117 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_117))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_116) v_v_56_1) (<= c_ULTIMATE.start_main_p6 v_idx_116)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_122 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_1 (select |c_#valid| v_idx_122))) (<= (- v_v_145_1 (- v_v_145_1)) (- 2)) (or (< v_idx_126 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_146_1 (select |c_#memory_int| v_idx_126))) (or (<= c_ULTIMATE.start_main_p6 v_idx_120) (= v_v_62_1 (select |c_#valid| v_idx_120))))))} [2019-01-18 14:52:23,106 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:23,717 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:23,718 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:31,939 WARN L181 SmtUtils]: Spent 8.22 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:31,940 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_56_1 Int) (v_v_58_1 Int) (v_v_62_1 Int) (v_v_64_1 Int) (v_v_80_1 Int) (v_v_2_1 Int) (v_v_82_1 Int) (v_v_4_1 Int)) (and (or (< v_idx_100 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_1 (select |#valid| v_idx_100))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_4_1 (select |old(#memory_int)| v_idx_101)) (or (< v_idx_96 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_58_1)) (or (< v_idx_104 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_104) v_v_82_1)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_95)) (or (<= ULTIMATE.start_main_p6 v_idx_98) (= (select |#valid| v_idx_98) v_v_62_1)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_102) v_v_80_1) (<= ULTIMATE.start_main_p6 v_idx_102)) (= (select |old(#valid)| v_idx_97) v_v_2_1) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_99 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_99) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_99)) (or (<= ULTIMATE.start_main_p6 v_idx_94) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_56_1)) (or (= (select |#memory_int| v_idx_103) 0) (< v_idx_103 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_103))))) (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_56_1 Int) (v_v_58_1 Int) (v_v_85_1 Int) (v_v_62_1 Int) (v_v_84_1 Int) (v_v_64_1 Int) (v_v_2_1 Int) (v_v_83_1 Int) (v_v_4_1 Int)) (and (or (= v_v_64_1 (select |#valid| v_idx_111)) (< v_idx_111 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_110 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_110) (= 1 (select |#valid| v_idx_110))) (or (< v_idx_107 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_58_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_107))) (or (= (select |#memory_int| v_idx_114) v_v_84_1) (< v_idx_114 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_114)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_56_1) (<= ULTIMATE.start_main_p6 v_idx_105)) (= v_v_2_1 (select |old(#valid)| v_idx_108)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_115 (+ ULTIMATE.start_main_p4 1)) (= v_v_85_1 (select |#memory_int| v_idx_115))) (or (= v_v_62_1 (select |#valid| v_idx_109)) (<= ULTIMATE.start_main_p6 v_idx_109)) (or (= (select |#memory_int| v_idx_113) v_v_83_1) (<= ULTIMATE.start_main_p4 v_idx_113)) (= v_v_4_1 (select |old(#memory_int)| v_idx_112)) (or (< v_idx_106 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_106) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_106))))))} [2019-01-18 14:52:31,940 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:31,940 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:32,150 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (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_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_117 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_117) (< v_idx_117 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_117)))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 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))) (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_p6))))} [2019-01-18 14:52:32,403 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:52:32,404 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:32,409 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:32,410 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:52:32,411 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:32,411 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:32,429 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:32,430 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:52:32,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:32,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:32,484 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:52:32,595 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,602 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 48 treesize of output 54 [2019-01-18 14:52:32,695 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,697 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,698 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 41 treesize of output 53 [2019-01-18 14:52:32,767 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,768 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,770 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,771 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,773 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 61 [2019-01-18 14:52:32,853 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,871 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,873 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,873 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,874 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,876 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:32,877 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 41 [2019-01-18 14:52:32,881 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:32,899 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:32,920 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:32,942 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:32,973 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 4 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 24 [2019-01-18 14:52:32,986 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 7 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 30 [2019-01-18 14:52:33,000 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 9 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 40 [2019-01-18 14:52:33,024 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 10 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 54 [2019-01-18 14:52:33,043 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 72 [2019-01-18 14:52:33,069 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 0 case distinctions, treesize of input 32 treesize of output 71 [2019-01-18 14:52:33,073 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,109 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,132 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,170 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,189 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,204 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,268 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 2 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:33,268 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 6 variables, input treesize:72, output treesize:71 [2019-01-18 14:52:33,321 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:33,321 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_32|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, |v_#valid_8|]. (let ((.cse0 (store |v_#valid_8| ULTIMATE.start_main_p1 1))) (let ((.cse2 (store .cse0 ULTIMATE.start_main_p2 1))) (let ((.cse1 (store .cse2 ULTIMATE.start_main_p3 1))) (and (= (store (store (store (store (store (store |v_#memory_int_32| 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) ULTIMATE.start_main_p6 0) |#memory_int|) (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= 0 (select (store .cse1 ULTIMATE.start_main_p4 1) ULTIMATE.start_main_p5)) (= 0 (select .cse1 ULTIMATE.start_main_p4)) (= (select .cse2 ULTIMATE.start_main_p3) 0))))) [2019-01-18 14:52:33,321 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (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_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)) (= (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:52:33,660 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:33,662 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 66 [2019-01-18 14:52:33,669 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:33,715 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:33,716 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:76, output treesize:50 [2019-01-18 14:52:35,726 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:35,727 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_33|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_33| ULTIMATE.start_main_p4))) (and (= 0 (select |v_#memory_int_33| ULTIMATE.start_main_p3)) (= (select |v_#memory_int_33| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_33| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 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)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_33| ULTIMATE.start_main_p2)) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_33| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|))) [2019-01-18 14:52:35,727 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (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)) (= (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:35,774 INFO L273 TraceCheckUtils]: 0: Hoare triple {118#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {125#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 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_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p5 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:35,778 INFO L273 TraceCheckUtils]: 1: Hoare triple {125#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 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_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p5 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]; {129#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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))))} is VALID [2019-01-18 14:52:35,781 INFO L273 TraceCheckUtils]: 2: Hoare triple {129#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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))))} assume !(#memory_int[main_p1] >= 0); {119#false} is VALID [2019-01-18 14:52:35,782 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:35,782 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:52:35,822 INFO L273 TraceCheckUtils]: 2: Hoare triple {133#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {119#false} is VALID [2019-01-18 14:52:35,824 INFO L273 TraceCheckUtils]: 1: Hoare triple {137#(<= 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]; {133#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:35,826 INFO L273 TraceCheckUtils]: 0: Hoare triple {118#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {137#(<= 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:35,827 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:35,849 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:52:35,849 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:52:35,849 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:52:35,850 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:35,850 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:35,850 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:52:35,872 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:35,872 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:52:35,873 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:52:35,873 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:52:35,873 INFO L87 Difference]: Start difference. First operand 14 states and 25 transitions. Second operand 6 states. [2019-01-18 14:52:36,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:36,778 INFO L93 Difference]: Finished difference Result 47 states and 68 transitions. [2019-01-18 14:52:36,778 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:52:36,778 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:36,779 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:36,779 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:36,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2019-01-18 14:52:36,782 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:36,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2019-01-18 14:52:36,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2019-01-18 14:52:36,922 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:36,925 INFO L225 Difference]: With dead ends: 47 [2019-01-18 14:52:36,925 INFO L226 Difference]: Without dead ends: 45 [2019-01-18 14:52:36,926 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:52:36,926 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2019-01-18 14:52:36,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 18. [2019-01-18 14:52:36,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:36,981 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand 18 states. [2019-01-18 14:52:36,981 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 18 states. [2019-01-18 14:52:36,982 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 18 states. [2019-01-18 14:52:36,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:36,986 INFO L93 Difference]: Finished difference Result 45 states and 65 transitions. [2019-01-18 14:52:36,986 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 65 transitions. [2019-01-18 14:52:36,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:36,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:36,987 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand 45 states. [2019-01-18 14:52:36,987 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 45 states. [2019-01-18 14:52:36,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:36,991 INFO L93 Difference]: Finished difference Result 45 states and 65 transitions. [2019-01-18 14:52:36,991 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 65 transitions. [2019-01-18 14:52:36,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:36,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:36,993 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:36,993 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:36,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2019-01-18 14:52:36,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 37 transitions. [2019-01-18 14:52:36,995 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 37 transitions. Word has length 3 [2019-01-18 14:52:36,995 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:36,995 INFO L480 AbstractCegarLoop]: Abstraction has 18 states and 37 transitions. [2019-01-18 14:52:36,995 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:52:36,995 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 37 transitions. [2019-01-18 14:52:36,996 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:36,996 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:36,996 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:36,996 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:36,997 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:36,997 INFO L82 PathProgramCache]: Analyzing trace with hash 30004, now seen corresponding path program 1 times [2019-01-18 14:52:36,997 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:36,998 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:36,998 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:36,998 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:36,998 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:37,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:37,073 INFO L273 TraceCheckUtils]: 0: Hoare triple {304#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {306#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:52:37,075 INFO L273 TraceCheckUtils]: 1: Hoare triple {306#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {307#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:37,076 INFO L273 TraceCheckUtils]: 2: Hoare triple {307#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {305#false} is VALID [2019-01-18 14:52:37,076 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:37,076 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:37,076 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:37,077 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:52:37,077 INFO L207 CegarAbsIntRunner]: [0], [6], [27] [2019-01-18 14:52:37,078 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:37,079 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:52:39,898 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:39,898 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:39,898 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:39,899 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:39,899 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_56_2 Int) (v_v_62_2 Int) (v_v_64_2 Int) (v_v_80_2 Int) (v_v_82_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_145) v_v_58_2) (< v_idx_145 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= v_v_62_2 (select |c_#valid| v_idx_147)) (<= c_ULTIMATE.start_main_p6 v_idx_147)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_148) (= 1 (select |c_#valid| v_idx_148)) (< v_idx_148 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_151) v_v_80_2) (<= c_ULTIMATE.start_main_p6 v_idx_151)) (= v_v_2_2 (select |c_old(#valid)| v_idx_146)) (or (< v_idx_144 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_144) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144))) (or (<= c_ULTIMATE.start_main_p6 v_idx_143) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) v_v_56_2)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_152) (= (select |c_#memory_int| v_idx_152) 0) (< v_idx_152 c_ULTIMATE.start_main_p6)) (or (= v_v_64_2 (select |c_#valid| v_idx_149)) (< v_idx_149 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_150)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_153) v_v_82_2) (< v_idx_153 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-18 14:52:39,899 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:39,899 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:39,900 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_56_2 Int) (v_v_84_2 Int) (v_v_83_2 Int) (v_v_62_2 Int) (v_v_85_2 Int) (v_v_64_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_#memory_int| v_idx_162) v_v_83_2) (<= c_ULTIMATE.start_main_p1 v_idx_162)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= 1 (select |c_#valid| v_idx_159)) (< v_idx_159 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_159)) (or (<= c_ULTIMATE.start_main_p6 v_idx_158) (= v_v_62_2 (select |c_#valid| v_idx_158))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_163) (= (select |c_#memory_int| v_idx_163) v_v_84_2) (< v_idx_163 c_ULTIMATE.start_main_p1)) (or (= (select |c_#memory_int| v_idx_164) v_v_85_2) (< v_idx_164 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_58_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_156)) (< v_idx_156 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_64_2 (select |c_#valid| v_idx_160)) (< v_idx_160 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_155 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_155)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_154) v_v_56_2) (<= c_ULTIMATE.start_main_p6 v_idx_154)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_161)) (= v_v_2_2 (select |c_old(#valid)| v_idx_157)))))} [2019-01-18 14:52:39,900 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:40,369 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:40,369 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:40,557 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (forall ((v_idx_152 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_152) (= (select |#memory_int| v_idx_152) 0) (< v_idx_152 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (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_p6))) (forall ((v_idx_144 Int)) (or (< v_idx_144 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_144) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_144)))))} [2019-01-18 14:52:40,557 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:40,557 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:40,583 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (forall ((v_idx_155 Int)) (or (< v_idx_155 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_155))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_159 Int)) (or (= 1 (select |#valid| v_idx_159)) (< v_idx_159 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_159))))} [2019-01-18 14:52:43,282 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:43,282 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:43,283 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:43,283 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:43,283 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_56_2 Int) (v_v_62_2 Int) (v_v_64_2 Int) (v_v_80_2 Int) (v_v_82_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_165) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) v_v_56_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_168)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_167 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_167))) (or (= v_v_64_2 (select |c_#valid| v_idx_171)) (< v_idx_171 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_170) (= 1 (select |c_#valid| v_idx_170)) (< v_idx_170 c_ULTIMATE.start_main_p6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_166) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (< v_idx_166 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_169) (= v_v_62_2 (select |c_#valid| v_idx_169))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_173) (= (select |c_#memory_int| v_idx_173) v_v_80_2)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_175) v_v_82_2) (< v_idx_175 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_174) 0) (< v_idx_174 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_174)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_172)))))} [2019-01-18 14:52:43,283 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:43,283 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:43,284 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_97_2 Int) (v_v_56_2 Int) (v_v_62_2 Int) (v_v_98_2 Int) (v_v_99_2 Int) (v_v_64_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_185) v_v_98_2)) (or (= v_v_56_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176)) (<= c_ULTIMATE.start_main_p6 v_idx_176)) (<= (+ v_v_98_2 1) 0) (or (= v_v_99_2 (select |c_#memory_int| v_idx_186)) (< v_idx_186 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_2_2 (select |c_old(#valid)| v_idx_179)) (<= (- v_v_98_2 (- v_v_98_2)) (- 2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_177) (< v_idx_177 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_178) v_v_58_2) (< v_idx_178 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |c_#valid| v_idx_181)) (< v_idx_181 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_181)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_183)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_62_2 (select |c_#valid| v_idx_180)) (<= c_ULTIMATE.start_main_p6 v_idx_180)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_182 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_2 (select |c_#valid| v_idx_182))) (or (= (select |c_#memory_int| v_idx_184) v_v_97_2) (<= c_ULTIMATE.start_main_p1 v_idx_184)))))} [2019-01-18 14:52:43,284 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:43,634 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:43,634 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:43,814 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (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_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_174 Int)) (or (= (select |#memory_int| v_idx_174) 0) (< v_idx_174 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_174))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_166 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_166) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (< v_idx_166 ULTIMATE.start_main_p6))))} [2019-01-18 14:52:43,815 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:43,815 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:43,858 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (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))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_177 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_177) (< v_idx_177 ULTIMATE.start_main_p6) (= (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_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_181 Int)) (or (= 1 (select |#valid| v_idx_181)) (< v_idx_181 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_181))))} [2019-01-18 14:52:47,165 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:47,166 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:47,166 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:47,166 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:47,167 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_56_2 Int) (v_v_62_2 Int) (v_v_64_2 Int) (v_v_80_2 Int) (v_v_82_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (= v_v_2_2 (select |c_old(#valid)| v_idx_190)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_197 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_197) v_v_82_2)) (or (= v_v_62_2 (select |c_#valid| v_idx_191)) (<= c_ULTIMATE.start_main_p6 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_p6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 c_ULTIMATE.start_main_p6) (= 0 (select |c_#memory_int| v_idx_196))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_188) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (< v_idx_188 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_189 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189))) (or (<= c_ULTIMATE.start_main_p6 v_idx_195) (= (select |c_#memory_int| v_idx_195) v_v_80_2)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_56_2) (<= c_ULTIMATE.start_main_p6 v_idx_187)) (or (< v_idx_193 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_2 (select |c_#valid| v_idx_193)))))) (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_56_2 Int) (v_v_84_2 Int) (v_v_62_2 Int) (v_v_83_2 Int) (v_v_85_2 Int) (v_v_64_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_198) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_56_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_58_2) (< v_idx_200 (+ 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_p6)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_207) (< v_idx_207 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_207) v_v_84_2)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_202) (= v_v_62_2 (select |c_#valid| v_idx_202))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_205)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_208 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_208) v_v_85_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_201)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_203) (= 1 (select |c_#valid| v_idx_203)) (< v_idx_203 c_ULTIMATE.start_main_p6)) (or (= v_v_64_2 (select |c_#valid| v_idx_204)) (< v_idx_204 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_206) v_v_83_2) (<= c_ULTIMATE.start_main_p1 v_idx_206))))))} [2019-01-18 14:52:47,167 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:47,167 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:47,167 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(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_56_2 Int) (v_v_101_2 Int) (v_v_100_2 Int) (v_v_102_2 Int) (v_v_62_2 Int) (v_v_64_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (< v_idx_214 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_214)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_214)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_210)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= v_v_100_2 (select |c_#memory_int| v_idx_217)) (<= c_ULTIMATE.start_main_p1 v_idx_217)) (or (<= c_ULTIMATE.start_main_p6 v_idx_209) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_56_2)) (or (= v_v_64_2 (select |c_#valid| v_idx_215)) (< v_idx_215 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_216)) (or (< v_idx_211 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_58_2)) (= (select |c_old(#valid)| v_idx_212) v_v_2_2) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_218) (< v_idx_218 c_ULTIMATE.start_main_p1) (= v_v_101_2 (select |c_#memory_int| v_idx_218))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_219 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_102_2 (select |c_#memory_int| v_idx_219))) (or (<= c_ULTIMATE.start_main_p6 v_idx_213) (= v_v_62_2 (select |c_#valid| v_idx_213))))))} [2019-01-18 14:52:47,167 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:47,186 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:47,186 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:55,297 WARN L181 SmtUtils]: Spent 8.11 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:55,297 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_56_2 Int) (v_v_62_2 Int) (v_v_64_2 Int) (v_v_80_2 Int) (v_v_82_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (= v_v_2_2 (select |old(#valid)| v_idx_190)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_197 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_197) v_v_82_2)) (or (= v_v_62_2 (select |#valid| v_idx_191)) (<= ULTIMATE.start_main_p6 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_p6)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| v_idx_196))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_188) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (< v_idx_188 ULTIMATE.start_main_p6)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_189 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_58_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_189))) (or (<= ULTIMATE.start_main_p6 v_idx_195) (= (select |#memory_int| v_idx_195) v_v_80_2)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_56_2) (<= ULTIMATE.start_main_p6 v_idx_187)) (or (< v_idx_193 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_2 (select |#valid| v_idx_193)))))) (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_56_2 Int) (v_v_84_2 Int) (v_v_62_2 Int) (v_v_83_2 Int) (v_v_85_2 Int) (v_v_64_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_4_2 Int)) (and (or (<= ULTIMATE.start_main_p6 v_idx_198) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_56_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_58_2) (< v_idx_200 (+ 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_p6)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_207) (< v_idx_207 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_207) v_v_84_2)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_202) (= v_v_62_2 (select |#valid| v_idx_202))) (= v_v_4_2 (select |old(#memory_int)| v_idx_205)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_208 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_208) v_v_85_2)) (= v_v_2_2 (select |old(#valid)| v_idx_201)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_203) (= 1 (select |#valid| v_idx_203)) (< v_idx_203 ULTIMATE.start_main_p6)) (or (= v_v_64_2 (select |#valid| v_idx_204)) (< v_idx_204 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_206) v_v_83_2) (<= ULTIMATE.start_main_p1 v_idx_206))))))} [2019-01-18 14:52:55,297 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:55,298 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:55,325 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(and (forall ((v_idx_214 Int)) (or (< v_idx_214 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_214)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_214))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_210 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_210))))} [2019-01-18 14:52:57,905 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:52:57,905 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:57,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:57,906 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:52:57,906 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:57,906 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:52:57,915 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:57,915 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:52:57,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:57,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:57,925 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:52:57,980 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 21 treesize of output 24 [2019-01-18 14:52:57,995 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 24 treesize of output 30 [2019-01-18 14:52:58,003 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,005 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,006 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 26 treesize of output 40 [2019-01-18 14:52:58,016 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,018 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,019 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,021 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 28 treesize of output 54 [2019-01-18 14:52:58,036 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,037 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,039 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,040 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,042 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 72 [2019-01-18 14:52:58,072 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 0 case distinctions, treesize of input 32 treesize of output 71 [2019-01-18 14:52:58,075 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,106 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,133 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,152 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,167 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,205 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,237 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,239 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 48 treesize of output 54 [2019-01-18 14:52:58,306 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,308 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,309 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 41 treesize of output 53 [2019-01-18 14:52:58,366 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,367 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,368 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,370 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,371 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 61 [2019-01-18 14:52:58,445 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,447 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,448 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,450 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,452 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,453 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,454 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 41 [2019-01-18 14:52:58,461 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,479 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,495 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,513 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,557 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:58,558 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 7 variables, input treesize:72, output treesize:71 [2019-01-18 14:52:58,678 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:58,679 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_35|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (let ((.cse2 (store .cse1 ULTIMATE.start_main_p3 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= 0 (select (store .cse2 ULTIMATE.start_main_p4 1) ULTIMATE.start_main_p5)) (= (select .cse2 ULTIMATE.start_main_p4) 0) (= (store (store (store (store (store (store |v_#memory_int_35| 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) ULTIMATE.start_main_p6 0) |#memory_int|))))) [2019-01-18 14:52:58,679 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (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_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)) (= (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:52:58,789 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:58,791 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-01-18 14:52:58,801 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:58,854 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:58,855 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:76, output treesize:50 [2019-01-18 14:52:58,890 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:58,890 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_36|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_36| ULTIMATE.start_main_p1))) (and (= (select |v_#memory_int_36| ULTIMATE.start_main_p3) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_36| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_36| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_36| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= |#memory_int| (store |v_#memory_int_36| ULTIMATE.start_main_p1 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-18 14:52:58,891 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:52:58,921 INFO L273 TraceCheckUtils]: 0: Hoare triple {304#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {311#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} is VALID [2019-01-18 14:52:58,926 INFO L273 TraceCheckUtils]: 1: Hoare triple {311#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {315#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 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_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:52:58,927 INFO L273 TraceCheckUtils]: 2: Hoare triple {315#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 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_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1))} assume !(#memory_int[main_p1] >= 0); {305#false} is VALID [2019-01-18 14:52:58,927 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:58,927 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:52:58,937 INFO L273 TraceCheckUtils]: 2: Hoare triple {307#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {305#false} is VALID [2019-01-18 14:52:58,938 INFO L273 TraceCheckUtils]: 1: Hoare triple {322#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {307#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:58,940 INFO L273 TraceCheckUtils]: 0: Hoare triple {304#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {322#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:52:58,941 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:52:58,961 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:52:58,961 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 14:52:58,961 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:52:58,961 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:52:58,962 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:58,962 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:52:58,965 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:52:58,966 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:52:58,966 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:52:58,966 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:52:58,967 INFO L87 Difference]: Start difference. First operand 18 states and 37 transitions. Second operand 4 states. [2019-01-18 14:52:59,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,120 INFO L93 Difference]: Finished difference Result 23 states and 60 transitions. [2019-01-18 14:52:59,120 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:52:59,120 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:52:59,121 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:59,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:52:59,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 34 transitions. [2019-01-18 14:52:59,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:52:59,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 34 transitions. [2019-01-18 14:52:59,124 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 34 transitions. [2019-01-18 14:52:59,184 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:59,186 INFO L225 Difference]: With dead ends: 23 [2019-01-18 14:52:59,186 INFO L226 Difference]: Without dead ends: 22 [2019-01-18 14:52:59,186 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:52:59,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2019-01-18 14:52:59,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 21. [2019-01-18 14:52:59,213 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:59,213 INFO L82 GeneralOperation]: Start isEquivalent. First operand 22 states. Second operand 21 states. [2019-01-18 14:52:59,213 INFO L74 IsIncluded]: Start isIncluded. First operand 22 states. Second operand 21 states. [2019-01-18 14:52:59,214 INFO L87 Difference]: Start difference. First operand 22 states. Second operand 21 states. [2019-01-18 14:52:59,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,216 INFO L93 Difference]: Finished difference Result 22 states and 59 transitions. [2019-01-18 14:52:59,217 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 59 transitions. [2019-01-18 14:52:59,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:59,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:59,217 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand 22 states. [2019-01-18 14:52:59,218 INFO L87 Difference]: Start difference. First operand 21 states. Second operand 22 states. [2019-01-18 14:52:59,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,220 INFO L93 Difference]: Finished difference Result 22 states and 59 transitions. [2019-01-18 14:52:59,220 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 59 transitions. [2019-01-18 14:52:59,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:59,221 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:59,221 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:59,221 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:59,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2019-01-18 14:52:59,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 59 transitions. [2019-01-18 14:52:59,223 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 59 transitions. Word has length 3 [2019-01-18 14:52:59,224 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:59,224 INFO L480 AbstractCegarLoop]: Abstraction has 21 states and 59 transitions. [2019-01-18 14:52:59,224 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:52:59,224 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 59 transitions. [2019-01-18 14:52:59,224 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:59,224 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:59,225 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:59,225 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:59,225 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:59,225 INFO L82 PathProgramCache]: Analyzing trace with hash 30562, now seen corresponding path program 1 times [2019-01-18 14:52:59,225 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:59,226 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:59,226 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:59,226 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:59,227 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:59,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:59,357 INFO L273 TraceCheckUtils]: 0: Hoare triple {425#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {427#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p6) 0))} is VALID [2019-01-18 14:52:59,358 INFO L273 TraceCheckUtils]: 1: Hoare triple {427#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p6) 0))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {428#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:52:59,359 INFO L273 TraceCheckUtils]: 2: Hoare triple {428#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {426#false} is VALID [2019-01-18 14:52:59,359 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:59,360 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:59,360 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:59,360 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:52:59,360 INFO L207 CegarAbsIntRunner]: [0], [24], [27] [2019-01-18 14:52:59,362 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:59,362 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:01,991 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:01,991 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:01,992 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:01,992 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:01,992 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(forall ((v_idx_269 Int) (v_idx_278 Int) (v_idx_279 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_274 Int) (v_idx_275 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_269) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_269) v_v_56_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_275 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_275))) (= (select |c_old(#valid)| v_idx_272) v_v_2_3) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_276)) (or (< v_idx_271 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_271))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_278) (= 0 (select |c_#memory_int| v_idx_278)) (< v_idx_278 c_ULTIMATE.start_main_p6)) (or (< v_idx_274 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_274)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_274)) (or (= (select |c_#memory_int| v_idx_279) v_v_82_3) (< v_idx_279 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_270)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_270) (< v_idx_270 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_62_3 (select |c_#valid| v_idx_273)) (<= c_ULTIMATE.start_main_p6 v_idx_273)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_277) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_277)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:01,992 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:01,992 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:53:01,993 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_285 Int) (v_idx_286 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_281) (< v_idx_281 c_ULTIMATE.start_main_p6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_284) (= v_v_62_3 (select |c_#valid| v_idx_284))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_287)) (= v_v_2_3 (select |c_old(#valid)| v_idx_283)) (or (= (select |c_#memory_int| v_idx_290) v_v_82_3) (< v_idx_290 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_288) (= (select |c_#memory_int| v_idx_288) v_v_80_3)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_285) (= 1 (select |c_#valid| v_idx_285)) (< v_idx_285 c_ULTIMATE.start_main_p6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_282) v_v_58_3) (< v_idx_282 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_280) (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_280))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= v_v_64_3 (select |c_#valid| v_idx_286)) (< v_idx_286 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_289 c_ULTIMATE.start_main_p6) (= (- 1) (select |c_#memory_int| v_idx_289)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_289)))))} [2019-01-18 14:53:01,993 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:02,424 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:02,424 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:02,635 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_274 Int)) (or (< v_idx_274 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_274)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_274))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_278 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_278) (= 0 (select |#memory_int| v_idx_278)) (< v_idx_278 ULTIMATE.start_main_p6))) (forall ((v_idx_270 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_270)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_270) (< v_idx_270 ULTIMATE.start_main_p6))))} [2019-01-18 14:53:02,636 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:02,636 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:53:02,669 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_281 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_281) (< v_idx_281 ULTIMATE.start_main_p6))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_289 Int)) (or (< v_idx_289 ULTIMATE.start_main_p6) (= (- 1) (select |#memory_int| v_idx_289)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_289))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_285 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_285) (= 1 (select |#valid| v_idx_285)) (< v_idx_285 ULTIMATE.start_main_p6))))} [2019-01-18 14:53:05,214 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:05,215 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:05,215 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:05,215 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:05,215 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(forall ((v_idx_300 Int) (v_idx_301 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_296 Int) (v_idx_297 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_291)) (<= c_ULTIMATE.start_main_p6 v_idx_291)) (or (= (select |c_#memory_int| v_idx_300) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_300) (< v_idx_300 c_ULTIMATE.start_main_p6)) (= (select |c_old(#valid)| v_idx_294) v_v_2_3) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= v_v_64_3 (select |c_#valid| v_idx_297)) (< v_idx_297 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_293) v_v_58_3) (< v_idx_293 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_299) (= (select |c_#memory_int| v_idx_299) v_v_80_3)) (or (= (select |c_#memory_int| v_idx_301) v_v_82_3) (< v_idx_301 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_292 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_292)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_295) (= v_v_62_3 (select |c_#valid| v_idx_295))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_296) (= 1 (select |c_#valid| v_idx_296)) (< v_idx_296 c_ULTIMATE.start_main_p6)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_298)))))} [2019-01-18 14:53:05,215 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:05,215 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:05,216 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_99_3 Int) (v_v_97_3 Int) (v_v_62_3 Int) (v_v_98_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_309)) (or (= (select |c_#memory_int| v_idx_310) v_v_97_3) (<= c_ULTIMATE.start_main_p1 v_idx_310)) (or (< v_idx_311 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_311) (= (select |c_#memory_int| v_idx_311) v_v_98_3)) (<= (- v_v_98_3 (- v_v_98_3)) (- 2)) (or (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_302)) (<= c_ULTIMATE.start_main_p6 v_idx_302)) (or (< v_idx_307 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_307)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_307)) (or (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_304)) (< v_idx_304 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_98_3 1) 0) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_305)) (or (< v_idx_308 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_308))) (or (= (select |c_#memory_int| v_idx_312) v_v_99_3) (< v_idx_312 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= v_v_62_3 (select |c_#valid| v_idx_306)) (<= c_ULTIMATE.start_main_p6 v_idx_306)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_303)) (< v_idx_303 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_303)))))} [2019-01-18 14:53:05,216 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:05,283 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:05,284 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:05,401 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(and (forall ((v_idx_292 Int)) (or (< v_idx_292 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_292))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_300 Int)) (or (= (select |#memory_int| v_idx_300) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_300) (< v_idx_300 ULTIMATE.start_main_p6))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_296 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_296) (= 1 (select |#valid| v_idx_296)) (< v_idx_296 ULTIMATE.start_main_p6))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:53:05,402 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:05,402 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:05,454 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (forall ((v_idx_303 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_303)) (< v_idx_303 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_303))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_311 Int)) (or (< v_idx_311 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_311) (<= (+ (select |#memory_int| v_idx_311) 1) 0))) (forall ((v_prenex_4 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_4)) 2) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_307 Int)) (or (< v_idx_307 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_307)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_307))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:53:09,064 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:09,065 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:09,065 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:09,065 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:09,065 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_332) (= (select |c_#memory_int| v_idx_332) v_v_80_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_324) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_324)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= v_v_62_3 (select |c_#valid| v_idx_328)) (<= c_ULTIMATE.start_main_p6 v_idx_328)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_329) (= 1 (select |c_#valid| v_idx_329)) (< v_idx_329 c_ULTIMATE.start_main_p6)) (or (= v_v_64_3 (select |c_#valid| v_idx_330)) (< v_idx_330 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_327)) (or (< v_idx_334 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_334) v_v_82_3)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_325) (< v_idx_325 c_ULTIMATE.start_main_p6)) (or (< v_idx_326 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_326) v_v_58_3)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_333 c_ULTIMATE.start_main_p6) (= (- 1) (select |c_#memory_int| v_idx_333)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_333)) (= (select |c_old(#memory_int)| v_idx_331) v_v_4_3)))) (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_313) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_313) v_v_56_3)) (or (< v_idx_315 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_315) v_v_58_3)) (or (< v_idx_323 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_323) v_v_82_3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_318) (= 1 (select |c_#valid| v_idx_318)) (< v_idx_318 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_321) (= (select |c_#memory_int| v_idx_321) v_v_80_3)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_319 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_319))) (or (< v_idx_322 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_322) (= 0 (select |c_#memory_int| v_idx_322))) (or (= v_v_62_3 (select |c_#valid| v_idx_317)) (<= c_ULTIMATE.start_main_p6 v_idx_317)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_314) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_314) 0) (< v_idx_314 c_ULTIMATE.start_main_p6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |c_old(#valid)| v_idx_316)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_320))))))} [2019-01-18 14:53:09,065 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:09,065 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:53:09,066 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(or (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_353)) (or (<= c_ULTIMATE.start_main_p6 v_idx_354) (= (select |c_#memory_int| v_idx_354) v_v_80_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_350) (= v_v_62_3 (select |c_#valid| v_idx_350))) (or (< v_idx_347 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_347) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_347)) (or (= v_v_82_3 (select |c_#memory_int| v_idx_356)) (< v_idx_356 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_355) (= (- 2) (select |c_#memory_int| v_idx_355)) (< v_idx_355 c_ULTIMATE.start_main_p6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_346)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |c_old(#valid)| v_idx_349)) (or (< v_idx_352 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_352))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_58_3) (< v_idx_348 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_351 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_351) (= 1 (select |c_#valid| v_idx_351)))))) (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= 1 (select |c_#valid| v_idx_340)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_340) (< v_idx_340 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_335) (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_335))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_2_3 (select |c_old(#valid)| v_idx_338)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_342)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_344) (< v_idx_344 c_ULTIMATE.start_main_p6) (= (- 1) (select |c_#memory_int| v_idx_344))) (or (= v_v_64_3 (select |c_#valid| v_idx_341)) (< v_idx_341 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (< v_idx_336 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_336)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_343) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_343)) (or (= v_v_62_3 (select |c_#valid| v_idx_339)) (<= c_ULTIMATE.start_main_p6 v_idx_339)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_337) v_v_58_3) (< v_idx_337 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_345) v_v_82_3) (< v_idx_345 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:53:09,066 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:09,513 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:09,513 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:17,635 WARN L181 SmtUtils]: Spent 8.12 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:53:17,635 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (<= ULTIMATE.start_main_p6 v_idx_332) (= (select |#memory_int| v_idx_332) v_v_80_3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_324) v_v_56_3) (<= ULTIMATE.start_main_p6 v_idx_324)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= v_v_62_3 (select |#valid| v_idx_328)) (<= ULTIMATE.start_main_p6 v_idx_328)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_329) (= 1 (select |#valid| v_idx_329)) (< v_idx_329 ULTIMATE.start_main_p6)) (or (= v_v_64_3 (select |#valid| v_idx_330)) (< v_idx_330 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |old(#valid)| v_idx_327)) (or (< v_idx_334 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_334) v_v_82_3)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_325) (< v_idx_325 ULTIMATE.start_main_p6)) (or (< v_idx_326 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_326) v_v_58_3)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_333 ULTIMATE.start_main_p6) (= (- 1) (select |#memory_int| v_idx_333)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_333)) (= (select |old(#memory_int)| v_idx_331) v_v_4_3)))) (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= ULTIMATE.start_main_p6 v_idx_313) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_313) v_v_56_3)) (or (< v_idx_315 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_315) v_v_58_3)) (or (< v_idx_323 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_323) v_v_82_3)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_318) (= 1 (select |#valid| v_idx_318)) (< v_idx_318 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p6 v_idx_321) (= (select |#memory_int| v_idx_321) v_v_80_3)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_319 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_319))) (or (< v_idx_322 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_322) (= 0 (select |#memory_int| v_idx_322))) (or (= v_v_62_3 (select |#valid| v_idx_317)) (<= ULTIMATE.start_main_p6 v_idx_317)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_314) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_314) 0) (< v_idx_314 ULTIMATE.start_main_p6)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |old(#valid)| v_idx_316)) (= v_v_4_3 (select |old(#memory_int)| v_idx_320))))))} [2019-01-18 14:53:17,635 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:17,635 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:53:25,767 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 143 [2019-01-18 14:53:25,768 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(or (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_4_3 (select |old(#memory_int)| v_idx_353)) (or (<= ULTIMATE.start_main_p6 v_idx_354) (= (select |#memory_int| v_idx_354) v_v_80_3)) (or (<= ULTIMATE.start_main_p6 v_idx_350) (= v_v_62_3 (select |#valid| v_idx_350))) (or (< v_idx_347 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_347) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_347)) (or (= v_v_82_3 (select |#memory_int| v_idx_356)) (< v_idx_356 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_355) (= (- 2) (select |#memory_int| v_idx_355)) (< v_idx_355 ULTIMATE.start_main_p6)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_56_3) (<= ULTIMATE.start_main_p6 v_idx_346)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |old(#valid)| v_idx_349)) (or (< v_idx_352 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_352))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_58_3) (< v_idx_348 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_351 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_351) (= 1 (select |#valid| v_idx_351)))))) (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= 1 (select |#valid| v_idx_340)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_340) (< v_idx_340 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p6 v_idx_335) (= v_v_56_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_335))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_2_3 (select |old(#valid)| v_idx_338)) (= v_v_4_3 (select |old(#memory_int)| v_idx_342)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_344) (< v_idx_344 ULTIMATE.start_main_p6) (= (- 1) (select |#memory_int| v_idx_344))) (or (= v_v_64_3 (select |#valid| v_idx_341)) (< v_idx_341 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (< v_idx_336 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_336)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_343) v_v_80_3) (<= ULTIMATE.start_main_p6 v_idx_343)) (or (= v_v_62_3 (select |#valid| v_idx_339)) (<= ULTIMATE.start_main_p6 v_idx_339)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_337) v_v_58_3) (< v_idx_337 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_345) v_v_82_3) (< v_idx_345 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:53:38,726 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:38,726 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:38,727 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:38,727 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:38,727 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= (select |c_old(#valid)| v_idx_371) v_v_2_3) (or (= 1 (select |c_#valid| v_idx_373)) (< v_idx_373 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_373)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_377) (= (- 1) (select |c_#memory_int| v_idx_377)) (< v_idx_377 c_ULTIMATE.start_main_p6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_369) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_369)) (< v_idx_369 c_ULTIMATE.start_main_p6)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_375)) (or (< v_idx_378 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_378) v_v_82_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_368) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_368) v_v_56_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_372) (= v_v_62_3 (select |c_#valid| v_idx_372))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_370)) (< v_idx_370 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_376) (= (select |c_#memory_int| v_idx_376) v_v_80_3)) (or (= v_v_64_3 (select |c_#valid| v_idx_374)) (< v_idx_374 (+ c_ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_366 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_366) (= 0 (select |c_#memory_int| v_idx_366))) (or (<= c_ULTIMATE.start_main_p6 v_idx_365) (= (select |c_#memory_int| v_idx_365) v_v_80_3)) (or (< v_idx_359 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_359))) (or (< v_idx_363 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_363))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_358)) (< v_idx_358 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_358)) (or (<= c_ULTIMATE.start_main_p6 v_idx_357) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_357) v_v_56_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_361) (= v_v_62_3 (select |c_#valid| v_idx_361))) (= (select |c_old(#valid)| v_idx_360) v_v_2_3) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_362)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_362) (< v_idx_362 c_ULTIMATE.start_main_p6)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_364)) (or (= (select |c_#memory_int| v_idx_367) v_v_82_3) (< v_idx_367 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:53:38,727 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:38,728 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:38,728 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_379 Int) (v_idx_388 Int) (v_idx_389 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_384 Int) (v_idx_385 Int)) (exists ((v_v_64_3 Int) (v_v_414_1 Int) (v_v_56_3 Int) (v_v_62_3 Int) (v_v_415_1 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_416_1 Int) (v_v_4_3 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_388) (< v_idx_388 c_ULTIMATE.start_main_p1) (= v_v_415_1 (select |c_#memory_int| v_idx_388))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_380 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_380) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_380))) (or (<= c_ULTIMATE.start_main_p1 v_idx_387) (= v_v_414_1 (select |c_#memory_int| v_idx_387))) (<= (+ v_v_415_1 1) 0) (= (select |c_old(#valid)| v_idx_382) v_v_2_3) (or (= v_v_64_3 (select |c_#valid| v_idx_385)) (< v_idx_385 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |c_#valid| v_idx_384)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_384) (< v_idx_384 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_379) (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_379))) (<= (- v_v_415_1 (- v_v_415_1)) (- 2)) (or (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_381)) (< v_idx_381 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_389 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_416_1 (select |c_#memory_int| v_idx_389))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_386)) (or (= v_v_62_3 (select |c_#valid| v_idx_383)) (<= c_ULTIMATE.start_main_p6 v_idx_383)))))} [2019-01-18 14:53:38,728 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:38,730 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:38,730 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:46,874 WARN L181 SmtUtils]: Spent 8.14 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:53:46,874 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= (select |old(#valid)| v_idx_371) v_v_2_3) (or (= 1 (select |#valid| v_idx_373)) (< v_idx_373 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_373)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_377) (= (- 1) (select |#memory_int| v_idx_377)) (< v_idx_377 ULTIMATE.start_main_p6)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_369) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_369)) (< v_idx_369 ULTIMATE.start_main_p6)) (= v_v_4_3 (select |old(#memory_int)| v_idx_375)) (or (< v_idx_378 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_378) v_v_82_3)) (or (<= ULTIMATE.start_main_p6 v_idx_368) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_368) v_v_56_3)) (or (<= ULTIMATE.start_main_p6 v_idx_372) (= v_v_62_3 (select |#valid| v_idx_372))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_58_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_370)) (< v_idx_370 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p6 v_idx_376) (= (select |#memory_int| v_idx_376) v_v_80_3)) (or (= v_v_64_3 (select |#valid| v_idx_374)) (< v_idx_374 (+ ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_366 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_366) (= 0 (select |#memory_int| v_idx_366))) (or (<= ULTIMATE.start_main_p6 v_idx_365) (= (select |#memory_int| v_idx_365) v_v_80_3)) (or (< v_idx_359 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_58_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_359))) (or (< v_idx_363 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_363))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_358)) (< v_idx_358 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_358)) (or (<= ULTIMATE.start_main_p6 v_idx_357) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_357) v_v_56_3)) (or (<= ULTIMATE.start_main_p6 v_idx_361) (= v_v_62_3 (select |#valid| v_idx_361))) (= (select |old(#valid)| v_idx_360) v_v_2_3) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= 1 (select |#valid| v_idx_362)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_362) (< v_idx_362 ULTIMATE.start_main_p6)) (= v_v_4_3 (select |old(#memory_int)| v_idx_364)) (or (= (select |#memory_int| v_idx_367) v_v_82_3) (< v_idx_367 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:53:46,874 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:46,874 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:47,043 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (forall ((v_prenex_5 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_5)) 2) 0) (< v_prenex_5 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_5))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_388 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_388) (< v_idx_388 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_388) 1) 0))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_384 Int)) (or (= 1 (select |#valid| v_idx_384)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_384) (< v_idx_384 ULTIMATE.start_main_p6))) (forall ((v_idx_380 Int)) (or (< v_idx_380 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_380) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_380)))))} [2019-01-18 14:53:50,326 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:50,326 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:50,326 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:50,326 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:50,327 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_399 Int) (v_idx_400 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_395 Int) (v_idx_396 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_399 c_ULTIMATE.start_main_p6) (= (- 2) (select |c_#memory_int| v_idx_399)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_399)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_390) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_390)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_400) v_v_82_3) (< v_idx_400 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_392 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_392) v_v_58_3)) (or (< v_idx_396 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_396))) (or (= (select |c_#memory_int| v_idx_398) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_398)) (= (select |c_old(#valid)| v_idx_393) v_v_2_3) (or (= v_v_62_3 (select |c_#valid| v_idx_394)) (<= c_ULTIMATE.start_main_p6 v_idx_394)) (or (< v_idx_395 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_395) (= 1 (select |c_#valid| v_idx_395))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_391) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_391) (< v_idx_391 c_ULTIMATE.start_main_p6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_397))))) (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_411_1 Int) (v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_406) (< v_idx_406 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_406))) (or (= v_v_409_1 (select |c_#valid| v_idx_407)) (< v_idx_407 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_405) (= v_v_407_1 (select |c_#valid| v_idx_405))) (<= (- v_v_411_1 (- v_v_411_1)) 0) (<= 0 (+ v_v_411_1 1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_408) (= (select |c_#memory_int| v_idx_408) v_v_410_1)) (or (< v_idx_410 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_412_1 (select |c_#memory_int| v_idx_410))) (or (= v_v_403_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_401)) (<= c_ULTIMATE.start_main_p6 v_idx_401)) (<= v_v_411_1 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_402) (< v_idx_402 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_402))) (= (select |c_old(#valid)| v_idx_404) v_v_406_1) (or (< v_idx_409 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_409) (= v_v_411_1 (select |c_#memory_int| v_idx_409))) (<= (- (- v_v_411_1) v_v_411_1) 2) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_413_1 (select |c_old(#memory_int)| v_idx_411)) (or (< v_idx_403 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_405_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_403)))))))} [2019-01-18 14:53:50,327 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:50,327 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:53:50,327 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(or (forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_457_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (<= 0 (+ v_v_457_1 2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (<= (+ v_v_457_1 1) 0) (or (= v_v_407_1 (select |c_#valid| v_idx_427)) (<= c_ULTIMATE.start_main_p6 v_idx_427)) (or (<= c_ULTIMATE.start_main_p6 v_idx_431) (= (select |c_#memory_int| v_idx_431) v_v_410_1)) (= v_v_413_1 (select |c_old(#memory_int)| v_idx_430)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_425) v_v_405_1) (< v_idx_425 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_457_1 (- v_v_457_1)) (- 2)) (or (<= c_ULTIMATE.start_main_p6 v_idx_423) (= v_v_403_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_423))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_429) v_v_409_1) (< v_idx_429 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_433 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_433) v_v_412_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_428) (< v_idx_428 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_428))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (- (- v_v_457_1) v_v_457_1) 4) (or (< v_idx_432 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_432) (= (select |c_#memory_int| v_idx_432) v_v_457_1)) (or (< v_idx_424 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_424) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_424) 0)) (= v_v_406_1 (select |c_old(#valid)| v_idx_426))))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_#valid| v_idx_416) v_v_62_3) (<= c_ULTIMATE.start_main_p6 v_idx_416)) (or (= (select |c_#memory_int| v_idx_421) (- 3)) (< v_idx_421 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_421)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_2_3 (select |c_old(#valid)| v_idx_415)) (or (<= c_ULTIMATE.start_main_p6 v_idx_412) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_412) v_v_56_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_419)) (or (<= c_ULTIMATE.start_main_p6 v_idx_420) (= (select |c_#memory_int| v_idx_420) v_v_80_3)) (or (= (select |c_#valid| v_idx_417) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_417) (< v_idx_417 c_ULTIMATE.start_main_p6)) (or (< v_idx_413 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_413)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_413)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_418 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_418))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_422) v_v_82_3) (< v_idx_422 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_414) v_v_58_3) (< v_idx_414 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:53:50,327 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:50,799 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:50,799 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:58,888 WARN L181 SmtUtils]: Spent 8.09 s on a formula simplification that was a NOOP. DAG size: 160 [2019-01-18 14:53:58,888 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_399 Int) (v_idx_400 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_395 Int) (v_idx_396 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_399 ULTIMATE.start_main_p6) (= (- 2) (select |#memory_int| v_idx_399)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_399)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_390) v_v_56_3) (<= ULTIMATE.start_main_p6 v_idx_390)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |#memory_int| v_idx_400) v_v_82_3) (< v_idx_400 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_392 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_392) v_v_58_3)) (or (< v_idx_396 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_396))) (or (= (select |#memory_int| v_idx_398) v_v_80_3) (<= ULTIMATE.start_main_p6 v_idx_398)) (= (select |old(#valid)| v_idx_393) v_v_2_3) (or (= v_v_62_3 (select |#valid| v_idx_394)) (<= ULTIMATE.start_main_p6 v_idx_394)) (or (< v_idx_395 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_395) (= 1 (select |#valid| v_idx_395))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_391) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_391) (< v_idx_391 ULTIMATE.start_main_p6)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |old(#memory_int)| v_idx_397))))) (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_411_1 Int) (v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_406) (< v_idx_406 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_406))) (or (= v_v_409_1 (select |#valid| v_idx_407)) (< v_idx_407 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= ULTIMATE.start_main_p6 v_idx_405) (= v_v_407_1 (select |#valid| v_idx_405))) (<= (- v_v_411_1 (- v_v_411_1)) 0) (<= 0 (+ v_v_411_1 1)) (or (<= ULTIMATE.start_main_p6 v_idx_408) (= (select |#memory_int| v_idx_408) v_v_410_1)) (or (< v_idx_410 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_412_1 (select |#memory_int| v_idx_410))) (or (= v_v_403_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_401)) (<= ULTIMATE.start_main_p6 v_idx_401)) (<= v_v_411_1 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_402) (< v_idx_402 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_402))) (= (select |old(#valid)| v_idx_404) v_v_406_1) (or (< v_idx_409 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_409) (= v_v_411_1 (select |#memory_int| v_idx_409))) (<= (- (- v_v_411_1) v_v_411_1) 2) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (= v_v_413_1 (select |old(#memory_int)| v_idx_411)) (or (< v_idx_403 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_405_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_403)))))))} [2019-01-18 14:53:58,888 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:53:58,888 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:06,946 WARN L181 SmtUtils]: Spent 8.06 s on a formula simplification that was a NOOP. DAG size: 163 [2019-01-18 14:54:06,947 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(or (forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_457_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (<= 0 (+ v_v_457_1 2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (+ v_v_457_1 1) 0) (or (= v_v_407_1 (select |#valid| v_idx_427)) (<= ULTIMATE.start_main_p6 v_idx_427)) (or (<= ULTIMATE.start_main_p6 v_idx_431) (= (select |#memory_int| v_idx_431) v_v_410_1)) (= v_v_413_1 (select |old(#memory_int)| v_idx_430)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_425) v_v_405_1) (< v_idx_425 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_457_1 (- v_v_457_1)) (- 2)) (or (<= ULTIMATE.start_main_p6 v_idx_423) (= v_v_403_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_423))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_429) v_v_409_1) (< v_idx_429 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_433 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_433) v_v_412_1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_428) (< v_idx_428 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_428))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (<= (- (- v_v_457_1) v_v_457_1) 4) (or (< v_idx_432 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_432) (= (select |#memory_int| v_idx_432) v_v_457_1)) (or (< v_idx_424 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_424) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_424) 0)) (= v_v_406_1 (select |old(#valid)| v_idx_426))))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= (select |#valid| v_idx_416) v_v_62_3) (<= ULTIMATE.start_main_p6 v_idx_416)) (or (= (select |#memory_int| v_idx_421) (- 3)) (< v_idx_421 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_421)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_2_3 (select |old(#valid)| v_idx_415)) (or (<= ULTIMATE.start_main_p6 v_idx_412) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_412) v_v_56_3)) (= v_v_4_3 (select |old(#memory_int)| v_idx_419)) (or (<= ULTIMATE.start_main_p6 v_idx_420) (= (select |#memory_int| v_idx_420) v_v_80_3)) (or (= (select |#valid| v_idx_417) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_417) (< v_idx_417 ULTIMATE.start_main_p6)) (or (< v_idx_413 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_413)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_413)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_418 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_418))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_422) v_v_82_3) (< v_idx_422 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_414) v_v_58_3) (< v_idx_414 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-18 14:54:19,427 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:19,427 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:19,428 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:19,428 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:19,428 WARN L224 ngHoareTripleChecker]: Pre: {2147483615#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_450 Int) (v_idx_451 Int)) (exists ((v_v_411_1 Int) (v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (or (= (select |c_#valid| v_idx_450) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_450) (< v_idx_450 c_ULTIMATE.start_main_p6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (<= (- v_v_411_1 (- v_v_411_1)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_445) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_445) v_v_403_1)) (<= 0 (+ v_v_411_1 1)) (or (< v_idx_447 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_405_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_447))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_453) (< v_idx_453 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_453) v_v_411_1)) (or (< v_idx_446 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_446) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_446) 0)) (<= v_v_411_1 0) (= (select |c_old(#memory_int)| v_idx_455) v_v_413_1) (= v_v_406_1 (select |c_old(#valid)| v_idx_448)) (<= (- (- v_v_411_1) v_v_411_1) 2) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_454 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_454) v_v_412_1)) (or (= (select |c_#memory_int| v_idx_452) v_v_410_1) (<= c_ULTIMATE.start_main_p6 v_idx_452)) (or (< v_idx_451 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_409_1 (select |c_#valid| v_idx_451))) (or (= (select |c_#valid| v_idx_449) v_v_407_1) (<= c_ULTIMATE.start_main_p6 v_idx_449))))) (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_#memory_int| v_idx_442) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_442)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_441)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_439) (< v_idx_439 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_439))) (or (= (select |c_#memory_int| v_idx_444) v_v_82_3) (< v_idx_444 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_437) v_v_2_3) (or (< v_idx_435 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_435) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_435) 0)) (or (< v_idx_436 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_436) v_v_58_3)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_443 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_443) (= (select |c_#memory_int| v_idx_443) (- 2))) (or (<= c_ULTIMATE.start_main_p6 v_idx_434) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_434) v_v_56_3)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_440) v_v_64_3) (< v_idx_440 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_438) v_v_62_3) (<= c_ULTIMATE.start_main_p6 v_idx_438))))))} [2019-01-18 14:54:19,428 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:19,428 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:19,428 WARN L230 ngHoareTripleChecker]: Post: {2147483614#(forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_465 Int) (v_idx_466 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_463 Int) (v_idx_464 Int) (v_idx_461 Int) (v_idx_462 Int)) (exists ((v_v_64_3 Int) (v_v_789_1 Int) (v_v_56_3 Int) (v_v_62_3 Int) (v_v_790_1 Int) (v_v_791_1 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= (- v_v_790_1 (- v_v_790_1)) (- 2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_458 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_458) v_v_58_3)) (or (< v_idx_462 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_462) v_v_64_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_456) (= v_v_56_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_456))) (or (= (select |c_#valid| v_idx_461) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_461) (< v_idx_461 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_464) v_v_789_1) (<= c_ULTIMATE.start_main_p1 v_idx_464)) (= (select |c_old(#valid)| v_idx_459) v_v_2_3) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_465) (= (select |c_#memory_int| v_idx_465) v_v_790_1) (< v_idx_465 c_ULTIMATE.start_main_p1)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_463)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_466) v_v_791_1) (< v_idx_466 (+ c_ULTIMATE.start_main_p1 1))) (<= (+ v_v_790_1 1) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_457) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_457) 0) (< v_idx_457 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_460) (= (select |c_#valid| v_idx_460) v_v_62_3)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:54:19,429 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:20,145 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:20,145 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:28,219 WARN L181 SmtUtils]: Spent 8.07 s on a formula simplification that was a NOOP. DAG size: 160 [2019-01-18 14:54:28,219 WARN L270 ngHoareTripleChecker]: Pre: {2147483615#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_450 Int) (v_idx_451 Int)) (exists ((v_v_411_1 Int) (v_v_403_1 Int) (v_v_412_1 Int) (v_v_413_1 Int) (v_v_410_1 Int) (v_v_409_1 Int) (v_v_407_1 Int) (v_v_406_1 Int) (v_v_405_1 Int)) (and (or (= (select |#valid| v_idx_450) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_450) (< v_idx_450 ULTIMATE.start_main_p6)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- v_v_411_1 (- v_v_411_1)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_445) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_445) v_v_403_1)) (<= 0 (+ v_v_411_1 1)) (or (< v_idx_447 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_405_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_447))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_453) (< v_idx_453 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_453) v_v_411_1)) (or (< v_idx_446 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_446) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_446) 0)) (<= v_v_411_1 0) (= (select |old(#memory_int)| v_idx_455) v_v_413_1) (= v_v_406_1 (select |old(#valid)| v_idx_448)) (<= (- (- v_v_411_1) v_v_411_1) 2) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_454 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_454) v_v_412_1)) (or (= (select |#memory_int| v_idx_452) v_v_410_1) (<= ULTIMATE.start_main_p6 v_idx_452)) (or (< v_idx_451 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_409_1 (select |#valid| v_idx_451))) (or (= (select |#valid| v_idx_449) v_v_407_1) (<= ULTIMATE.start_main_p6 v_idx_449))))) (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (or (= (select |#memory_int| v_idx_442) v_v_80_3) (<= ULTIMATE.start_main_p6 v_idx_442)) (= v_v_4_3 (select |old(#memory_int)| v_idx_441)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_439) (< v_idx_439 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_439))) (or (= (select |#memory_int| v_idx_444) v_v_82_3) (< v_idx_444 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_437) v_v_2_3) (or (< v_idx_435 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_435) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_435) 0)) (or (< v_idx_436 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_436) v_v_58_3)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_443 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_443) (= (select |#memory_int| v_idx_443) (- 2))) (or (<= ULTIMATE.start_main_p6 v_idx_434) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_434) v_v_56_3)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_440) v_v_64_3) (< v_idx_440 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#valid| v_idx_438) v_v_62_3) (<= ULTIMATE.start_main_p6 v_idx_438))))))} [2019-01-18 14:54:28,219 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:28,219 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:28,425 WARN L276 ngHoareTripleChecker]: Post: {2147483614#(and (forall ((v_idx_465 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_465) (<= (+ (* 2 (select |#memory_int| v_idx_465)) 2) 0) (< v_idx_465 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_457 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_457) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_457) 0) (< v_idx_457 ULTIMATE.start_main_p6))) (forall ((v_prenex_6 Int)) (or (<= (+ (select |#memory_int| v_prenex_6) 1) 0) (< v_prenex_6 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_6))) (forall ((v_idx_461 Int)) (or (= (select |#valid| v_idx_461) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_461) (< v_idx_461 ULTIMATE.start_main_p6))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:54:31,561 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:31,562 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:31,562 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:31,562 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:31,562 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(or (forall ((v_idx_467 Int) (v_idx_468 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_469 Int) (v_idx_470 Int) (v_idx_471 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_472 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_472) (= 1 (select |c_#valid| v_idx_472))) (or (= (select |c_#memory_int| v_idx_477) v_v_82_3) (< v_idx_477 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_468) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_468)) (< v_idx_468 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_467) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_467) v_v_56_3)) (or (<= c_ULTIMATE.start_main_p6 v_idx_471) (= v_v_62_3 (select |c_#valid| v_idx_471))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_476) (< v_idx_476 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_476) (- 2))) (or (= (select |c_#memory_int| v_idx_475) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_475)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_469) v_v_58_3) (< v_idx_469 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_474)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_473 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_473))) (= (select |c_old(#valid)| v_idx_470) v_v_2_3)))) (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_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_788_1 Int) (v_v_787_1 Int)) (and (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_p6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= (select |c_old(#valid)| v_idx_481) v_v_781_1) (= v_v_788_1 (select |c_old(#memory_int)| v_idx_488)) (or (<= c_ULTIMATE.start_main_p6 v_idx_478) (= v_v_778_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_478))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_483) (< v_idx_483 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_483))) (or (< v_idx_487 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_787_1 (select |c_#memory_int| v_idx_487))) (or (= v_v_782_1 (select |c_#valid| v_idx_482)) (<= c_ULTIMATE.start_main_p6 v_idx_482)) (<= (- v_v_786_1 (- v_v_786_1)) 0) (or (= v_v_786_1 (select |c_#memory_int| v_idx_486)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_486) (< v_idx_486 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_485) (= v_v_785_1 (select |c_#memory_int| v_idx_485))) (or (< v_idx_484 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_784_1 (select |c_#valid| v_idx_484))) (<= (- (- v_v_786_1) v_v_786_1) 6) (<= v_v_786_1 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 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_780_1)) (<= 0 (+ v_v_786_1 3))))))} [2019-01-18 14:54:31,562 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:31,562 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:31,563 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_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_832_1 Int) (v_v_784_1 Int) (v_v_785_1 Int) (v_v_788_1 Int) (v_v_787_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (<= 0 (+ v_v_832_1 4)) (or (= v_v_784_1 (select |c_#valid| v_idx_495)) (< v_idx_495 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_491 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_780_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_491))) (<= (- v_v_832_1 (- v_v_832_1)) (- 2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_494) (= 1 (select |c_#valid| v_idx_494)) (< v_idx_494 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_493) (= v_v_782_1 (select |c_#valid| v_idx_493))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_489) v_v_778_1) (<= c_ULTIMATE.start_main_p6 v_idx_489)) (= v_v_788_1 (select |c_old(#memory_int)| v_idx_496)) (or (< v_idx_498 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_498) v_v_832_1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_498)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_490)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_490) (< v_idx_490 c_ULTIMATE.start_main_p6)) (= v_v_781_1 (select |c_old(#valid)| v_idx_492)) (or (<= c_ULTIMATE.start_main_p6 v_idx_497) (= (select |c_#memory_int| v_idx_497) v_v_785_1)) (or (< v_idx_499 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_499) v_v_787_1)) (<= (+ v_v_832_1 1) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (- (- v_v_832_1) v_v_832_1) 8))))} [2019-01-18 14:54:31,563 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:32,063 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:32,063 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:40,187 WARN L181 SmtUtils]: Spent 8.12 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:54:40,187 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(or (forall ((v_idx_467 Int) (v_idx_468 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_469 Int) (v_idx_470 Int) (v_idx_471 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_472 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_472) (= 1 (select |#valid| v_idx_472))) (or (= (select |#memory_int| v_idx_477) v_v_82_3) (< v_idx_477 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_468) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_468)) (< v_idx_468 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p6 v_idx_467) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_467) v_v_56_3)) (or (<= ULTIMATE.start_main_p6 v_idx_471) (= v_v_62_3 (select |#valid| v_idx_471))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_476) (< v_idx_476 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_476) (- 2))) (or (= (select |#memory_int| v_idx_475) v_v_80_3) (<= ULTIMATE.start_main_p6 v_idx_475)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_469) v_v_58_3) (< v_idx_469 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_3 (select |old(#memory_int)| v_idx_474)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_473 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_473))) (= (select |old(#valid)| v_idx_470) v_v_2_3)))) (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_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_788_1 Int) (v_v_787_1 Int)) (and (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_p6)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= (select |old(#valid)| v_idx_481) v_v_781_1) (= v_v_788_1 (select |old(#memory_int)| v_idx_488)) (or (<= ULTIMATE.start_main_p6 v_idx_478) (= v_v_778_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_478))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_483) (< v_idx_483 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_483))) (or (< v_idx_487 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_787_1 (select |#memory_int| v_idx_487))) (or (= v_v_782_1 (select |#valid| v_idx_482)) (<= ULTIMATE.start_main_p6 v_idx_482)) (<= (- v_v_786_1 (- v_v_786_1)) 0) (or (= v_v_786_1 (select |#memory_int| v_idx_486)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_486) (< v_idx_486 ULTIMATE.start_main_p6)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_485) (= v_v_785_1 (select |#memory_int| v_idx_485))) (or (< v_idx_484 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_784_1 (select |#valid| v_idx_484))) (<= (- (- v_v_786_1) v_v_786_1) 6) (<= v_v_786_1 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_480 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_480) v_v_780_1)) (<= 0 (+ v_v_786_1 3))))))} [2019-01-18 14:54:40,187 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:40,187 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:40,391 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (forall ((v_idx_498 Int)) (or (< v_idx_498 ULTIMATE.start_main_p6) (<= 0 (+ (select |#memory_int| v_idx_498) 4)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_498))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (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_p6))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_9 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_9) (< v_prenex_9 ULTIMATE.start_main_p6) (<= 0 (+ (* 2 (select |#memory_int| v_prenex_9)) 8)))) (forall ((v_prenex_7 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_7)) 2) 0) (< v_prenex_7 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_7))) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_8) (<= (+ (select |#memory_int| v_prenex_8) 1) 0))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_490 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_490)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_490) (< v_idx_490 ULTIMATE.start_main_p6))))} [2019-01-18 14:54:51,899 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:51,899 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:51,900 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:51,900 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:51,900 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(or (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_507)) (= (select |c_old(#valid)| v_idx_503) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_500)) (or (= v_v_64_3 (select |c_#valid| v_idx_506)) (< v_idx_506 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_502) v_v_58_3) (< v_idx_502 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (- 2) (select |c_#memory_int| v_idx_509)) (< v_idx_509 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_509)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_508) (= (select |c_#memory_int| v_idx_508) v_v_80_3)) (or (= (select |c_#memory_int| v_idx_510) v_v_82_3) (< v_idx_510 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 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_p6)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_501)) (< v_idx_501 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_501)) (or (<= c_ULTIMATE.start_main_p6 v_idx_504) (= (select |c_#valid| v_idx_504) v_v_62_3))))) (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_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_788_1 Int) (v_v_787_1 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_515) (= v_v_782_1 (select |c_#valid| v_idx_515))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_788_1 (select |c_old(#memory_int)| v_idx_521)) (or (<= c_ULTIMATE.start_main_p6 v_idx_511) (= v_v_778_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_511))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_512) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_512) 0) (< v_idx_512 c_ULTIMATE.start_main_p6)) (<= (- v_v_786_1 (- v_v_786_1)) 0) (= v_v_781_1 (select |c_old(#valid)| v_idx_514)) (or (< v_idx_519 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_519) (= v_v_786_1 (select |c_#memory_int| v_idx_519))) (or (< v_idx_520 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_520) v_v_787_1)) (or (= v_v_784_1 (select |c_#valid| v_idx_517)) (< v_idx_517 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_786_1) v_v_786_1) 6) (<= v_v_786_1 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_780_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_513)) (< v_idx_513 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_518) v_v_785_1) (<= c_ULTIMATE.start_main_p6 v_idx_518)) (<= 0 (+ v_v_786_1 3)) (or (< v_idx_516 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_516)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_516))))))} [2019-01-18 14:54:51,900 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:51,900 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:51,900 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(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_64_3 Int) (v_v_56_3 Int) (v_v_62_3 Int) (v_v_1155_1 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int) (v_v_1153_1 Int) (v_v_1154_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_531 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_531) (= (select |c_#memory_int| v_idx_531) v_v_1154_1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_522) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_56_3)) (or (< v_idx_532 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_532) v_v_1155_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_523) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_523)) (< v_idx_523 c_ULTIMATE.start_main_p6)) (<= (+ v_v_1154_1 1) 0) (<= (- v_v_1154_1 (- v_v_1154_1)) (- 2)) (or (< v_idx_524 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_524))) (= v_v_2_3 (select |c_old(#valid)| v_idx_525)) (or (< v_idx_527 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_527) (= 1 (select |c_#valid| v_idx_527))) (= (select |c_old(#memory_int)| v_idx_529) v_v_4_3) (or (= v_v_62_3 (select |c_#valid| v_idx_526)) (<= c_ULTIMATE.start_main_p6 v_idx_526)) (or (= v_v_64_3 (select |c_#valid| v_idx_528)) (< v_idx_528 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_530) (= (select |c_#memory_int| v_idx_530) v_v_1153_1)))))} [2019-01-18 14:54:51,901 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:52,050 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:52,051 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:00,128 WARN L181 SmtUtils]: Spent 8.08 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:55:00,128 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(or (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_4_3 (select |old(#memory_int)| v_idx_507)) (= (select |old(#valid)| v_idx_503) v_v_2_3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_56_3) (<= ULTIMATE.start_main_p6 v_idx_500)) (or (= v_v_64_3 (select |#valid| v_idx_506)) (< v_idx_506 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_502) v_v_58_3) (< v_idx_502 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (- 2) (select |#memory_int| v_idx_509)) (< v_idx_509 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_509)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_508) (= (select |#memory_int| v_idx_508) v_v_80_3)) (or (= (select |#memory_int| v_idx_510) v_v_82_3) (< v_idx_510 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_505) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_505) (< v_idx_505 ULTIMATE.start_main_p6)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_501)) (< v_idx_501 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_501)) (or (<= ULTIMATE.start_main_p6 v_idx_504) (= (select |#valid| v_idx_504) v_v_62_3))))) (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_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_786_1 Int) (v_v_785_1 Int) (v_v_788_1 Int) (v_v_787_1 Int)) (and (or (<= ULTIMATE.start_main_p6 v_idx_515) (= v_v_782_1 (select |#valid| v_idx_515))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_788_1 (select |old(#memory_int)| v_idx_521)) (or (<= ULTIMATE.start_main_p6 v_idx_511) (= v_v_778_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_511))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_512) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_512) 0) (< v_idx_512 ULTIMATE.start_main_p6)) (<= (- v_v_786_1 (- v_v_786_1)) 0) (= v_v_781_1 (select |old(#valid)| v_idx_514)) (or (< v_idx_519 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_519) (= v_v_786_1 (select |#memory_int| v_idx_519))) (or (< v_idx_520 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_520) v_v_787_1)) (or (= v_v_784_1 (select |#valid| v_idx_517)) (< v_idx_517 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_786_1) v_v_786_1) 6) (<= v_v_786_1 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_780_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_513)) (< v_idx_513 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_518) v_v_785_1) (<= ULTIMATE.start_main_p6 v_idx_518)) (<= 0 (+ v_v_786_1 3)) (or (< v_idx_516 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_516)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_516))))))} [2019-01-18 14:55:00,128 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:00,128 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:00,334 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (forall ((v_idx_531 Int)) (or (< v_idx_531 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_531) (<= (+ (* 2 (select |#memory_int| v_idx_531)) 2) 0))) (forall ((v_prenex_10 Int)) (or (< v_prenex_10 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_10) (<= (+ (select |#memory_int| v_prenex_10) 1) 0))) (forall ((v_idx_527 Int)) (or (< v_idx_527 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_527) (= 1 (select |#valid| v_idx_527)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_523 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_523) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_523)) (< v_idx_523 ULTIMATE.start_main_p6))))} [2019-01-18 14:55:03,305 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:03,305 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:03,306 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:03,306 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:03,306 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(or (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_535) v_v_58_3) (< v_idx_535 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_533) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_56_3)) (or (< v_idx_539 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_539))) (or (= (select |c_#memory_int| v_idx_542) (- 2)) (< v_idx_542 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_542)) (or (< v_idx_534 c_ULTIMATE.start_main_p6) (= 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 (= 1 (select |c_#valid| v_idx_538)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 c_ULTIMATE.start_main_p6)) (or (= v_v_62_3 (select |c_#valid| v_idx_537)) (<= c_ULTIMATE.start_main_p6 v_idx_537)) (or (<= c_ULTIMATE.start_main_p6 v_idx_541) (= (select |c_#memory_int| v_idx_541) v_v_80_3)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_543 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_82_3 (select |c_#memory_int| v_idx_543))) (= v_v_2_3 (select |c_old(#valid)| v_idx_536)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr)))) (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_899_1 Int) (v_v_889_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_895_1 Int) (v_v_896_1 Int) (v_v_897_1 Int) (v_v_898_1 Int)) (and (or (< v_idx_553 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_553) v_v_898_1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_551) (= (select |c_#memory_int| v_idx_551) v_v_896_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (<= (- v_v_897_1 (- v_v_897_1)) 0) (= v_v_899_1 (select |c_old(#memory_int)| v_idx_554)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_552) (= (select |c_#memory_int| v_idx_552) v_v_897_1) (< v_idx_552 c_ULTIMATE.start_main_p6)) (or (= v_v_893_1 (select |c_#valid| v_idx_548)) (<= c_ULTIMATE.start_main_p6 v_idx_548)) (or (< v_idx_545 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_545) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_545) 0)) (<= v_v_897_1 0) (= v_v_892_1 (select |c_old(#valid)| v_idx_547)) (or (< v_idx_546 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_546) v_v_891_1)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_889_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_544)) (<= c_ULTIMATE.start_main_p6 v_idx_544)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_550 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_895_1 (select |c_#valid| v_idx_550))) (or (= 1 (select |c_#valid| v_idx_549)) (< v_idx_549 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_549))))))} [2019-01-18 14:55:03,306 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:55:03,306 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:55:03,307 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(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_899_1 Int) (v_v_889_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_1196_1 Int) (v_v_895_1 Int) (v_v_896_1 Int) (v_v_898_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_557 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_891_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_557))) (or (= (select |c_#memory_int| v_idx_563) v_v_896_1) (<= c_ULTIMATE.start_main_p6 v_idx_563)) (or (< v_idx_565 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_565) v_v_898_1)) (or (= v_v_895_1 (select |c_#valid| v_idx_561)) (< v_idx_561 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_1196_1 1) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_555) (= v_v_889_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_555))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_564) (= (select |c_#memory_int| v_idx_564) v_v_1196_1) (< v_idx_564 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_559) (= v_v_893_1 (select |c_#valid| v_idx_559))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_556) (< v_idx_556 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_556))) (= (select |c_old(#memory_int)| v_idx_562) v_v_899_1) (<= (- v_v_1196_1 (- v_v_1196_1)) (- 2)) (= v_v_892_1 (select |c_old(#valid)| v_idx_558)) (or (< v_idx_560 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_560) (= 1 (select |c_#valid| v_idx_560))))))} [2019-01-18 14:55:03,307 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:03,801 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:03,801 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:12,195 WARN L181 SmtUtils]: Spent 8.39 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-18 14:55:12,195 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(or (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_535) v_v_58_3) (< v_idx_535 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p6 v_idx_533) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_56_3)) (or (< v_idx_539 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_539))) (or (= (select |#memory_int| v_idx_542) (- 2)) (< v_idx_542 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_542)) (or (< v_idx_534 ULTIMATE.start_main_p6) (= 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 (= 1 (select |#valid| v_idx_538)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 ULTIMATE.start_main_p6)) (or (= v_v_62_3 (select |#valid| v_idx_537)) (<= ULTIMATE.start_main_p6 v_idx_537)) (or (<= ULTIMATE.start_main_p6 v_idx_541) (= (select |#memory_int| v_idx_541) v_v_80_3)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_543 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_82_3 (select |#memory_int| v_idx_543))) (= v_v_2_3 (select |old(#valid)| v_idx_536)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr)))) (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_899_1 Int) (v_v_889_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_895_1 Int) (v_v_896_1 Int) (v_v_897_1 Int) (v_v_898_1 Int)) (and (or (< v_idx_553 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_553) v_v_898_1)) (or (<= ULTIMATE.start_main_p6 v_idx_551) (= (select |#memory_int| v_idx_551) v_v_896_1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- v_v_897_1 (- v_v_897_1)) 0) (= v_v_899_1 (select |old(#memory_int)| v_idx_554)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_552) (= (select |#memory_int| v_idx_552) v_v_897_1) (< v_idx_552 ULTIMATE.start_main_p6)) (or (= v_v_893_1 (select |#valid| v_idx_548)) (<= ULTIMATE.start_main_p6 v_idx_548)) (or (< v_idx_545 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_545) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_545) 0)) (<= v_v_897_1 0) (= v_v_892_1 (select |old(#valid)| v_idx_547)) (or (< v_idx_546 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_546) v_v_891_1)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_889_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_544)) (<= ULTIMATE.start_main_p6 v_idx_544)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_550 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_895_1 (select |#valid| v_idx_550))) (or (= 1 (select |#valid| v_idx_549)) (< v_idx_549 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_549))))))} [2019-01-18 14:55:12,196 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:55:12,196 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:55:12,422 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (forall ((v_idx_556 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_556) (< v_idx_556 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_556)))) (forall ((v_idx_564 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_564) (<= (+ (select |#memory_int| v_idx_564) 1) 0) (< v_idx_564 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_560 Int)) (or (< v_idx_560 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_560) (= 1 (select |#valid| v_idx_560)))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_11 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_11)) 2) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_11) (< v_prenex_11 ULTIMATE.start_main_p6))))} [2019-01-18 14:55:15,664 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:15,664 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:15,665 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:15,665 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:15,665 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (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_899_1 Int) (v_v_889_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_895_1 Int) (v_v_896_1 Int) (v_v_897_1 Int) (v_v_898_1 Int)) (and (or (< v_idx_585 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_585) (= (select |c_#memory_int| v_idx_585) v_v_897_1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_581) (= v_v_893_1 (select |c_#valid| v_idx_581))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= (select |c_old(#valid)| v_idx_580) v_v_892_1) (or (<= c_ULTIMATE.start_main_p6 v_idx_584) (= (select |c_#memory_int| v_idx_584) v_v_896_1)) (or (<= c_ULTIMATE.start_main_p6 v_idx_577) (= v_v_889_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_577))) (<= (- v_v_897_1 (- v_v_897_1)) 0) (or (= (select |c_#memory_int| v_idx_586) v_v_898_1) (< v_idx_586 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_899_1 (select |c_old(#memory_int)| v_idx_587)) (<= v_v_897_1 0) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (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_p6)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_582)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_582) (< v_idx_582 c_ULTIMATE.start_main_p6)) (or (< v_idx_583 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_895_1 (select |c_#valid| v_idx_583))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_579) v_v_891_1) (< v_idx_579 (+ c_ULTIMATE.start_malloc_ptr 1)))))) (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (= v_v_2_3 (select |c_old(#valid)| v_idx_569)) (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_p6)) (= (select |c_old(#memory_int)| v_idx_573) v_v_4_3) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_572 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |c_#valid| v_idx_572))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_566)) (or (= (select |c_#memory_int| v_idx_576) v_v_82_3) (< v_idx_576 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_570) (= v_v_62_3 (select |c_#valid| v_idx_570))) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_575) (- 2)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_575) (< v_idx_575 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_574) v_v_80_3) (<= c_ULTIMATE.start_main_p6 v_idx_574)) (or (< v_idx_568 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_568) v_v_58_3)) (or (< v_idx_571 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_571) (= 1 (select |c_#valid| v_idx_571)))))))} [2019-01-18 14:55:15,665 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:15,665 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:15,666 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(forall ((v_idx_588 Int) (v_idx_589 Int) (v_idx_597 Int) (v_idx_598 Int) (v_idx_591 Int) (v_idx_592 Int) (v_idx_590 Int) (v_idx_595 Int) (v_idx_596 Int) (v_idx_593 Int) (v_idx_594 Int)) (exists ((v_v_64_3 Int) (v_v_56_3 Int) (v_v_62_3 Int) (v_v_1243_1 Int) (v_v_1244_1 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_1242_1 Int) (v_v_4_3 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_597) (< v_idx_597 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_597) v_v_1243_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= v_v_64_3 (select |c_#valid| v_idx_594)) (< v_idx_594 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_589 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_589) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_589) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_588) v_v_56_3) (<= c_ULTIMATE.start_main_p6 v_idx_588)) (or (< v_idx_590 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_590) v_v_58_3)) (= (select |c_old(#valid)| v_idx_591) v_v_2_3) (or (<= c_ULTIMATE.start_main_p1 v_idx_596) (= (select |c_#memory_int| v_idx_596) v_v_1242_1)) (<= (+ v_v_1243_1 1) 0) (or (= (select |c_#memory_int| v_idx_598) v_v_1244_1) (< v_idx_598 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_62_3 (select |c_#valid| v_idx_592)) (<= c_ULTIMATE.start_main_p6 v_idx_592)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_595)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_593) (< v_idx_593 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_593))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_1243_1 (- v_v_1243_1)) (- 2)))))} [2019-01-18 14:55:15,666 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:16,361 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:16,362 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:24,775 WARN L181 SmtUtils]: Spent 8.41 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-18 14:55:24,776 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (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_899_1 Int) (v_v_889_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_895_1 Int) (v_v_896_1 Int) (v_v_897_1 Int) (v_v_898_1 Int)) (and (or (< v_idx_585 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_585) (= (select |#memory_int| v_idx_585) v_v_897_1)) (or (<= ULTIMATE.start_main_p6 v_idx_581) (= v_v_893_1 (select |#valid| v_idx_581))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= (select |old(#valid)| v_idx_580) v_v_892_1) (or (<= ULTIMATE.start_main_p6 v_idx_584) (= (select |#memory_int| v_idx_584) v_v_896_1)) (or (<= ULTIMATE.start_main_p6 v_idx_577) (= v_v_889_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_577))) (<= (- v_v_897_1 (- v_v_897_1)) 0) (or (= (select |#memory_int| v_idx_586) v_v_898_1) (< v_idx_586 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_899_1 (select |old(#memory_int)| v_idx_587)) (<= v_v_897_1 0) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (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_p6)) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= 1 (select |#valid| v_idx_582)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_582) (< v_idx_582 ULTIMATE.start_main_p6)) (or (< v_idx_583 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_895_1 (select |#valid| v_idx_583))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_579) v_v_891_1) (< v_idx_579 (+ ULTIMATE.start_malloc_ptr 1)))))) (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_64_3 Int) (v_v_56_3 Int) (v_v_82_3 Int) (v_v_62_3 Int) (v_v_80_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_4_3 Int)) (and (= v_v_2_3 (select |old(#valid)| v_idx_569)) (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_p6)) (= (select |old(#memory_int)| v_idx_573) v_v_4_3) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_572 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_3 (select |#valid| v_idx_572))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_56_3) (<= ULTIMATE.start_main_p6 v_idx_566)) (or (= (select |#memory_int| v_idx_576) v_v_82_3) (< v_idx_576 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p6 v_idx_570) (= v_v_62_3 (select |#valid| v_idx_570))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_575) (- 2)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_575) (< v_idx_575 ULTIMATE.start_main_p6)) (or (= (select |#memory_int| v_idx_574) v_v_80_3) (<= ULTIMATE.start_main_p6 v_idx_574)) (or (< v_idx_568 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_568) v_v_58_3)) (or (< v_idx_571 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_571) (= 1 (select |#valid| v_idx_571)))))))} [2019-01-18 14:55:24,776 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:24,776 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:24,963 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (forall ((v_idx_589 Int)) (or (< v_idx_589 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_589) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_589) 0))) (forall ((v_idx_597 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_597) (<= (+ (select |#memory_int| v_idx_597) 1) 0) (< v_idx_597 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (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_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_593 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_593) (< v_idx_593 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_593)))))} [2019-01-18 14:55:25,105 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:55:25,106 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:55:25,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:25,107 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:55:25,107 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:25,107 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:25,119 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:25,119 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:55:25,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:25,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:25,127 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:55:25,439 WARN L181 SmtUtils]: Spent 220.00 ms on a formula simplification that was a NOOP. DAG size: 36 [2019-01-18 14:55:25,500 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,501 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 68 treesize of output 71 [2019-01-18 14:55:25,565 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,566 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,567 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 58 treesize of output 67 [2019-01-18 14:55:25,637 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,639 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,640 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,641 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,643 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:55:25,724 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,726 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,727 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,729 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,730 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,731 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,733 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:55:25,838 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,840 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,841 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,842 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,844 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,845 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,847 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,848 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:25,849 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:55:25,853 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:25,883 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:25,915 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:25,948 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:25,981 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,030 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 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 24 [2019-01-18 14:55:26,042 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 9 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 30 [2019-01-18 14:55:26,057 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 12 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 40 [2019-01-18 14:55:26,079 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 14 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 54 [2019-01-18 14:55:26,123 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 15 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 72 [2019-01-18 14:55:26,150 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 91 [2019-01-18 14:55:26,154 INFO L267 ElimStorePlain]: Start of recursive call 12: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,197 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,221 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,241 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,258 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,272 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,336 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 2 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:26,336 INFO L202 ElimStorePlain]: Needed 12 recursive calls to eliminate 6 variables, input treesize:92, output treesize:91 [2019-01-18 14:55:26,386 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:26,387 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_38|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, |v_#valid_10|]. (let ((.cse3 (store |v_#valid_10| ULTIMATE.start_main_p1 1))) (let ((.cse2 (store .cse3 ULTIMATE.start_main_p2 1))) (let ((.cse1 (store .cse2 ULTIMATE.start_main_p3 1))) (let ((.cse0 (store .cse1 ULTIMATE.start_main_p4 1))) (and (= (select .cse0 ULTIMATE.start_main_p5) 0) (= 0 (select .cse1 ULTIMATE.start_main_p4)) (= (store (store (store (store (store (store |v_#memory_int_38| 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) ULTIMATE.start_main_p6 0) |#memory_int|) (= (select (store .cse0 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6) 0) (= 0 (select .cse2 ULTIMATE.start_main_p3)) (= (select .cse3 ULTIMATE.start_main_p2) 0)))))) [2019-01-18 14:55:26,387 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (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_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:55:26,542 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:26,544 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 97 [2019-01-18 14:55:26,550 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:26,610 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:26,611 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:55:28,641 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:28,642 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_39|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_39| ULTIMATE.start_main_p6))) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_39| ULTIMATE.start_main_p6 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p3) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 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)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:55:28,642 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (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_p5)) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p6)) (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)) (= (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:55:28,696 INFO L273 TraceCheckUtils]: 0: Hoare triple {425#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {432#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} is VALID [2019-01-18 14:55:28,702 INFO L273 TraceCheckUtils]: 1: Hoare triple {432#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {436#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} is VALID [2019-01-18 14:55:28,703 INFO L273 TraceCheckUtils]: 2: Hoare triple {436#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} assume !(#memory_int[main_p1] >= 0); {426#false} is VALID [2019-01-18 14:55:28,704 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:28,704 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:55:28,737 INFO L273 TraceCheckUtils]: 2: Hoare triple {440#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {426#false} is VALID [2019-01-18 14:55:28,738 INFO L273 TraceCheckUtils]: 1: Hoare triple {444#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {440#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:55:28,739 INFO L273 TraceCheckUtils]: 0: Hoare triple {425#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {444#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:55:28,740 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:28,760 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:55:28,760 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:55:28,760 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:55:28,761 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:55:28,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:55:28,761 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:55:28,779 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:28,779 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:55:28,779 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:55:28,779 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:55:28,780 INFO L87 Difference]: Start difference. First operand 21 states and 59 transitions. Second operand 6 states. [2019-01-18 14:55:29,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:29,519 INFO L93 Difference]: Finished difference Result 39 states and 79 transitions. [2019-01-18 14:55:29,519 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:55:29,519 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:55:29,519 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:55:29,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:55:29,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2019-01-18 14:55:29,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:55:29,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2019-01-18 14:55:29,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2019-01-18 14:55:29,709 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:55:29,711 INFO L225 Difference]: With dead ends: 39 [2019-01-18 14:55:29,711 INFO L226 Difference]: Without dead ends: 36 [2019-01-18 14:55:29,712 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:55:29,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2019-01-18 14:55:29,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 23. [2019-01-18 14:55:29,775 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:55:29,775 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 23 states. [2019-01-18 14:55:29,775 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 23 states. [2019-01-18 14:55:29,775 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 23 states. [2019-01-18 14:55:29,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:29,779 INFO L93 Difference]: Finished difference Result 36 states and 76 transitions. [2019-01-18 14:55:29,779 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 76 transitions. [2019-01-18 14:55:29,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:29,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:29,780 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 36 states. [2019-01-18 14:55:29,780 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 36 states. [2019-01-18 14:55:29,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:29,783 INFO L93 Difference]: Finished difference Result 36 states and 76 transitions. [2019-01-18 14:55:29,783 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 76 transitions. [2019-01-18 14:55:29,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:29,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:29,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:55:29,784 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:55:29,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-01-18 14:55:29,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 67 transitions. [2019-01-18 14:55:29,785 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 67 transitions. Word has length 3 [2019-01-18 14:55:29,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:55:29,786 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 67 transitions. [2019-01-18 14:55:29,786 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:55:29,786 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 67 transitions. [2019-01-18 14:55:29,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:55:29,786 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:55:29,786 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:55:29,786 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:55:29,787 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:29,787 INFO L82 PathProgramCache]: Analyzing trace with hash 30128, now seen corresponding path program 1 times [2019-01-18 14:55:29,787 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:55:29,787 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:29,788 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:29,788 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:29,788 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:55:29,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:29,857 INFO L273 TraceCheckUtils]: 0: Hoare triple {595#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {597#(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:55:29,859 INFO L273 TraceCheckUtils]: 1: Hoare triple {597#(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]; {598#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:55:29,860 INFO L273 TraceCheckUtils]: 2: Hoare triple {598#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {596#false} is VALID [2019-01-18 14:55:29,860 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:29,861 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:29,861 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:55:29,861 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:55:29,861 INFO L207 CegarAbsIntRunner]: [0], [10], [27] [2019-01-18 14:55:29,863 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:55:29,863 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:55:34,099 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:34,100 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:34,100 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:34,100 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:34,100 WARN L224 ngHoareTripleChecker]: Pre: {2147483601#(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_64_4 Int) (v_v_82_4 Int) (v_v_62_4 Int) (v_v_80_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_639) v_v_58_4) (< v_idx_639 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_646) 0) (< v_idx_646 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_646)) (= (select |c_old(#memory_int)| v_idx_644) v_v_4_4) (or (<= c_ULTIMATE.start_main_p6 v_idx_641) (= (select |c_#valid| v_idx_641) v_v_62_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_638) (< v_idx_638 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_638) 0)) (or (= (select |c_#memory_int| v_idx_645) v_v_80_4) (<= c_ULTIMATE.start_main_p6 v_idx_645)) (or (< v_idx_647 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_647) v_v_82_4)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_637) v_v_56_4) (<= c_ULTIMATE.start_main_p6 v_idx_637)) (= (select |c_old(#valid)| v_idx_640) v_v_2_4) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_642 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_642) (= 1 (select |c_#valid| v_idx_642))) (or (= (select |c_#valid| v_idx_643) v_v_64_4) (< v_idx_643 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-18 14:55:34,101 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:34,101 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:34,101 WARN L230 ngHoareTripleChecker]: Post: {2147483600#(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_64_4 Int) (v_v_98_4 Int) (v_v_99_4 Int) (v_v_62_4 Int) (v_v_97_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_658 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_658) v_v_99_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_654 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_654) v_v_64_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_650) v_v_58_4) (< v_idx_650 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_652) (= (select |c_#valid| v_idx_652) v_v_62_4)) (or (<= c_ULTIMATE.start_main_p6 v_idx_648) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_648) v_v_56_4)) (or (< v_idx_649 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_649) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_649))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_655)) (or (= (select |c_#valid| v_idx_653) 1) (< v_idx_653 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_653)) (<= (- v_v_98_4 (- v_v_98_4)) (- 2)) (= v_v_2_4 (select |c_old(#valid)| v_idx_651)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_657) (< v_idx_657 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_657) v_v_98_4)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (+ v_v_98_4 1) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_656) (= (select |c_#memory_int| v_idx_656) v_v_97_4)))))} [2019-01-18 14:55:34,101 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:34,670 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:34,670 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:34,849 WARN L270 ngHoareTripleChecker]: Pre: {2147483601#(and (forall ((v_idx_638 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_638) (< v_idx_638 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_638) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_646 Int)) (or (= (select |#memory_int| v_idx_646) 0) (< v_idx_646 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_646))) (forall ((v_idx_642 Int)) (or (< v_idx_642 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_642) (= 1 (select |#valid| v_idx_642)))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:55:34,849 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:34,849 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:34,901 WARN L276 ngHoareTripleChecker]: Post: {2147483600#(and (forall ((v_idx_649 Int)) (or (< v_idx_649 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_649) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_649)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_653 Int)) (or (= (select |#valid| v_idx_653) 1) (< v_idx_653 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_653))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_657 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_657)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_657) (< v_idx_657 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_13 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_13) (<= (+ (select |#memory_int| v_prenex_13) 1) 0) (< v_prenex_13 ULTIMATE.start_main_p1))))} [2019-01-18 14:55:37,376 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:37,377 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:37,377 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:37,377 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:37,377 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(or (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_64_4 Int) (v_v_82_4 Int) (v_v_62_4 Int) (v_v_80_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#valid| v_idx_665) v_v_64_4) (< v_idx_665 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_663) (= (select |c_#valid| v_idx_663) v_v_62_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_660) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_660)) (< v_idx_660 c_ULTIMATE.start_main_p6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_668) (< v_idx_668 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_668) 0)) (or (< v_idx_664 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_664) (= 1 (select |c_#valid| v_idx_664))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_661) v_v_58_4) (< v_idx_661 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_669) v_v_82_4) (< v_idx_669 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_662)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_659) v_v_56_4) (<= c_ULTIMATE.start_main_p6 v_idx_659)) (= (select |c_old(#memory_int)| v_idx_666) v_v_4_4) (or (<= c_ULTIMATE.start_main_p6 v_idx_667) (= (select |c_#memory_int| v_idx_667) v_v_80_4))))) (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_85_4 Int) (v_v_64_4 Int) (v_v_84_4 Int) (v_v_62_4 Int) (v_v_83_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_680 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_680) v_v_85_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_677)) (= v_v_2_4 (select |c_old(#valid)| v_idx_673)) (or (= (select |c_#valid| v_idx_675) 1) (< v_idx_675 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_675)) (or (= (select |c_#valid| v_idx_674) v_v_62_4) (<= c_ULTIMATE.start_main_p6 v_idx_674)) (or (< v_idx_671 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_671) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (< v_idx_676 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_676) v_v_64_4)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_679) (< v_idx_679 c_ULTIMATE.start_main_p2) (= v_v_84_4 (select |c_#memory_int| v_idx_679))) (or (<= c_ULTIMATE.start_main_p6 v_idx_670) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_56_4)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_678) (= (select |c_#memory_int| v_idx_678) v_v_83_4)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_672 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_672) v_v_58_4))))))} [2019-01-18 14:55:37,378 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:55:37,378 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:37,378 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(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_64_4 Int) (v_v_101_4 Int) (v_v_100_4 Int) (v_v_62_4 Int) (v_v_102_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_689) v_v_100_4) (<= c_ULTIMATE.start_main_p2 v_idx_689)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_682)) (< v_idx_682 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_682)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#valid| v_idx_685) v_v_62_4) (<= c_ULTIMATE.start_main_p6 v_idx_685)) (or (= (select |c_#valid| v_idx_687) v_v_64_4) (< v_idx_687 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_56_4) (<= c_ULTIMATE.start_main_p6 v_idx_681)) (or (= (select |c_#memory_int| v_idx_690) v_v_101_4) (< v_idx_690 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_690)) (or (< v_idx_683 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_683) v_v_58_4)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_684)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_688)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_686) (< v_idx_686 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_686))) (or (< v_idx_691 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_691) v_v_102_4)))))} [2019-01-18 14:55:37,378 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:37,607 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:37,608 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:45,819 WARN L181 SmtUtils]: Spent 8.21 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:45,819 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(or (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_64_4 Int) (v_v_82_4 Int) (v_v_62_4 Int) (v_v_80_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |#valid| v_idx_665) v_v_64_4) (< v_idx_665 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p6 v_idx_663) (= (select |#valid| v_idx_663) v_v_62_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_660) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_660)) (< v_idx_660 ULTIMATE.start_main_p6)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_668) (< v_idx_668 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_668) 0)) (or (< v_idx_664 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_664) (= 1 (select |#valid| v_idx_664))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_661) v_v_58_4) (< v_idx_661 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_669) v_v_82_4) (< v_idx_669 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |old(#valid)| v_idx_662)) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_659) v_v_56_4) (<= ULTIMATE.start_main_p6 v_idx_659)) (= (select |old(#memory_int)| v_idx_666) v_v_4_4) (or (<= ULTIMATE.start_main_p6 v_idx_667) (= (select |#memory_int| v_idx_667) v_v_80_4))))) (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_85_4 Int) (v_v_64_4 Int) (v_v_84_4 Int) (v_v_62_4 Int) (v_v_83_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_680 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_680) v_v_85_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (= v_v_4_4 (select |old(#memory_int)| v_idx_677)) (= v_v_2_4 (select |old(#valid)| v_idx_673)) (or (= (select |#valid| v_idx_675) 1) (< v_idx_675 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_675)) (or (= (select |#valid| v_idx_674) v_v_62_4) (<= ULTIMATE.start_main_p6 v_idx_674)) (or (< v_idx_671 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_671) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (< v_idx_676 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_676) v_v_64_4)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_679) (< v_idx_679 ULTIMATE.start_main_p2) (= v_v_84_4 (select |#memory_int| v_idx_679))) (or (<= ULTIMATE.start_main_p6 v_idx_670) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_56_4)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_678) (= (select |#memory_int| v_idx_678) v_v_83_4)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_672 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_672) v_v_58_4))))))} [2019-01-18 14:55:45,820 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:55:45,820 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:45,983 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (forall ((v_idx_682 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_682)) (< v_idx_682 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_682))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_686 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_686) (< v_idx_686 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_686)))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:55:48,899 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:48,899 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:48,900 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:48,900 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:48,900 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(or (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_64_4 Int) (v_v_82_4 Int) (v_v_62_4 Int) (v_v_80_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (= 1 (select |c_#valid| v_idx_697)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_697) (< v_idx_697 c_ULTIMATE.start_main_p6)) (= (select |c_old(#memory_int)| v_idx_699) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_701) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_701) (< v_idx_701 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_696) (= v_v_62_4 (select |c_#valid| v_idx_696))) (= v_v_2_4 (select |c_old(#valid)| v_idx_695)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_702 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_702) v_v_82_4)) (or (< v_idx_698 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_698) v_v_64_4)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_693 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_693)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_693)) (or (<= c_ULTIMATE.start_main_p6 v_idx_692) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_692) v_v_56_4)) (or (<= c_ULTIMATE.start_main_p6 v_idx_700) (= (select |c_#memory_int| v_idx_700) v_v_80_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_694) v_v_58_4) (< v_idx_694 (+ c_ULTIMATE.start_malloc_ptr 1)))))) (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_64_4 Int) (v_v_85_4 Int) (v_v_84_4 Int) (v_v_62_4 Int) (v_v_83_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_708) (< v_idx_708 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_708) 1)) (or (= (select |c_#valid| v_idx_709) v_v_64_4) (< v_idx_709 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_707) (= (select |c_#valid| v_idx_707) v_v_62_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_58_4) (< v_idx_705 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_712 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_712) v_v_84_4) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_712)) (= (select |c_old(#valid)| v_idx_706) v_v_2_4) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_711) (= (select |c_#memory_int| v_idx_711) v_v_83_4)) (= (select |c_old(#memory_int)| v_idx_710) v_v_4_4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_704) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_704)) (< v_idx_704 c_ULTIMATE.start_main_p6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_703) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_56_4)) (or (< v_idx_713 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_713) v_v_85_4))))))} [2019-01-18 14:55:48,900 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:48,900 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:48,901 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(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_64_4 Int) (v_v_62_4 Int) (v_v_146_4 Int) (v_v_145_4 Int) (v_v_144_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_722) v_v_144_4) (<= c_ULTIMATE.start_main_p1 v_idx_722)) (or (< v_idx_716 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_716) v_v_58_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#valid| v_idx_720) v_v_64_4) (< v_idx_720 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_717)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_719) (< v_idx_719 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_719))) (or (<= c_ULTIMATE.start_main_p6 v_idx_718) (= (select |c_#valid| v_idx_718) v_v_62_4)) (<= (+ v_v_145_4 1) 0) (or (= v_v_56_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_714)) (<= c_ULTIMATE.start_main_p6 v_idx_714)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_723) v_v_145_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_723) (< v_idx_723 c_ULTIMATE.start_main_p1)) (<= (- v_v_145_4 (- v_v_145_4)) (- 2)) (or (= (select |c_#memory_int| v_idx_724) v_v_146_4) (< v_idx_724 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_721) v_v_4_4) (or (< v_idx_715 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_715) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_715) 0)))))} [2019-01-18 14:55:48,901 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:49,082 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:49,082 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:57,261 WARN L181 SmtUtils]: Spent 8.18 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:57,262 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(or (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_64_4 Int) (v_v_82_4 Int) (v_v_62_4 Int) (v_v_80_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (or (= 1 (select |#valid| v_idx_697)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_697) (< v_idx_697 ULTIMATE.start_main_p6)) (= (select |old(#memory_int)| v_idx_699) v_v_4_4) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |#memory_int| v_idx_701) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_701) (< v_idx_701 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p6 v_idx_696) (= v_v_62_4 (select |#valid| v_idx_696))) (= v_v_2_4 (select |old(#valid)| v_idx_695)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_702 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_702) v_v_82_4)) (or (< v_idx_698 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_698) v_v_64_4)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_693 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_693)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_693)) (or (<= ULTIMATE.start_main_p6 v_idx_692) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_692) v_v_56_4)) (or (<= ULTIMATE.start_main_p6 v_idx_700) (= (select |#memory_int| v_idx_700) v_v_80_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_694) v_v_58_4) (< v_idx_694 (+ ULTIMATE.start_malloc_ptr 1)))))) (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_64_4 Int) (v_v_85_4 Int) (v_v_84_4 Int) (v_v_62_4 Int) (v_v_83_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_58_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_708) (< v_idx_708 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_708) 1)) (or (= (select |#valid| v_idx_709) v_v_64_4) (< v_idx_709 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p6 v_idx_707) (= (select |#valid| v_idx_707) v_v_62_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_58_4) (< v_idx_705 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_712 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_712) v_v_84_4) (<= (+ ULTIMATE.start_main_p2 1) v_idx_712)) (= (select |old(#valid)| v_idx_706) v_v_2_4) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_711) (= (select |#memory_int| v_idx_711) v_v_83_4)) (= (select |old(#memory_int)| v_idx_710) v_v_4_4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_704) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_704)) (< v_idx_704 ULTIMATE.start_main_p6)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p6 v_idx_703) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_56_4)) (or (< v_idx_713 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_713) v_v_85_4))))))} [2019-01-18 14:55:57,262 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:57,262 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:57,467 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (forall ((v_idx_723 Int)) (or (<= (+ (select |#memory_int| v_idx_723) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_723) (< v_idx_723 ULTIMATE.start_main_p1))) (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_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_715 Int)) (or (< v_idx_715 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_715) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_715) 0))) (forall ((v_idx_719 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_719) (< v_idx_719 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_719)))))} [2019-01-18 14:55:57,664 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:55:57,665 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:57,665 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:57,665 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:55:57,665 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:57,665 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:57,674 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:57,674 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:55:57,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:57,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:57,684 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:55:57,731 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 21 treesize of output 24 [2019-01-18 14:55:57,738 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 24 treesize of output 30 [2019-01-18 14:55:57,748 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,750 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,751 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 26 treesize of output 40 [2019-01-18 14:55:57,763 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,764 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,766 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,767 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 28 treesize of output 54 [2019-01-18 14:55:57,784 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,786 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,788 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,790 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,792 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 72 [2019-01-18 14:55:57,822 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 0 case distinctions, treesize of input 32 treesize of output 71 [2019-01-18 14:55:57,829 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,863 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,887 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,908 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,927 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,943 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:57,979 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:57,981 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 48 treesize of output 54 [2019-01-18 14:55:58,033 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,036 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,037 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 41 treesize of output 53 [2019-01-18 14:55:58,096 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,097 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,098 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,099 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,100 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 61 [2019-01-18 14:55:58,172 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,174 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,175 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,176 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,178 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,179 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,180 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 41 [2019-01-18 14:55:58,184 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:58,203 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:58,224 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:58,244 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:58,288 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 2 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:58,289 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 6 variables, input treesize:72, output treesize:71 [2019-01-18 14:55:58,304 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:58,304 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_41|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, |v_#valid_11|]. (let ((.cse1 (store |v_#valid_11| ULTIMATE.start_main_p1 1))) (let ((.cse2 (store .cse1 ULTIMATE.start_main_p2 1))) (let ((.cse0 (store .cse2 ULTIMATE.start_main_p3 1))) (and (= (select (store .cse0 ULTIMATE.start_main_p4 1) ULTIMATE.start_main_p5) 0) (= 0 (select .cse1 ULTIMATE.start_main_p2)) (= (select .cse0 ULTIMATE.start_main_p4) 0) (= (select .cse2 ULTIMATE.start_main_p3) 0) (= (store (store (store (store (store (store |v_#memory_int_41| 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) ULTIMATE.start_main_p6 0) |#memory_int|))))) [2019-01-18 14:55:58,304 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (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_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)) (= (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:55:58,421 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:58,423 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-01-18 14:55:58,426 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:58,470 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:58,470 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:76, output treesize:50 [2019-01-18 14:56:00,479 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:00,480 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_42|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4]. (let ((.cse0 (select |v_#memory_int_42| ULTIMATE.start_main_p2))) (and (= (select |v_#memory_int_42| ULTIMATE.start_main_p3) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_42| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_42| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 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)) (= |#memory_int| (store |v_#memory_int_42| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_42| ULTIMATE.start_main_p5) 0))) [2019-01-18 14:56:00,480 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (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)) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (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:56:00,516 INFO L273 TraceCheckUtils]: 0: Hoare triple {595#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {602#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 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)))) (= (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)))} is VALID [2019-01-18 14:56:00,519 INFO L273 TraceCheckUtils]: 1: Hoare triple {602#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 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)))) (= (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)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {606#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (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_p5 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)))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:56:00,520 INFO L273 TraceCheckUtils]: 2: Hoare triple {606#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (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_p5 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)))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {596#false} is VALID [2019-01-18 14:56:00,521 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:56:00,521 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:56:00,541 INFO L273 TraceCheckUtils]: 2: Hoare triple {610#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {596#false} is VALID [2019-01-18 14:56:00,542 INFO L273 TraceCheckUtils]: 1: Hoare triple {614#(<= 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]; {610#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:00,545 INFO L273 TraceCheckUtils]: 0: Hoare triple {595#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {614#(<= 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:56:00,545 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:56:00,566 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:56:00,566 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:56:00,566 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:56:00,567 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:56:00,567 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:56:00,567 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:56:00,578 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:56:00,579 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:56:00,579 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:56:00,579 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:56:00,579 INFO L87 Difference]: Start difference. First operand 23 states and 67 transitions. Second operand 6 states. [2019-01-18 14:56:01,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:01,133 INFO L93 Difference]: Finished difference Result 49 states and 101 transitions. [2019-01-18 14:56:01,133 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:56:01,133 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:56:01,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:56:01,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:56:01,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2019-01-18 14:56:01,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:56:01,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2019-01-18 14:56:01,136 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2019-01-18 14:56:01,253 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:56:01,256 INFO L225 Difference]: With dead ends: 49 [2019-01-18 14:56:01,256 INFO L226 Difference]: Without dead ends: 47 [2019-01-18 14:56:01,257 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:56:01,257 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2019-01-18 14:56:01,365 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 25. [2019-01-18 14:56:01,365 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:56:01,365 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand 25 states. [2019-01-18 14:56:01,365 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 25 states. [2019-01-18 14:56:01,366 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 25 states. [2019-01-18 14:56:01,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:01,369 INFO L93 Difference]: Finished difference Result 47 states and 98 transitions. [2019-01-18 14:56:01,369 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 98 transitions. [2019-01-18 14:56:01,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:01,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:01,370 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 47 states. [2019-01-18 14:56:01,370 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 47 states. [2019-01-18 14:56:01,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:01,373 INFO L93 Difference]: Finished difference Result 47 states and 98 transitions. [2019-01-18 14:56:01,373 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 98 transitions. [2019-01-18 14:56:01,374 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:01,374 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:01,374 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:56:01,374 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:56:01,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-01-18 14:56:01,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 80 transitions. [2019-01-18 14:56:01,376 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 80 transitions. Word has length 3 [2019-01-18 14:56:01,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:56:01,376 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 80 transitions. [2019-01-18 14:56:01,377 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:56:01,377 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 80 transitions. [2019-01-18 14:56:01,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:56:01,377 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:56:01,377 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:56:01,378 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:56:01,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:56:01,378 INFO L82 PathProgramCache]: Analyzing trace with hash 941528, now seen corresponding path program 1 times [2019-01-18 14:56:01,378 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:56:01,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:01,379 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:56:01,379 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:01,379 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:56:01,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:01,470 INFO L273 TraceCheckUtils]: 0: Hoare triple {805#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {807#(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:56:01,471 INFO L273 TraceCheckUtils]: 1: Hoare triple {807#(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]; {808#(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:56:01,472 INFO L273 TraceCheckUtils]: 2: Hoare triple {808#(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]; {809#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:56:01,476 INFO L273 TraceCheckUtils]: 3: Hoare triple {809#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {806#false} is VALID [2019-01-18 14:56:01,477 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:56:01,477 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:56:01,477 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:56:01,477 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:56:01,477 INFO L207 CegarAbsIntRunner]: [0], [18], [22], [27] [2019-01-18 14:56:01,479 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:56:01,479 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:56:03,906 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:03,906 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:03,907 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:03,907 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:03,907 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_751 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_747 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_750) 0) (< v_idx_750 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_750)) (or (<= c_ULTIMATE.start_main_p6 v_idx_741) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_741) v_v_56_5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_742) (< v_idx_742 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_742))) (or (= (select |c_#valid| v_idx_746) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_746) (< v_idx_746 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_751) v_v_82_5) (< v_idx_751 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_744)) (= (select |c_old(#memory_int)| v_idx_748) v_v_4_5) (or (< v_idx_743 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_743))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_745) v_v_62_5) (<= c_ULTIMATE.start_main_p6 v_idx_745)) (or (= (select |c_#memory_int| v_idx_749) v_v_80_5) (<= c_ULTIMATE.start_main_p6 v_idx_749)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_747) v_v_64_5) (< v_idx_747 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:56:03,907 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:03,907 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:56:03,907 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_762 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_758 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_62_5 Int) (v_v_4_5 Int) (v_v_85_5 Int) (v_v_84_5 Int) (v_v_64_5 Int) (v_v_83_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (or (= (select |c_#memory_int| v_idx_760) v_v_83_5) (<= c_ULTIMATE.start_main_p4 v_idx_760)) (= v_v_2_5 (select |c_old(#valid)| v_idx_755)) (or (<= c_ULTIMATE.start_main_p6 v_idx_756) (= (select |c_#valid| v_idx_756) v_v_62_5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_752) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_752) v_v_56_5)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_758) v_v_64_5) (< v_idx_758 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_761) (< v_idx_761 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_761) v_v_84_5)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_759) v_v_4_5) (or (< v_idx_762 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_762) v_v_85_5)) (or (< v_idx_754 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_754) v_v_58_5)) (or (< v_idx_757 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_757) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_757)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_753) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_753)) (< v_idx_753 c_ULTIMATE.start_main_p6)))))} [2019-01-18 14:56:03,908 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:04,392 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:04,392 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:04,572 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_742 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_742) (< v_idx_742 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_742)))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_750 Int)) (or (= (select |#memory_int| v_idx_750) 0) (< v_idx_750 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_750))) (forall ((v_idx_746 Int)) (or (= (select |#valid| v_idx_746) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_746) (< v_idx_746 ULTIMATE.start_main_p6))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:04,573 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:04,573 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:56:04,604 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_753 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_753) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_753)) (< v_idx_753 ULTIMATE.start_main_p6))) (forall ((v_idx_757 Int)) (or (< v_idx_757 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_757) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_757))))} [2019-01-18 14:56:06,953 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:06,953 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:06,953 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:06,953 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:06,953 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_773 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_769 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_62_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_773 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_773) v_v_82_5)) (or (< v_idx_769 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_769) v_v_64_5)) (or (<= c_ULTIMATE.start_main_p6 v_idx_767) (= (select |c_#valid| v_idx_767) v_v_62_5)) (= (select |c_old(#memory_int)| v_idx_770) v_v_4_5) (or (< v_idx_765 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_765) v_v_58_5)) (or (<= c_ULTIMATE.start_main_p6 v_idx_763) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_763) v_v_56_5)) (or (< v_idx_764 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_764) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_764))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_771) (= (select |c_#memory_int| v_idx_771) v_v_80_5)) (or (< v_idx_772 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_772) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_772)) (= v_v_2_5 (select |c_old(#valid)| v_idx_766)) (or (< v_idx_768 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_768)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_768)))))} [2019-01-18 14:56:06,954 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:56:06,954 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:56:06,954 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_784 Int) (v_idx_774 Int) (v_idx_779 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_97_5 Int) (v_v_98_5 Int) (v_v_99_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (= (select |c_old(#memory_int)| v_idx_781) v_v_4_5) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p5 v_idx_782) (= (select |c_#memory_int| v_idx_782) v_v_97_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_774) v_v_56_5) (<= c_ULTIMATE.start_main_p6 v_idx_774)) (or (= v_v_64_5 (select |c_#valid| v_idx_780)) (< v_idx_780 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_778) (= (select |c_#valid| v_idx_778) v_v_62_5)) (or (< v_idx_783 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_783) v_v_98_5) (<= (+ c_ULTIMATE.start_main_p5 1) v_idx_783)) (or (= (select |c_#memory_int| v_idx_784) v_v_99_5) (< v_idx_784 (+ c_ULTIMATE.start_main_p5 1))) (or (< v_idx_776 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_776) v_v_58_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_777)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_775 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_775)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_775)) (or (< v_idx_779 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_779) (= 1 (select |c_#valid| v_idx_779))))))} [2019-01-18 14:56:06,954 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:07,090 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:07,090 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:07,213 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_764 Int)) (or (< v_idx_764 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_764) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_764)))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_768 Int)) (or (< v_idx_768 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_768)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_768))) (forall ((v_idx_772 Int)) (or (< v_idx_772 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_772) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_772))))} [2019-01-18 14:56:07,213 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:56:07,214 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:56:07,261 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_775 Int)) (or (< v_idx_775 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_775)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_775))) (forall ((v_idx_779 Int)) (or (< v_idx_779 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_779) (= 1 (select |#valid| v_idx_779)))))} [2019-01-18 14:56:09,748 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:09,748 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:09,748 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:09,748 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:09,749 WARN L224 ngHoareTripleChecker]: Pre: {2147483589#(forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_795 Int) (v_idx_785 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_790 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_62_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_794) (< v_idx_794 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_794) 0)) (or (<= c_ULTIMATE.start_main_p6 v_idx_785) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_785) v_v_56_5)) (or (= v_v_62_5 (select |c_#valid| v_idx_789)) (<= c_ULTIMATE.start_main_p6 v_idx_789)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_787) v_v_58_5) (< v_idx_787 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_788)) (= (select |c_old(#memory_int)| v_idx_792) v_v_4_5) (or (< v_idx_791 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_5 (select |c_#valid| v_idx_791))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_790) (< v_idx_790 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_790) 1)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_795 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_795) v_v_82_5)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_786)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_786) (< v_idx_786 c_ULTIMATE.start_main_p6)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_793) (= (select |c_#memory_int| v_idx_793) v_v_80_5)))))} [2019-01-18 14:56:09,749 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:09,749 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:09,749 WARN L230 ngHoareTripleChecker]: Post: {2147483588#(forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_796 Int) (v_idx_801 Int) (v_idx_802 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_121_5 Int) (v_v_122_5 Int) (v_v_56_5 Int) (v_v_120_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (= v_v_2_5 (select |c_old(#valid)| v_idx_799)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_798) v_v_58_5) (< v_idx_798 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_801) (= (select |c_#valid| v_idx_801) 1) (< v_idx_801 c_ULTIMATE.start_main_p6)) (<= (+ v_v_121_5 1) 0) (= (select |c_old(#memory_int)| v_idx_803) v_v_4_5) (or (< v_idx_797 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_797) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_797))) (or (= v_v_121_5 (select |c_#memory_int| v_idx_805)) (< v_idx_805 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_805)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_796) v_v_56_5) (<= c_ULTIMATE.start_main_p6 v_idx_796)) (or (= (select |c_#valid| v_idx_802) v_v_64_5) (< v_idx_802 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_804) v_v_120_5) (<= c_ULTIMATE.start_main_p1 v_idx_804)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_121_5 (- v_v_121_5)) (- 2)) (or (= v_v_122_5 (select |c_#memory_int| v_idx_806)) (< v_idx_806 (+ c_ULTIMATE.start_main_p1 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_800) (= (select |c_#valid| v_idx_800) v_v_62_5)))))} [2019-01-18 14:56:09,749 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:10,223 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:10,224 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:10,379 WARN L270 ngHoareTripleChecker]: Pre: {2147483589#(and (forall ((v_idx_794 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_794) (< v_idx_794 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_794) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_786 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_786)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_786) (< v_idx_786 ULTIMATE.start_main_p6))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_790 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_790) (< v_idx_790 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_790) 1))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:10,380 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:10,380 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:10,429 WARN L276 ngHoareTripleChecker]: Post: {2147483588#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_prenex_15 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (<= (+ (* 2 (select |#memory_int| v_prenex_15)) 2) 0) (< v_prenex_15 ULTIMATE.start_main_p1))) (forall ((v_idx_797 Int)) (or (< v_idx_797 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_797) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_797)))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_805 Int)) (or (< v_idx_805 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_805) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_805))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_801 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_801) (= (select |#valid| v_idx_801) 1) (< v_idx_801 ULTIMATE.start_main_p6))))} [2019-01-18 14:56:12,945 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:12,945 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:12,945 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:12,945 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:12,946 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_812 Int) (v_idx_813 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_816) (< v_idx_816 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_816) 0)) (or (= (select |c_#memory_int| v_idx_815) v_v_80_5) (<= c_ULTIMATE.start_main_p6 v_idx_815)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_808)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_808) (< v_idx_808 c_ULTIMATE.start_main_p6)) (= (select |c_old(#memory_int)| v_idx_814) v_v_4_5) (or (= (select |c_#valid| v_idx_811) v_v_62_5) (<= c_ULTIMATE.start_main_p6 v_idx_811)) (or (< v_idx_809 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_809) v_v_58_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_810)) (or (<= c_ULTIMATE.start_main_p6 v_idx_807) (= v_v_56_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_807))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_813 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_813) v_v_64_5)) (or (= (select |c_#valid| v_idx_812) 1) (< v_idx_812 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_812)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_817) v_v_82_5) (< v_idx_817 (+ c_ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_820 Int) (v_idx_823 Int) (v_idx_824 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_4_5 Int) (v_v_85_5 Int) (v_v_62_5 Int) (v_v_84_5 Int) (v_v_64_5 Int) (v_v_83_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_824 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_824) v_v_64_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_825)) (or (< v_idx_827 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_827) v_v_84_5) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_827)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_819) (< v_idx_819 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_819))) (= v_v_2_5 (select |c_old(#valid)| v_idx_821)) (or (< v_idx_828 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_828) v_v_85_5)) (or (= 1 (select |c_#valid| v_idx_823)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_823) (< v_idx_823 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_818) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_818) v_v_56_5)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_820) v_v_58_5) (< v_idx_820 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p4 v_idx_826) (= (select |c_#memory_int| v_idx_826) v_v_83_5)) (or (= (select |c_#valid| v_idx_822) v_v_62_5) (<= c_ULTIMATE.start_main_p6 v_idx_822))))))} [2019-01-18 14:56:12,946 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:12,946 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:56:12,946 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_834 Int) (v_idx_835 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int) (v_idx_829 Int)) (exists ((v_v_62_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_125_5 Int) (v_v_123_5 Int) (v_v_124_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_833) (= (select |c_#valid| v_idx_833) v_v_62_5)) (or (<= c_ULTIMATE.start_main_p4 v_idx_837) (= (select |c_#memory_int| v_idx_837) v_v_123_5)) (or (<= c_ULTIMATE.start_main_p6 v_idx_829) (= v_v_56_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_829))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_834) (= (select |c_#valid| v_idx_834) 1) (< v_idx_834 c_ULTIMATE.start_main_p6)) (= v_v_2_5 (select |c_old(#valid)| v_idx_832)) (= (select |c_old(#memory_int)| v_idx_836) v_v_4_5) (or (< v_idx_839 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_839) v_v_125_5)) (or (= (select |c_#valid| v_idx_835) v_v_64_5) (< v_idx_835 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_830) 0) (< v_idx_830 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_830)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_58_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_831)) (< v_idx_831 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_838) (= (select |c_#memory_int| v_idx_838) v_v_124_5) (< v_idx_838 c_ULTIMATE.start_main_p4)))))} [2019-01-18 14:56:12,946 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:13,463 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:13,463 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:21,597 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:21,597 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_812 Int) (v_idx_813 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_816) (< v_idx_816 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_816) 0)) (or (= (select |#memory_int| v_idx_815) v_v_80_5) (<= ULTIMATE.start_main_p6 v_idx_815)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_808)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_808) (< v_idx_808 ULTIMATE.start_main_p6)) (= (select |old(#memory_int)| v_idx_814) v_v_4_5) (or (= (select |#valid| v_idx_811) v_v_62_5) (<= ULTIMATE.start_main_p6 v_idx_811)) (or (< v_idx_809 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_809) v_v_58_5)) (= v_v_2_5 (select |old(#valid)| v_idx_810)) (or (<= ULTIMATE.start_main_p6 v_idx_807) (= v_v_56_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_807))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_813 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_813) v_v_64_5)) (or (= (select |#valid| v_idx_812) 1) (< v_idx_812 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_812)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_817) v_v_82_5) (< v_idx_817 (+ ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_820 Int) (v_idx_823 Int) (v_idx_824 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_4_5 Int) (v_v_85_5 Int) (v_v_62_5 Int) (v_v_84_5 Int) (v_v_64_5 Int) (v_v_83_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_824 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_824) v_v_64_5)) (= v_v_4_5 (select |old(#memory_int)| v_idx_825)) (or (< v_idx_827 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_827) v_v_84_5) (<= (+ ULTIMATE.start_main_p4 1) v_idx_827)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_819) (< v_idx_819 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_819))) (= v_v_2_5 (select |old(#valid)| v_idx_821)) (or (< v_idx_828 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_828) v_v_85_5)) (or (= 1 (select |#valid| v_idx_823)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_823) (< v_idx_823 ULTIMATE.start_main_p6)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_818) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_818) v_v_56_5)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_820) v_v_58_5) (< v_idx_820 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p4 v_idx_826) (= (select |#memory_int| v_idx_826) v_v_83_5)) (or (= (select |#valid| v_idx_822) v_v_62_5) (<= ULTIMATE.start_main_p6 v_idx_822))))))} [2019-01-18 14:56:21,598 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:21,598 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:56:21,762 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (forall ((v_idx_834 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_834) (= (select |#valid| v_idx_834) 1) (< v_idx_834 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_830 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_830) 0) (< v_idx_830 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_830))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:24,616 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:24,617 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:24,617 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:24,617 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:24,617 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_850 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_846 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (= (select |c_old(#memory_int)| v_idx_847) v_v_4_5) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_841) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_841) 0) (< v_idx_841 c_ULTIMATE.start_main_p6)) (or (= (select |c_#memory_int| v_idx_850) v_v_82_5) (< v_idx_850 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_848) (= (select |c_#memory_int| v_idx_848) v_v_80_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_840) v_v_56_5) (<= c_ULTIMATE.start_main_p6 v_idx_840)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_845) (< v_idx_845 c_ULTIMATE.start_main_p6) (= 1 (select |c_#valid| v_idx_845))) (or (< v_idx_842 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_842))) (or (= (select |c_#memory_int| v_idx_849) 0) (< v_idx_849 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_849)) (= v_v_2_5 (select |c_old(#valid)| v_idx_843)) (or (= (select |c_#valid| v_idx_844) v_v_62_5) (<= c_ULTIMATE.start_main_p6 v_idx_844)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_846 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_5 (select |c_#valid| v_idx_846))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_861 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_857 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_85_5 Int) (v_v_62_5 Int) (v_v_4_5 Int) (v_v_84_5 Int) (v_v_64_5 Int) (v_v_83_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (or (< v_idx_857 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_857) v_v_64_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_853) v_v_58_5) (< v_idx_853 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_861) v_v_85_5) (< v_idx_861 (+ c_ULTIMATE.start_main_p4 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_855) (= v_v_62_5 (select |c_#valid| v_idx_855))) (= v_v_2_5 (select |c_old(#valid)| v_idx_854)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_852) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_852) 0) (< v_idx_852 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_851) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_851) v_v_56_5)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_860) (< v_idx_860 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_860) v_v_84_5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_856) (= 1 (select |c_#valid| v_idx_856)) (< v_idx_856 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p4 v_idx_859) (= (select |c_#memory_int| v_idx_859) v_v_83_5)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_858) v_v_4_5)))))} [2019-01-18 14:56:24,617 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:56:24,618 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:56:24,618 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_872 Int) (v_idx_862 Int) (v_idx_867 Int) (v_idx_868 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_62_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_169_5 Int) (v_v_167_5 Int) (v_v_168_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (= v_v_2_5 (select |c_old(#valid)| v_idx_865)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_872 (+ c_ULTIMATE.start_main_p5 1)) (= v_v_169_5 (select |c_#memory_int| v_idx_872))) (or (<= c_ULTIMATE.start_main_p6 v_idx_866) (= (select |c_#valid| v_idx_866) v_v_62_5)) (or (< v_idx_867 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_867) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_867)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_869)) (or (<= (+ c_ULTIMATE.start_main_p5 1) v_idx_871) (= v_v_168_5 (select |c_#memory_int| v_idx_871)) (< v_idx_871 c_ULTIMATE.start_main_p5)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_864 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_864))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_863) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_863) (< v_idx_863 c_ULTIMATE.start_main_p6)) (or (= (select |c_#valid| v_idx_868) v_v_64_5) (< v_idx_868 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_167_5 (select |c_#memory_int| v_idx_870)) (<= c_ULTIMATE.start_main_p5 v_idx_870)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_862) v_v_56_5) (<= c_ULTIMATE.start_main_p6 v_idx_862)))))} [2019-01-18 14:56:24,618 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:25,104 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:25,104 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:33,215 WARN L181 SmtUtils]: Spent 8.11 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:33,215 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_850 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_846 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_64_5 Int) (v_v_80_5 Int) (v_v_82_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (= (select |old(#memory_int)| v_idx_847) v_v_4_5) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_841) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_841) 0) (< v_idx_841 ULTIMATE.start_main_p6)) (or (= (select |#memory_int| v_idx_850) v_v_82_5) (< v_idx_850 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_main_p6 v_idx_848) (= (select |#memory_int| v_idx_848) v_v_80_5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_840) v_v_56_5) (<= ULTIMATE.start_main_p6 v_idx_840)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_845) (< v_idx_845 ULTIMATE.start_main_p6) (= 1 (select |#valid| v_idx_845))) (or (< v_idx_842 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_58_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_842))) (or (= (select |#memory_int| v_idx_849) 0) (< v_idx_849 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_849)) (= v_v_2_5 (select |old(#valid)| v_idx_843)) (or (= (select |#valid| v_idx_844) v_v_62_5) (<= ULTIMATE.start_main_p6 v_idx_844)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_846 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_64_5 (select |#valid| v_idx_846))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_861 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_857 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_85_5 Int) (v_v_62_5 Int) (v_v_4_5 Int) (v_v_84_5 Int) (v_v_64_5 Int) (v_v_83_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_58_5 Int)) (and (or (< v_idx_857 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_857) v_v_64_5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_853) v_v_58_5) (< v_idx_853 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |#memory_int| v_idx_861) v_v_85_5) (< v_idx_861 (+ ULTIMATE.start_main_p4 1))) (or (<= ULTIMATE.start_main_p6 v_idx_855) (= v_v_62_5 (select |#valid| v_idx_855))) (= v_v_2_5 (select |old(#valid)| v_idx_854)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_852) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_852) 0) (< v_idx_852 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p6 v_idx_851) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_851) v_v_56_5)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_860) (< v_idx_860 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_860) v_v_84_5)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_856) (= 1 (select |#valid| v_idx_856)) (< v_idx_856 ULTIMATE.start_main_p6)) (or (<= ULTIMATE.start_main_p4 v_idx_859) (= (select |#memory_int| v_idx_859) v_v_83_5)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_858) v_v_4_5)))))} [2019-01-18 14:56:33,215 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:56:33,216 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:56:33,245 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_867 Int)) (or (< v_idx_867 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_867) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_867))) (forall ((v_idx_863 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_863) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_863) (< v_idx_863 ULTIMATE.start_main_p6))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:34,982 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:56:34,983 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:56:34,983 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:56:34,983 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:56:34,983 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:56:34,984 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 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:56:34,992 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:56:34,992 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:56:34,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:35,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:35,002 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:56:35,050 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 21 treesize of output 24 [2019-01-18 14:56:35,072 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 24 treesize of output 30 [2019-01-18 14:56:35,082 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,084 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,085 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 26 treesize of output 40 [2019-01-18 14:56:35,096 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,097 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,098 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,099 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 28 treesize of output 54 [2019-01-18 14:56:35,116 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,117 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,118 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,119 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,120 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 72 [2019-01-18 14:56:35,145 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 0 case distinctions, treesize of input 32 treesize of output 71 [2019-01-18 14:56:35,148 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,183 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,209 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,232 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,248 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,264 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,299 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,300 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 48 treesize of output 54 [2019-01-18 14:56:35,386 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,387 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,389 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 41 treesize of output 53 [2019-01-18 14:56:35,449 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,451 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,452 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,453 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,455 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 61 [2019-01-18 14:56:35,541 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,543 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,544 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,546 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,547 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,548 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,549 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 41 [2019-01-18 14:56:35,551 INFO L267 ElimStorePlain]: Start of recursive call 11: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,571 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,588 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,609 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,658 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:56:35,659 INFO L202 ElimStorePlain]: Needed 11 recursive calls to eliminate 5 variables, input treesize:72, output treesize:71 [2019-01-18 14:56:35,670 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:35,670 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_44|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6, |v_#valid_12|]. (let ((.cse2 (store |v_#valid_12| ULTIMATE.start_main_p1 1))) (let ((.cse0 (store .cse2 ULTIMATE.start_main_p2 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p3 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p3)) (= 0 (select (store .cse1 ULTIMATE.start_main_p4 1) ULTIMATE.start_main_p5)) (= 0 (select .cse2 ULTIMATE.start_main_p2)) (= 0 (select .cse1 ULTIMATE.start_main_p4)) (= |#memory_int| (store (store (store (store (store (store |v_#memory_int_44| 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) ULTIMATE.start_main_p6 0)))))) [2019-01-18 14:56:35,670 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:56:35,806 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,807 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 66 [2019-01-18 14:56:35,811 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:35,851 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:56:35,852 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:76, output treesize:50 [2019-01-18 14:56:35,861 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:35,862 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_45|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_45| ULTIMATE.start_main_p4))) (and (= (select |v_#memory_int_45| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_45| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (= |#memory_int| (store |v_#memory_int_45| ULTIMATE.start_main_p4 (+ .cse0 (- 1)))) (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)) (= (select |v_#memory_int_45| ULTIMATE.start_main_p3) 0) (= (select |v_#memory_int_45| ULTIMATE.start_main_p2) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-18 14:56:35,862 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_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 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)) (= (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:56:35,945 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,946 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,947 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,949 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,950 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,951 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,952 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:35,954 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 13 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 80 [2019-01-18 14:56:35,961 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:36,016 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:56:36,017 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:62, output treesize:40 [2019-01-18 14:56:36,120 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:36,120 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_46|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (let ((.cse0 (select |v_#memory_int_46| ULTIMATE.start_main_p5))) (and (not (= ULTIMATE.start_main_p3 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)) (= (select |v_#memory_int_46| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_46| ULTIMATE.start_main_p2)) (= (+ (select |v_#memory_int_46| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 .cse0) (= (store |v_#memory_int_46| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (= 0 (select |v_#memory_int_46| ULTIMATE.start_main_p1)))) [2019-01-18 14:56:36,120 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 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:56:36,155 INFO L273 TraceCheckUtils]: 0: Hoare triple {805#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {813#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (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_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (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:56:36,158 INFO L273 TraceCheckUtils]: 1: Hoare triple {813#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (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_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (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]; {817#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (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_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (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))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-18 14:56:36,160 INFO L273 TraceCheckUtils]: 2: Hoare triple {817#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (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_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (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))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {821#(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))) (exists ((ULTIMATE.start_main_p5 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))) (= (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:56:36,161 INFO L273 TraceCheckUtils]: 3: Hoare triple {821#(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))) (exists ((ULTIMATE.start_main_p5 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))) (= (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); {806#false} is VALID [2019-01-18 14:56:36,161 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:56:36,161 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:56:36,213 INFO L273 TraceCheckUtils]: 3: Hoare triple {825#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {806#false} is VALID [2019-01-18 14:56:36,215 INFO L273 TraceCheckUtils]: 2: Hoare triple {829#(<= 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]; {825#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:36,217 INFO L273 TraceCheckUtils]: 1: Hoare triple {833#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {829#(<= 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:56:36,220 INFO L273 TraceCheckUtils]: 0: Hoare triple {805#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {833#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:36,220 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:56:36,239 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:56:36,240 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 14:56:36,240 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:56:36,240 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:56:36,240 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:56:36,240 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:56:36,256 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:56:36,257 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:56:36,257 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:56:36,257 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=66, Unknown=0, NotChecked=0, Total=110 [2019-01-18 14:56:36,258 INFO L87 Difference]: Start difference. First operand 25 states and 80 transitions. Second operand 8 states. [2019-01-18 14:56:38,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:38,249 INFO L93 Difference]: Finished difference Result 61 states and 138 transitions. [2019-01-18 14:56:38,249 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-01-18 14:56:38,249 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:56:38,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:56:38,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:56:38,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2019-01-18 14:56:38,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:56:38,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2019-01-18 14:56:38,252 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2019-01-18 14:56:38,387 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:56:38,390 INFO L225 Difference]: With dead ends: 61 [2019-01-18 14:56:38,390 INFO L226 Difference]: Without dead ends: 57 [2019-01-18 14:56:38,391 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=62, Invalid=94, Unknown=0, NotChecked=0, Total=156 [2019-01-18 14:56:38,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2019-01-18 14:56:38,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 29. [2019-01-18 14:56:38,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:56:38,504 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand 29 states. [2019-01-18 14:56:38,504 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand 29 states. [2019-01-18 14:56:38,505 INFO L87 Difference]: Start difference. First operand 57 states. Second operand 29 states. [2019-01-18 14:56:38,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:38,508 INFO L93 Difference]: Finished difference Result 57 states and 131 transitions. [2019-01-18 14:56:38,508 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 131 transitions. [2019-01-18 14:56:38,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:38,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:38,509 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 57 states. [2019-01-18 14:56:38,509 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 57 states. [2019-01-18 14:56:38,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:38,512 INFO L93 Difference]: Finished difference Result 57 states and 131 transitions. [2019-01-18 14:56:38,513 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 131 transitions. [2019-01-18 14:56:38,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:38,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:38,513 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:56:38,514 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:56:38,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2019-01-18 14:56:38,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 98 transitions. [2019-01-18 14:56:38,516 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 98 transitions. Word has length 4 [2019-01-18 14:56:38,516 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:56:38,516 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 98 transitions. [2019-01-18 14:56:38,516 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:56:38,516 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 98 transitions. [2019-01-18 14:56:38,516 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:56:38,517 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:56:38,517 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:56:38,517 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:56:38,517 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:56:38,517 INFO L82 PathProgramCache]: Analyzing trace with hash 941590, now seen corresponding path program 1 times [2019-01-18 14:56:38,518 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:56:38,518 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:38,518 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:56:38,519 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:38,519 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:56:38,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:38,658 INFO L273 TraceCheckUtils]: 0: Hoare triple {1068#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6;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;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_p6 := 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];#memory_int := #memory_int[main_p6 := 0]; {1070#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 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:56:38,660 INFO L273 TraceCheckUtils]: 1: Hoare triple {1070#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 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]; {1071#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)))} is VALID [2019-01-18 14:56:38,664 INFO L273 TraceCheckUtils]: 2: Hoare triple {1071#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {1072#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:56:38,665 INFO L273 TraceCheckUtils]: 3: Hoare triple {1072#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {1069#false} is VALID [2019-01-18 14:56:38,665 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:56:38,665 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:56:38,666 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:56:38,666 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:56:38,666 INFO L207 CegarAbsIntRunner]: [0], [18], [24], [27] [2019-01-18 14:56:38,667 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:56:38,667 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:56:41,187 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:41,188 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:41,188 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:41,188 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:41,188 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(forall ((v_idx_930 Int) (v_idx_922 Int) (v_idx_923 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_926 Int) (v_idx_927 Int) (v_idx_924 Int) (v_idx_925 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#valid| v_idx_928) v_v_64_6) (< v_idx_928 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_931) (< v_idx_931 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_931) 0)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_929)) (or (= (select |c_#memory_int| v_idx_930) v_v_80_6) (<= c_ULTIMATE.start_main_p6 v_idx_930)) (= v_v_2_6 (select |c_old(#valid)| v_idx_925)) (or (< v_idx_924 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_924) v_v_58_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_922) v_v_56_6) (<= c_ULTIMATE.start_main_p6 v_idx_922)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_923) (< v_idx_923 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_923))) (or (< v_idx_932 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_932) v_v_82_6)) (or (< v_idx_927 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_927) (= 1 (select |c_#valid| v_idx_927))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_926) (= (select |c_#valid| v_idx_926) v_v_62_6)))))} [2019-01-18 14:56:41,188 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:41,188 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:56:41,189 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_933 Int) (v_idx_934 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_937 Int) (v_idx_938 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_939 Int)) (exists ((v_v_84_6 Int) (v_v_62_6 Int) (v_v_4_6 Int) (v_v_83_6 Int) (v_v_85_6 Int) (v_v_64_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (= (select |c_#memory_int| v_idx_943) v_v_85_6) (< v_idx_943 (+ c_ULTIMATE.start_main_p4 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_937) (= (select |c_#valid| v_idx_937) v_v_62_6)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_934)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_934) (< v_idx_934 c_ULTIMATE.start_main_p6)) (or (= (select |c_#valid| v_idx_939) v_v_64_6) (< v_idx_939 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_933) v_v_56_6) (<= c_ULTIMATE.start_main_p6 v_idx_933)) (= v_v_2_6 (select |c_old(#valid)| v_idx_936)) (or (= (select |c_#valid| v_idx_938) 1) (< v_idx_938 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_938)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_940)) (or (<= c_ULTIMATE.start_main_p4 v_idx_941) (= v_v_83_6 (select |c_#memory_int| v_idx_941))) (or (< v_idx_935 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_58_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_935))) (or (< v_idx_942 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_942) (= (select |c_#memory_int| v_idx_942) v_v_84_6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:56:41,189 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:41,726 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:41,726 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:41,916 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_927 Int)) (or (< v_idx_927 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_927) (= 1 (select |#valid| v_idx_927)))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_931 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_931) (< v_idx_931 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_931) 0))) (forall ((v_idx_923 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_923) (< v_idx_923 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_923)))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:41,916 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:41,916 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:56:41,948 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (forall ((v_idx_938 Int)) (or (= (select |#valid| v_idx_938) 1) (< v_idx_938 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_938))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_934 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_934)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_934) (< v_idx_934 ULTIMATE.start_main_p6))))} [2019-01-18 14:56:44,320 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:44,320 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:44,321 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:44,321 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:44,321 WARN L224 ngHoareTripleChecker]: Pre: {2147483577#(forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_944 Int) (v_idx_945 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_948 Int) (v_idx_949 Int) (v_idx_946 Int) (v_idx_947 Int)) (exists ((v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_946 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_946) v_v_58_6)) (or (= (select |c_#valid| v_idx_950) v_v_64_6) (< v_idx_950 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |c_#valid| v_idx_949)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_949) (< v_idx_949 c_ULTIMATE.start_main_p6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_947)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_948) v_v_62_6) (<= c_ULTIMATE.start_main_p6 v_idx_948)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_951)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_944) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_944) v_v_56_6)) (or (< v_idx_945 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_945) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_945))) (or (= (select |c_#memory_int| v_idx_954) v_v_82_6) (< v_idx_954 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_952) v_v_80_6) (<= c_ULTIMATE.start_main_p6 v_idx_952)) (or (= (select |c_#memory_int| v_idx_953) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_953) (< v_idx_953 c_ULTIMATE.start_main_p6)))))} [2019-01-18 14:56:44,321 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:56:44,321 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:56:44,321 WARN L230 ngHoareTripleChecker]: Post: {2147483576#(forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_955 Int) (v_idx_956 Int) (v_idx_964 Int) (v_idx_965 Int) (v_idx_959 Int) (v_idx_957 Int) (v_idx_958 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_963) (= (select |c_#memory_int| v_idx_963) v_v_80_6)) (or (= (select |c_#memory_int| v_idx_965) v_v_82_6) (< v_idx_965 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_956 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_956) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_956))) (or (= v_v_64_6 (select |c_#valid| v_idx_961)) (< v_idx_961 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_6 (select |c_old(#valid)| v_idx_958)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_957 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_957) v_v_58_6)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_962)) (or (= (select |c_#memory_int| v_idx_964) (- 1)) (< v_idx_964 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_964)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_959) (= (select |c_#valid| v_idx_959) v_v_62_6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_960) (= 1 (select |c_#valid| v_idx_960)) (< v_idx_960 c_ULTIMATE.start_main_p6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_955) v_v_56_6) (<= c_ULTIMATE.start_main_p6 v_idx_955)))))} [2019-01-18 14:56:44,322 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:44,749 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:44,749 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:44,946 WARN L270 ngHoareTripleChecker]: Pre: {2147483577#(and (forall ((v_idx_953 Int)) (or (= (select |#memory_int| v_idx_953) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_953) (< v_idx_953 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_945 Int)) (or (< v_idx_945 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_945) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_945)))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_949 Int)) (or (= 1 (select |#valid| v_idx_949)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_949) (< v_idx_949 ULTIMATE.start_main_p6))))} [2019-01-18 14:56:44,946 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:56:44,946 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:56:44,975 WARN L276 ngHoareTripleChecker]: Post: {2147483576#(and (forall ((v_idx_964 Int)) (or (= (select |#memory_int| v_idx_964) (- 1)) (< v_idx_964 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_964))) (forall ((v_idx_960 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_960) (= 1 (select |#valid| v_idx_960)) (< v_idx_960 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_956 Int)) (or (< v_idx_956 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_956) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_956)))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:56:47,601 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:47,601 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:47,602 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:47,602 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:47,602 WARN L224 ngHoareTripleChecker]: Pre: {2147483575#(forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_966 Int) (v_idx_967 Int) (v_idx_975 Int) (v_idx_976 Int) (v_idx_968 Int) (v_idx_969 Int) (v_idx_970 Int)) (exists ((v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (= v_v_2_6 (select |c_old(#valid)| v_idx_969)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_973)) (or (= v_v_62_6 (select |c_#valid| v_idx_970)) (<= c_ULTIMATE.start_main_p6 v_idx_970)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= 1 (select |c_#valid| v_idx_971)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_971) (< v_idx_971 c_ULTIMATE.start_main_p6)) (or (< v_idx_972 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_972) v_v_64_6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_966) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_966) v_v_56_6)) (or (= (select |c_#memory_int| v_idx_974) v_v_80_6) (<= c_ULTIMATE.start_main_p6 v_idx_974)) (or (= (select |c_#memory_int| v_idx_975) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_975) (< v_idx_975 c_ULTIMATE.start_main_p6)) (or (< v_idx_968 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_968) v_v_58_6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_967)) (< v_idx_967 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_967)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_976 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_976) v_v_82_6)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:56:47,602 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:47,602 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:47,602 WARN L230 ngHoareTripleChecker]: Post: {2147483574#(forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_977 Int) (v_idx_978 Int) (v_idx_986 Int) (v_idx_987 Int) (v_idx_979 Int) (v_idx_980 Int) (v_idx_981 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_124_6 Int) (v_v_58_6 Int) (v_v_122_6 Int) (v_v_123_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (= (select |c_#memory_int| v_idx_986) v_v_123_6) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_986) (< v_idx_986 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_983 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_983) v_v_64_6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_977) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_977) v_v_56_6)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_984)) (or (< v_idx_979 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_979) v_v_58_6)) (<= (- v_v_123_6 (- v_v_123_6)) (- 2)) (or (< v_idx_982 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_982) (= (select |c_#valid| v_idx_982) 1)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_985) (= (select |c_#memory_int| v_idx_985) v_v_122_6)) (<= (+ v_v_123_6 1) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_987 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_124_6 (select |c_#memory_int| v_idx_987))) (or (< v_idx_978 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_978) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_978))) (= v_v_2_6 (select |c_old(#valid)| v_idx_980)) (or (<= c_ULTIMATE.start_main_p6 v_idx_981) (= (select |c_#valid| v_idx_981) v_v_62_6)))))} [2019-01-18 14:56:47,602 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:47,678 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:47,678 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:47,704 WARN L270 ngHoareTripleChecker]: Pre: {2147483575#(and (forall ((v_idx_971 Int)) (or (= 1 (select |#valid| v_idx_971)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_971) (< v_idx_971 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_967 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_967)) (< v_idx_967 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_967))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_975 Int)) (or (= (select |#memory_int| v_idx_975) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_975) (< v_idx_975 ULTIMATE.start_main_p6))))} [2019-01-18 14:56:47,704 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:47,705 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:47,829 WARN L276 ngHoareTripleChecker]: Post: {2147483574#(and (forall ((v_idx_986 Int)) (or (<= (+ (select |#memory_int| v_idx_986) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_986) (< v_idx_986 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_982 Int)) (or (< v_idx_982 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_982) (= (select |#valid| v_idx_982) 1))) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_16 Int)) (or (< v_prenex_16 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_16) (<= (+ (* 2 (select |#memory_int| v_prenex_16)) 2) 0))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_978 Int)) (or (< v_idx_978 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_978) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_978)))))} [2019-01-18 14:56:50,288 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:50,288 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:50,288 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:50,288 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:50,289 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(or (forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1003 Int) (v_idx_1002 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_84_6 Int) (v_v_83_6 Int) (v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_85_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_1004 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1004) (= 1 (select |c_#valid| v_idx_1004))) (or (= (select |c_#memory_int| v_idx_1008) v_v_84_6) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_1008) (< v_idx_1008 c_ULTIMATE.start_main_p4)) (= v_v_2_6 (select |c_old(#valid)| v_idx_1002)) (or (= v_v_56_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_999)) (<= c_ULTIMATE.start_main_p6 v_idx_999)) (or (<= c_ULTIMATE.start_main_p4 v_idx_1007) (= v_v_83_6 (select |c_#memory_int| v_idx_1007))) (or (= (select |c_#valid| v_idx_1005) v_v_64_6) (< v_idx_1005 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p6 v_idx_1003) (= (select |c_#valid| v_idx_1003) v_v_62_6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1001 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1001) v_v_58_6)) (or (= (select |c_#memory_int| v_idx_1009) v_v_85_6) (< v_idx_1009 (+ c_ULTIMATE.start_main_p4 1))) (or (< v_idx_1000 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1000) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1000))) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_1006))))) (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_993 Int) (v_idx_994 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_997 Int) (v_idx_998 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_994 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_994) v_v_64_6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_988) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_988) v_v_56_6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_997) (= (select |c_#memory_int| v_idx_997) 0) (< v_idx_997 c_ULTIMATE.start_main_p6)) (= (select |c_old(#memory_int)| v_idx_995) v_v_4_6) (or (< v_idx_989 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_989)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_989)) (or (= (select |c_#valid| v_idx_992) v_v_62_6) (<= c_ULTIMATE.start_main_p6 v_idx_992)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_990 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_990) v_v_58_6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_998 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_998) v_v_82_6)) (or (= (select |c_#memory_int| v_idx_996) v_v_80_6) (<= c_ULTIMATE.start_main_p6 v_idx_996)) (= v_v_2_6 (select |c_old(#valid)| v_idx_991)) (or (= (select |c_#valid| v_idx_993) 1) (< v_idx_993 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_993))))))} [2019-01-18 14:56:50,289 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:50,289 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:56:50,289 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(forall ((v_idx_1016 Int) (v_idx_1015 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1020 Int) (v_idx_1019 Int) (v_idx_1018 Int) (v_idx_1017 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_126_6 Int) (v_v_127_6 Int) (v_v_125_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (< v_idx_1011 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1011)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1011)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_1017)) (or (<= c_ULTIMATE.start_main_p6 v_idx_1014) (= v_v_62_6 (select |c_#valid| v_idx_1014))) (= (select |c_old(#valid)| v_idx_1013) v_v_2_6) (or (< v_idx_1012 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1012) v_v_58_6)) (or (= v_v_64_6 (select |c_#valid| v_idx_1016)) (< v_idx_1016 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p4 v_idx_1018) (= v_v_125_6 (select |c_#memory_int| v_idx_1018))) (or (= (select |c_#memory_int| v_idx_1020) v_v_127_6) (< v_idx_1020 (+ c_ULTIMATE.start_main_p4 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1019 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_1019) v_v_126_6) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_1019)) (or (= 1 (select |c_#valid| v_idx_1015)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1015) (< v_idx_1015 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_1010) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1010) v_v_56_6)))))} [2019-01-18 14:56:50,289 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:50,474 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:50,475 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:58,534 WARN L181 SmtUtils]: Spent 8.06 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:58,534 WARN L270 ngHoareTripleChecker]: Pre: {2147483573#(or (forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1003 Int) (v_idx_1002 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_84_6 Int) (v_v_83_6 Int) (v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_85_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (< v_idx_1004 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1004) (= 1 (select |#valid| v_idx_1004))) (or (= (select |#memory_int| v_idx_1008) v_v_84_6) (<= (+ ULTIMATE.start_main_p4 1) v_idx_1008) (< v_idx_1008 ULTIMATE.start_main_p4)) (= v_v_2_6 (select |old(#valid)| v_idx_1002)) (or (= v_v_56_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_999)) (<= ULTIMATE.start_main_p6 v_idx_999)) (or (<= ULTIMATE.start_main_p4 v_idx_1007) (= v_v_83_6 (select |#memory_int| v_idx_1007))) (or (= (select |#valid| v_idx_1005) v_v_64_6) (< v_idx_1005 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p6 v_idx_1003) (= (select |#valid| v_idx_1003) v_v_62_6)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_1001 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1001) v_v_58_6)) (or (= (select |#memory_int| v_idx_1009) v_v_85_6) (< v_idx_1009 (+ ULTIMATE.start_main_p4 1))) (or (< v_idx_1000 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1000) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1000))) (= v_v_4_6 (select |old(#memory_int)| v_idx_1006))))) (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_993 Int) (v_idx_994 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_997 Int) (v_idx_998 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_994 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_994) v_v_64_6)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (<= ULTIMATE.start_main_p6 v_idx_988) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_988) v_v_56_6)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_997) (= (select |#memory_int| v_idx_997) 0) (< v_idx_997 ULTIMATE.start_main_p6)) (= (select |old(#memory_int)| v_idx_995) v_v_4_6) (or (< v_idx_989 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_989)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_989)) (or (= (select |#valid| v_idx_992) v_v_62_6) (<= ULTIMATE.start_main_p6 v_idx_992)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_990 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_990) v_v_58_6)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_998 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_998) v_v_82_6)) (or (= (select |#memory_int| v_idx_996) v_v_80_6) (<= ULTIMATE.start_main_p6 v_idx_996)) (= v_v_2_6 (select |old(#valid)| v_idx_991)) (or (= (select |#valid| v_idx_993) 1) (< v_idx_993 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_993))))))} [2019-01-18 14:56:58,534 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:58,534 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:56:58,562 WARN L276 ngHoareTripleChecker]: Post: {2147483572#(and (forall ((v_idx_1015 Int)) (or (= 1 (select |#valid| v_idx_1015)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1015) (< v_idx_1015 ULTIMATE.start_main_p6))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_1011 Int)) (or (< v_idx_1011 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1011)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1011))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr))} [2019-01-18 14:57:01,841 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:57:01,841 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:57:01,842 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:57:01,842 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:57:01,842 WARN L224 ngHoareTripleChecker]: Pre: {2147483571#(or (forall ((v_idx_1027 Int) (v_idx_1026 Int) (v_idx_1025 Int) (v_idx_1024 Int) (v_idx_1023 Int) (v_idx_1022 Int) (v_idx_1021 Int) (v_idx_1031 Int) (v_idx_1030 Int) (v_idx_1029 Int) (v_idx_1028 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_1027 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1027) v_v_64_6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#memory_int| v_idx_1029) v_v_80_6) (<= c_ULTIMATE.start_main_p6 v_idx_1029)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1030) (< v_idx_1030 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_1030) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1021) v_v_56_6) (<= c_ULTIMATE.start_main_p6 v_idx_1021)) (or (< v_idx_1026 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1026) (= 1 (select |c_#valid| v_idx_1026))) (= (select |c_old(#memory_int)| v_idx_1028) v_v_4_6) (= (select |c_old(#valid)| v_idx_1024) v_v_2_6) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_1025) v_v_62_6) (<= c_ULTIMATE.start_main_p6 v_idx_1025)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1031) v_v_82_6) (< v_idx_1031 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1023) v_v_58_6) (< v_idx_1023 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1022) (< v_idx_1022 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1022)))))) (forall ((v_idx_1038 Int) (v_idx_1037 Int) (v_idx_1036 Int) (v_idx_1035 Int) (v_idx_1034 Int) (v_idx_1033 Int) (v_idx_1032 Int) (v_idx_1042 Int) (v_idx_1041 Int) (v_idx_1040 Int) (v_idx_1039 Int)) (exists ((v_v_84_6 Int) (v_v_4_6 Int) (v_v_62_6 Int) (v_v_83_6 Int) (v_v_64_6 Int) (v_v_85_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (= v_v_64_6 (select |c_#valid| v_idx_1038)) (< v_idx_1038 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1034) v_v_58_6) (< v_idx_1034 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_1035) v_v_2_6) (= (select |c_old(#memory_int)| v_idx_1039) v_v_4_6) (or (<= c_ULTIMATE.start_main_p6 v_idx_1032) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1032) v_v_56_6)) (or (= 1 (select |c_#valid| v_idx_1037)) (< v_idx_1037 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1037)) (or (<= c_ULTIMATE.start_main_p6 v_idx_1036) (= v_v_62_6 (select |c_#valid| v_idx_1036))) (or (= (select |c_#memory_int| v_idx_1040) v_v_83_6) (<= c_ULTIMATE.start_main_p4 v_idx_1040)) (or (= (select |c_#memory_int| v_idx_1041) v_v_84_6) (< v_idx_1041 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_1041)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1033 c_ULTIMATE.start_main_p6) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1033) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1033)) (or (< v_idx_1042 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_1042) v_v_85_6))))))} [2019-01-18 14:57:01,842 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:57:01,842 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:57:01,843 WARN L230 ngHoareTripleChecker]: Post: {2147483570#(forall ((v_idx_1049 Int) (v_idx_1048 Int) (v_idx_1047 Int) (v_idx_1046 Int) (v_idx_1045 Int) (v_idx_1044 Int) (v_idx_1043 Int) (v_idx_1053 Int) (v_idx_1052 Int) (v_idx_1051 Int) (v_idx_1050 Int)) (exists ((v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_58_6 Int) (v_v_172_6 Int) (v_v_173_6 Int) (v_v_56_6 Int) (v_v_2_6 Int) (v_v_174_6 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_1043) (= v_v_56_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1043))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_1051) (= (select |c_#memory_int| v_idx_1051) v_v_172_6)) (or (< v_idx_1048 c_ULTIMATE.start_main_p6) (= (select |c_#valid| v_idx_1048) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1048)) (= v_v_2_6 (select |c_old(#valid)| v_idx_1046)) (or (< v_idx_1052 c_ULTIMATE.start_main_p6) (= v_v_173_6 (select |c_#memory_int| v_idx_1052)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1052)) (or (= v_v_58_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1045)) (< v_idx_1045 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_1049) v_v_64_6) (< v_idx_1049 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_1047) (= v_v_62_6 (select |c_#valid| v_idx_1047))) (or (< v_idx_1044 c_ULTIMATE.start_main_p6) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1044)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1044)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1053 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_174_6 (select |c_#memory_int| v_idx_1053))) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_1050)))))} [2019-01-18 14:57:01,843 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:57:02,297 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:57:02,297 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:57:10,337 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:57:10,337 WARN L270 ngHoareTripleChecker]: Pre: {2147483571#(or (forall ((v_idx_1027 Int) (v_idx_1026 Int) (v_idx_1025 Int) (v_idx_1024 Int) (v_idx_1023 Int) (v_idx_1022 Int) (v_idx_1021 Int) (v_idx_1031 Int) (v_idx_1030 Int) (v_idx_1029 Int) (v_idx_1028 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_1027 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_1027) v_v_64_6)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |#memory_int| v_idx_1029) v_v_80_6) (<= ULTIMATE.start_main_p6 v_idx_1029)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1030) (< v_idx_1030 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_1030) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1021) v_v_56_6) (<= ULTIMATE.start_main_p6 v_idx_1021)) (or (< v_idx_1026 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1026) (= 1 (select |#valid| v_idx_1026))) (= (select |old(#memory_int)| v_idx_1028) v_v_4_6) (= (select |old(#valid)| v_idx_1024) v_v_2_6) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_1025) v_v_62_6) (<= ULTIMATE.start_main_p6 v_idx_1025)) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_1031) v_v_82_6) (< v_idx_1031 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1023) v_v_58_6) (< v_idx_1023 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1022) (< v_idx_1022 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1022)))))) (forall ((v_idx_1038 Int) (v_idx_1037 Int) (v_idx_1036 Int) (v_idx_1035 Int) (v_idx_1034 Int) (v_idx_1033 Int) (v_idx_1032 Int) (v_idx_1042 Int) (v_idx_1041 Int) (v_idx_1040 Int) (v_idx_1039 Int)) (exists ((v_v_84_6 Int) (v_v_4_6 Int) (v_v_62_6 Int) (v_v_83_6 Int) (v_v_64_6 Int) (v_v_85_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (= v_v_64_6 (select |#valid| v_idx_1038)) (< v_idx_1038 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1034) v_v_58_6) (< v_idx_1034 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_1035) v_v_2_6) (= (select |old(#memory_int)| v_idx_1039) v_v_4_6) (or (<= ULTIMATE.start_main_p6 v_idx_1032) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1032) v_v_56_6)) (or (= 1 (select |#valid| v_idx_1037)) (< v_idx_1037 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1037)) (or (<= ULTIMATE.start_main_p6 v_idx_1036) (= v_v_62_6 (select |#valid| v_idx_1036))) (or (= (select |#memory_int| v_idx_1040) v_v_83_6) (<= ULTIMATE.start_main_p4 v_idx_1040)) (or (= (select |#memory_int| v_idx_1041) v_v_84_6) (< v_idx_1041 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_1041)) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (or (< v_idx_1033 ULTIMATE.start_main_p6) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1033) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1033)) (or (< v_idx_1042 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_1042) v_v_85_6))))))} [2019-01-18 14:57:10,337 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:57:10,337 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:57:10,364 WARN L276 ngHoareTripleChecker]: Post: {2147483570#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p6) (forall ((v_idx_1048 Int)) (or (< v_idx_1048 ULTIMATE.start_main_p6) (= (select |#valid| v_idx_1048) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1048))) (<= (- (- ULTIMATE.start_main_p6) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_main_p6 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1044 Int)) (or (< v_idx_1044 ULTIMATE.start_main_p6) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1044)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1044))))} [2019-01-18 14:57:13,438 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:57:13,439 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:57:13,439 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:57:13,439 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:57:13,439 WARN L224 ngHoareTripleChecker]: Pre: {2147483569#(or (forall ((v_idx_1059 Int) (v_idx_1058 Int) (v_idx_1057 Int) (v_idx_1056 Int) (v_idx_1055 Int) (v_idx_1054 Int) (v_idx_1064 Int) (v_idx_1063 Int) (v_idx_1062 Int) (v_idx_1061 Int) (v_idx_1060 Int)) (exists ((v_v_62_6 Int) (v_v_4_6 Int) (v_v_64_6 Int) (v_v_80_6 Int) (v_v_82_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (or (<= c_ULTIMATE.start_main_p6 v_idx_1054) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1054) v_v_56_6)) (or (< v_idx_1059 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1059) (= 1 (select |c_#valid| v_idx_1059))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= c_ULTIMATE.start_main_p6 v_idx_1058) (= (select |c_#valid| v_idx_1058) v_v_62_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_1057)) (= (select |c_old(#memory_int)| v_idx_1061) v_v_4_6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1056) v_v_58_6) (< v_idx_1056 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_1064) v_v_82_6) (< v_idx_1064 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_1063) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1063) (< v_idx_1063 c_ULTIMATE.start_main_p6)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1055) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1055) 0) (< v_idx_1055 c_ULTIMATE.start_main_p6)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p6 v_idx_1062) (= (select |c_#memory_int| v_idx_1062) v_v_80_6)) (or (< v_idx_1060 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1060) v_v_64_6))))) (forall ((v_idx_1069 Int) (v_idx_1068 Int) (v_idx_1067 Int) (v_idx_1066 Int) (v_idx_1065 Int) (v_idx_1075 Int) (v_idx_1074 Int) (v_idx_1073 Int) (v_idx_1072 Int) (v_idx_1071 Int) (v_idx_1070 Int)) (exists ((v_v_84_6 Int) (v_v_4_6 Int) (v_v_62_6 Int) (v_v_83_6 Int) (v_v_64_6 Int) (v_v_85_6 Int) (v_v_58_6 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1070) (= (select |c_#valid| v_idx_1070) 1) (< v_idx_1070 c_ULTIMATE.start_main_p6)) (or (< v_idx_1071 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_64_6 (select |c_#valid| v_idx_1071))) (= (select |c_old(#valid)| v_idx_1068) v_v_2_6) (or (< v_idx_1067 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1067) v_v_58_6)) (= (select |c_old(#memory_int)| v_idx_1072) v_v_4_6) (or (= (select |c_#memory_int| v_idx_1075) v_v_85_6) (< v_idx_1075 (+ c_ULTIMATE.start_main_p4 1))) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_1074) (< v_idx_1074 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_1074) v_v_84_6)) (or (= (select |c_#valid| v_idx_1069) v_v_62_6) (<= c_ULTIMATE.start_main_p6 v_idx_1069)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p4 v_idx_1073) (= (select |c_#memory_int| v_idx_1073) v_v_83_6)) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1066) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1066)) (< v_idx_1066 c_ULTIMATE.start_main_p6)) (or (<= c_ULTIMATE.start_main_p6 v_idx_1065) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1065) v_v_56_6))))))} [2019-01-18 14:57:13,439 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:57:13,440 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:57:13,440 WARN L230 ngHoareTripleChecker]: Post: {2147483568#(forall ((v_idx_1079 Int) (v_idx_1078 Int) (v_idx_1077 Int) (v_idx_1076 Int) (v_idx_1086 Int) (v_idx_1085 Int) (v_idx_1084 Int) (v_idx_1083 Int) (v_idx_1082 Int) (v_idx_1081 Int) (v_idx_1080 Int)) (exists ((v_v_4_6 Int) (v_v_62_6 Int) (v_v_64_6 Int) (v_v_58_6 Int) (v_v_217_3 Int) (v_v_218_3 Int) (v_v_219_3 Int) (v_v_56_6 Int) (v_v_2_6 Int)) (and (<= (+ v_v_218_3 1) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p6) (or (= (select |c_#valid| v_idx_1081) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1081) (< v_idx_1081 c_ULTIMATE.start_main_p6)) (<= (- v_v_218_3 (- v_v_218_3)) (- 2)) (or (< v_idx_1077 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1077) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1077))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1076) v_v_56_6) (<= c_ULTIMATE.start_main_p6 v_idx_1076)) (or (= v_v_217_3 (select |c_#memory_int| v_idx_1084)) (<= c_ULTIMATE.start_main_p1 v_idx_1084)) (<= (- (- c_ULTIMATE.start_main_p6) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_64_6 (select |c_#valid| v_idx_1082)) (< v_idx_1082 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_1083)) (= (select |c_old(#valid)| v_idx_1079) v_v_2_6) (or (= v_v_62_6 (select |c_#valid| v_idx_1080)) (<= c_ULTIMATE.start_main_p6 v_idx_1080)) (<= (- c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_main_p6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1086 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_1086) v_v_219_3)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1085) (= v_v_218_3 (select |c_#memory_int| v_idx_1085)) (< v_idx_1085 c_ULTIMATE.start_main_p1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1078) v_v_58_6) (< v_idx_1078 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-18 14:57:13,440 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:57:13,948 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:57:13,948 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:57:19,519 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-18 14:57:19,521 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: 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.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.handleInfeasibleCase(BaseRefinementStrategy.java:296) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:206) 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: 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:626) 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:187) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SmtUtils.simplify(SmtUtils.java:152) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.toStringSimplified(DebuggingHoareTripleChecker.java:313) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.logUnsoundness(DebuggingHoareTripleChecker.java:270) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:192) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:179) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkInternal(DebuggingHoareTripleChecker.java:139) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:80) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:62) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:1) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.assertIsPostSound(FixpointEngine.java:268) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateAbstractPost(FixpointEngine.java:254) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateFixpoint(FixpointEngine.java:134) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.run(FixpointEngine.java:105) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.tool.AbstractInterpreter.runWithoutTimeoutAndResults(AbstractInterpreter.java:149) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarAbsIntRunner.generateFixpoints(CegarAbsIntRunner.java:222) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.constructInterpolantGenerator(BaseTaipanRefinementStrategy.java:382) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.getInterpolantGenerator(BaseTaipanRefinementStrategy.java:225) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:380) ... 20 more 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) ... 50 more [2019-01-18 14:57:19,525 INFO L168 Benchmark]: Toolchain (without parser) took 321943.06 ms. Allocated memory was 141.6 MB in the beginning and 392.7 MB in the end (delta: 251.1 MB). Free memory was 108.9 MB in the beginning and 252.0 MB in the end (delta: -143.1 MB). Peak memory consumption was 328.2 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:19,526 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 141.6 MB. Free memory is still 110.3 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-18 14:57:19,526 INFO L168 Benchmark]: Boogie Procedure Inliner took 73.64 ms. Allocated memory is still 141.6 MB. Free memory was 108.6 MB in the beginning and 106.2 MB in the end (delta: 2.5 MB). Peak memory consumption was 2.5 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:19,527 INFO L168 Benchmark]: Boogie Preprocessor took 35.44 ms. Allocated memory is still 141.6 MB. Free memory was 106.2 MB in the beginning and 105.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:19,527 INFO L168 Benchmark]: RCFGBuilder took 726.85 ms. Allocated memory is still 141.6 MB. Free memory was 105.0 MB in the beginning and 84.0 MB in the end (delta: 21.0 MB). Peak memory consumption was 21.0 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:19,528 INFO L168 Benchmark]: TraceAbstraction took 321102.75 ms. Allocated memory was 141.6 MB in the beginning and 392.7 MB in the end (delta: 251.1 MB). Free memory was 83.6 MB in the beginning and 252.0 MB in the end (delta: -168.3 MB). Peak memory consumption was 303.0 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:19,531 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.22 ms. Allocated memory is still 141.6 MB. Free memory is still 110.3 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 73.64 ms. Allocated memory is still 141.6 MB. Free memory was 108.6 MB in the beginning and 106.2 MB in the end (delta: 2.5 MB). Peak memory consumption was 2.5 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 35.44 ms. Allocated memory is still 141.6 MB. Free memory was 106.2 MB in the beginning and 105.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. * RCFGBuilder took 726.85 ms. Allocated memory is still 141.6 MB. Free memory was 105.0 MB in the beginning and 84.0 MB in the end (delta: 21.0 MB). Peak memory consumption was 21.0 MB. Max. memory is 7.1 GB. * TraceAbstraction took 321102.75 ms. Allocated memory was 141.6 MB in the beginning and 392.7 MB in the end (delta: 251.1 MB). Free memory was 83.6 MB in the beginning and 252.0 MB in the end (delta: -168.3 MB). Peak memory consumption was 303.0 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: 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") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: 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") : de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...