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-2-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b7bd044-m [2019-01-18 14:50:00,372 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-18 14:50:00,374 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-18 14:50:00,386 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-18 14:50:00,386 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-18 14:50:00,387 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-18 14:50:00,388 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-18 14:50:00,390 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-18 14:50:00,392 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-18 14:50:00,392 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-18 14:50:00,393 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-18 14:50:00,394 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-18 14:50:00,395 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-18 14:50:00,395 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-18 14:50:00,397 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-18 14:50:00,397 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-18 14:50:00,398 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-18 14:50:00,400 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-18 14:50:00,402 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-18 14:50:00,404 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-18 14:50:00,405 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-18 14:50:00,406 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-18 14:50:00,408 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-18 14:50:00,408 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-18 14:50:00,409 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-18 14:50:00,409 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-18 14:50:00,410 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-18 14:50:00,411 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-18 14:50:00,412 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-18 14:50:00,413 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-18 14:50:00,413 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-18 14:50:00,418 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-18 14:50:00,418 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-18 14:50:00,419 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-18 14:50:00,423 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-18 14:50:00,423 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-18 14:50:00,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:50:00,450 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-18 14:50:00,450 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-18 14:50:00,451 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-18 14:50:00,452 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-18 14:50:00,452 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-18 14:50:00,452 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-18 14:50:00,452 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-18 14:50:00,452 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-18 14:50:00,452 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-18 14:50:00,455 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-18 14:50:00,455 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-18 14:50:00,455 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-18 14:50:00,456 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-18 14:50:00,456 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-18 14:50:00,457 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-18 14:50:00,457 INFO L133 SettingsManager]: * Use SBE=true [2019-01-18 14:50:00,457 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-18 14:50:00,457 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-18 14:50:00,457 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-18 14:50:00,459 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-18 14:50:00,459 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-18 14:50:00,459 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-18 14:50:00,460 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-18 14:50:00,460 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-18 14:50:00,460 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-18 14:50:00,460 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-18 14:50:00,460 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-18 14:50:00,461 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-18 14:50:00,461 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-18 14:50:00,461 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-18 14:50:00,461 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:50:00,462 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-18 14:50:00,462 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-18 14:50:00,462 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-18 14:50:00,462 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-18 14:50:00,462 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-18 14:50:00,463 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-18 14:50:00,463 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-18 14:50:00,463 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-18 14:50:00,509 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-18 14:50:00,523 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-18 14:50:00,529 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-18 14:50:00,531 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-18 14:50:00,531 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-18 14:50:00,532 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-2-unlimited.bpl [2019-01-18 14:50:00,532 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-2-unlimited.bpl' [2019-01-18 14:50:00,572 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-18 14:50:00,573 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-18 14:50:00,574 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-18 14:50:00,574 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-18 14:50:00,574 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-18 14:50:00,590 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,601 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,626 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-18 14:50:00,627 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-18 14:50:00,627 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-18 14:50:00,627 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-18 14:50:00,637 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,638 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,639 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,639 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,642 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,645 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,646 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/1) ... [2019-01-18 14:50:00,647 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-18 14:50:00,648 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-18 14:50:00,648 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-18 14:50:00,648 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-18 14:50:00,649 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (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:50:00,715 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-18 14:50:00,715 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-18 14:50:01,103 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-18 14:50:01,103 INFO L286 CfgBuilder]: Removed 7 assue(true) statements. [2019-01-18 14:50:01,105 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:50:01 BoogieIcfgContainer [2019-01-18 14:50:01,105 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-18 14:50:01,106 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-18 14:50:01,106 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-18 14:50:01,109 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-18 14:50:01,110 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:00" (1/2) ... [2019-01-18 14:50:01,111 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@55c25eb9 and model type speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.01 02:50:01, skipping insertion in model container [2019-01-18 14:50:01,111 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:50:01" (2/2) ... [2019-01-18 14:50:01,113 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-2-unlimited.bpl [2019-01-18 14:50:01,123 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-18 14:50:01,131 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 2 error locations. [2019-01-18 14:50:01,148 INFO L257 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2019-01-18 14:50:01,191 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-18 14:50:01,191 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-18 14:50:01,191 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-18 14:50:01,191 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-18 14:50:01,192 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-18 14:50:01,192 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-18 14:50:01,192 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-18 14:50:01,192 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-18 14:50:01,220 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states. [2019-01-18 14:50:01,237 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-18 14:50:01,237 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:01,240 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-18 14:50:01,245 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:01,253 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:01,253 INFO L82 PathProgramCache]: Analyzing trace with hash 972, now seen corresponding path program 1 times [2019-01-18 14:50:01,256 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:01,303 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:01,304 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:01,304 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:01,304 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:01,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:01,607 INFO L273 TraceCheckUtils]: 0: Hoare triple {10#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {12#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:01,617 INFO L273 TraceCheckUtils]: 1: Hoare triple {12#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {11#false} is VALID [2019-01-18 14:50:01,619 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:50:01,621 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:50:01,621 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:50:01,621 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:50:01,627 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:50:01,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:50:01,633 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:50:01,665 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:50:01,665 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:50:01,674 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:50:01,674 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:50:01,676 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 3 states. [2019-01-18 14:50:01,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:01,872 INFO L93 Difference]: Finished difference Result 13 states and 15 transitions. [2019-01-18 14:50:01,872 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:50:01,873 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:50:01,873 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:50:01,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:01,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-18 14:50:01,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:01,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-18 14:50:01,880 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 15 transitions. [2019-01-18 14:50:01,940 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:01,951 INFO L225 Difference]: With dead ends: 13 [2019-01-18 14:50:01,951 INFO L226 Difference]: Without dead ends: 8 [2019-01-18 14:50:01,955 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:50:01,973 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states. [2019-01-18 14:50:01,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 6. [2019-01-18 14:50:01,991 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:50:01,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 8 states. Second operand 6 states. [2019-01-18 14:50:01,992 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 6 states. [2019-01-18 14:50:01,993 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 6 states. [2019-01-18 14:50:01,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:01,996 INFO L93 Difference]: Finished difference Result 8 states and 10 transitions. [2019-01-18 14:50:01,996 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 10 transitions. [2019-01-18 14:50:01,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:01,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:01,997 INFO L74 IsIncluded]: Start isIncluded. First operand 6 states. Second operand 8 states. [2019-01-18 14:50:01,998 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 8 states. [2019-01-18 14:50:01,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:02,000 INFO L93 Difference]: Finished difference Result 8 states and 10 transitions. [2019-01-18 14:50:02,000 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 10 transitions. [2019-01-18 14:50:02,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:02,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:02,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:50:02,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:50:02,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:50:02,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2019-01-18 14:50:02,005 INFO L78 Accepts]: Start accepts. Automaton has 6 states and 9 transitions. Word has length 2 [2019-01-18 14:50:02,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:50:02,005 INFO L480 AbstractCegarLoop]: Abstraction has 6 states and 9 transitions. [2019-01-18 14:50:02,005 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:50:02,006 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states and 9 transitions. [2019-01-18 14:50:02,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:50:02,006 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:02,006 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:50:02,007 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:02,007 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:02,007 INFO L82 PathProgramCache]: Analyzing trace with hash 29988, now seen corresponding path program 1 times [2019-01-18 14:50:02,008 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:02,009 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:02,009 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:02,009 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:02,009 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:02,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:02,232 INFO L273 TraceCheckUtils]: 0: Hoare triple {54#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:02,249 INFO L273 TraceCheckUtils]: 1: Hoare triple {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:50:02,265 INFO L273 TraceCheckUtils]: 2: Hoare triple {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {55#false} is VALID [2019-01-18 14:50:02,266 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:50:02,266 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:50:02,266 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:50:02,267 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:50:02,269 INFO L207 CegarAbsIntRunner]: [0], [6], [11] [2019-01-18 14:50:02,344 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:50:02,345 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:50:06,176 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:06,176 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:06,177 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:06,177 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:06,178 WARN L224 ngHoareTripleChecker]: Pre: {2147483645#(forall ((v_idx_25 Int) (v_idx_26 Int) (v_idx_23 Int) (v_idx_24 Int) (v_idx_21 Int) (v_idx_22 Int) (v_idx_20 Int) (v_idx_18 Int) (v_idx_19 Int) (v_idx_27 Int) (v_idx_17 Int)) (exists ((v_v_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (= (select |c_old(#valid)| v_idx_20) v_v_2_1) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_25) (= v_v_28_1 (select |c_#memory_int| v_idx_25))) (or (< v_idx_19 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_19) v_v_18_1)) (or (< v_idx_18 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_18)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_18)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_24)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_26 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_26) (= (select |c_#memory_int| v_idx_26) 0)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_22) (< v_idx_22 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_22) 1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_21) (= (select |c_#valid| v_idx_21) v_v_22_1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_23 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_23) v_v_24_1)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_17) v_v_16_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_17)) (or (< v_idx_27 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_27) v_v_30_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 14:50:06,178 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:06,179 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:50:06,179 WARN L230 ngHoareTripleChecker]: Post: {2147483644#(forall ((v_idx_36 Int) (v_idx_37 Int) (v_idx_34 Int) (v_idx_35 Int) (v_idx_32 Int) (v_idx_33 Int) (v_idx_30 Int) (v_idx_31 Int) (v_idx_29 Int) (v_idx_38 Int) (v_idx_28 Int)) (exists ((v_v_24_1 Int) (v_v_22_1 Int) (v_v_33_1 Int) (v_v_32_1 Int) (v_v_31_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= v_v_16_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_28)) (<= c_ULTIMATE.start_malloc_ptr v_idx_28)) (or (< v_idx_30 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_30))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_35)) (or (= (select |c_#memory_int| v_idx_38) v_v_33_1) (< v_idx_38 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_33) (< v_idx_33 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_33))) (or (< v_idx_37 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_37) (= (select |c_#memory_int| v_idx_37) v_v_32_1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_29) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_29)) (< v_idx_29 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_34 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_34) v_v_24_1)) (or (= (select |c_#memory_int| v_idx_36) v_v_31_1) (<= c_ULTIMATE.start_main_p1 v_idx_36)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_2_1 (select |c_old(#valid)| v_idx_31)) (or (= (select |c_#valid| v_idx_32) v_v_22_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_32)))))} [2019-01-18 14:50:06,179 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:06,491 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:06,491 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:06,855 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_18 Int)) (or (< v_idx_18 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_18)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_18))) (forall ((v_idx_22 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_22) (< v_idx_22 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_22) 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_26 Int)) (or (< v_idx_26 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_26) (= (select |#memory_int| v_idx_26) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:50:06,855 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:06,857 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:50:07,002 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (forall ((v_idx_33 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_33) (< v_idx_33 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_33)))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_29 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_29) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_29)) (< v_idx_29 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:50:10,481 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:10,482 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:10,483 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:10,483 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:10,483 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_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= (select |c_#valid| v_idx_43) v_v_22_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_43)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_39) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_39) v_v_16_1)) (or (< v_idx_40 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_40)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_46)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_47) v_v_28_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_47)) (or (= (select |c_#memory_int| v_idx_49) v_v_30_1) (< v_idx_49 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_42)) (or (= (select |c_#valid| v_idx_45) v_v_24_1) (< v_idx_45 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_48 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_48) (= 0 (select |c_#memory_int| v_idx_48))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_44 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_44)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_44)) (or (< v_idx_41 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_41) v_v_18_1)))))} [2019-01-18 14:50:10,484 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:10,484 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:10,485 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_47_1 Int) (v_v_24_1 Int) (v_v_46_1 Int) (v_v_22_1 Int) (v_v_45_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (< v_idx_60 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_60) v_v_47_1)) (or (= v_v_24_1 (select |c_#valid| v_idx_56)) (< v_idx_56 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_54) (= v_v_22_1 (select |c_#valid| v_idx_54))) (<= (- v_v_46_1 (- v_v_46_1)) (- 2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_55) (< v_idx_55 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_55))) (= v_v_2_1 (select |c_old(#valid)| v_idx_53)) (or (<= c_ULTIMATE.start_main_p1 v_idx_58) (= (select |c_#memory_int| v_idx_58) v_v_45_1)) (or (< v_idx_51 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_51)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_51)) (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_46_1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_57) v_v_4_1) (or (<= c_ULTIMATE.start_main_p2 v_idx_50) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_50) v_v_16_1)) (or (= v_v_18_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_52)) (< v_idx_52 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (+ v_v_46_1 1) 0))))} [2019-01-18 14:50:10,485 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:10,858 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:10,858 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:11,094 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_44 Int)) (or (< v_idx_44 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_44)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_44))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_40 Int)) (or (< v_idx_40 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_40))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_48 Int)) (or (< v_idx_48 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_48) (= 0 (select |#memory_int| v_idx_48)))))} [2019-01-18 14:50:11,095 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:11,095 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:11,207 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))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (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))) (forall ((v_idx_51 Int)) (or (< v_idx_51 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_51)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_51))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_55 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_55) (< v_idx_55 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_55)))))} [2019-01-18 14:50:14,185 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:14,185 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:14,186 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:14,186 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:14,186 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_24_1 Int) (v_v_22_1 Int) (v_v_33_1 Int) (v_v_32_1 Int) (v_v_31_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_73) (< v_idx_73 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_79)) (or (< v_idx_74 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_18_1)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_77) (< v_idx_77 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_77) 1)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_80) v_v_31_1) (<= c_ULTIMATE.start_main_p1 v_idx_80)) (or (= (select |c_#valid| v_idx_78) v_v_24_1) (< v_idx_78 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_76) v_v_22_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_76)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_82) v_v_33_1) (< v_idx_82 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_81) (= (select |c_#memory_int| v_idx_81) v_v_32_1) (< v_idx_81 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_2_1 (select |c_old(#valid)| v_idx_75)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_72) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_16_1))))) (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_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= (select |c_#valid| v_idx_65) v_v_22_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_65)) (or (< v_idx_62 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_62)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_66) (= 1 (select |c_#valid| v_idx_66)) (< v_idx_66 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_69) (= (select |c_#memory_int| v_idx_69) v_v_28_1)) (= (select |c_old(#memory_int)| v_idx_68) v_v_4_1) (or (< v_idx_71 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_30_1 (select |c_#memory_int| v_idx_71))) (= v_v_2_1 (select |c_old(#valid)| v_idx_64)) (or (< v_idx_63 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_63))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_67 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_67) v_v_24_1)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_16_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_61)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_70) (< v_idx_70 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_70))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:50:14,187 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:14,187 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:50:14,187 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_24_1 Int) (v_v_22_1 Int) (v_v_2_1 Int) (v_v_50_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_49_1 Int) (v_v_16_1 Int) (v_v_48_1 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_84)) (or (= v_v_16_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_83)) (<= c_ULTIMATE.start_main_p2 v_idx_83)) (= v_v_2_1 (select |c_old(#valid)| v_idx_86)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_90) v_v_4_1) (or (< v_idx_89 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_89) v_v_24_1)) (or (= v_v_18_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_85)) (< v_idx_85 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_92) v_v_49_1) (< v_idx_92 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_92)) (or (< v_idx_93 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_93) v_v_50_1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_87) v_v_22_1) (<= c_ULTIMATE.start_main_p2 v_idx_87)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_88) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_88) (< v_idx_88 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p1 v_idx_91) (= (select |c_#memory_int| v_idx_91) v_v_48_1)))))} [2019-01-18 14:50:14,188 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:14,783 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:14,784 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:23,048 WARN L181 SmtUtils]: Spent 8.26 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:50:23,049 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_24_1 Int) (v_v_22_1 Int) (v_v_33_1 Int) (v_v_32_1 Int) (v_v_31_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_73) (< v_idx_73 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (= v_v_4_1 (select |old(#memory_int)| v_idx_79)) (or (< v_idx_74 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_18_1)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_77) (< v_idx_77 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_77) 1)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_80) v_v_31_1) (<= ULTIMATE.start_main_p1 v_idx_80)) (or (= (select |#valid| v_idx_78) v_v_24_1) (< v_idx_78 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#valid| v_idx_76) v_v_22_1) (<= ULTIMATE.start_malloc_ptr v_idx_76)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_82) v_v_33_1) (< v_idx_82 (+ ULTIMATE.start_main_p1 1))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_81) (= (select |#memory_int| v_idx_81) v_v_32_1) (< v_idx_81 ULTIMATE.start_main_p1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_2_1 (select |old(#valid)| v_idx_75)) (or (<= ULTIMATE.start_malloc_ptr v_idx_72) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_16_1))))) (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_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= (select |#valid| v_idx_65) v_v_22_1) (<= ULTIMATE.start_malloc_ptr v_idx_65)) (or (< v_idx_62 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_62)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_66) (= 1 (select |#valid| v_idx_66)) (< v_idx_66 ULTIMATE.start_malloc_ptr)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_69) (= (select |#memory_int| v_idx_69) v_v_28_1)) (= (select |old(#memory_int)| v_idx_68) v_v_4_1) (or (< v_idx_71 (+ ULTIMATE.start_main_p2 1)) (= v_v_30_1 (select |#memory_int| v_idx_71))) (= v_v_2_1 (select |old(#valid)| v_idx_64)) (or (< v_idx_63 (+ ULTIMATE.start_main_p2 1)) (= v_v_18_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_63))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_67 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_67) v_v_24_1)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_16_1) (<= ULTIMATE.start_malloc_ptr v_idx_61)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_70) (< v_idx_70 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_70))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))))} [2019-01-18 14:50:23,049 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:23,049 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:50:23,077 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_84 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_84))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_88 Int)) (or (= (select |#valid| v_idx_88) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_88) (< v_idx_88 ULTIMATE.start_main_p2))))} [2019-01-18 14:50:27,165 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:27,165 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:27,166 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:27,166 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:27,166 WARN L224 ngHoareTripleChecker]: Pre: {2147483639#(or (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_24_1 Int) (v_v_22_1 Int) (v_v_33_1 Int) (v_v_32_1 Int) (v_v_31_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (< v_idx_111 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_1 (select |c_#valid| v_idx_111))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_114) v_v_32_1) (< v_idx_114 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_114)) (or (= (select |c_#memory_int| v_idx_113) v_v_31_1) (<= c_ULTIMATE.start_main_p1 v_idx_113)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_16_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_105)) (or (< v_idx_107 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_107))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_109) (= v_v_22_1 (select |c_#valid| v_idx_109))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_110) (= 1 (select |c_#valid| v_idx_110)) (< v_idx_110 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_33_1 (select |c_#memory_int| v_idx_115)) (< v_idx_115 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_108)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_106) (< v_idx_106 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_106) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_112))))) (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_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_18_1) (< v_idx_96 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_95)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_95) (< v_idx_95 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_94) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_16_1)) (or (= (select |c_#valid| v_idx_98) v_v_22_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_98)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_101)) (or (< v_idx_104 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_104) v_v_30_1)) (or (< v_idx_100 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_1 (select |c_#valid| v_idx_100))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_99 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_99) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_99)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_97) v_v_2_1) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_102) (= (select |c_#memory_int| v_idx_102) v_v_28_1)) (or (= (select |c_#memory_int| v_idx_103) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_103) (< v_idx_103 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:50:27,166 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:27,166 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:27,167 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_24_1 Int) (v_v_22_1 Int) (v_v_92_1 Int) (v_v_2_1 Int) (v_v_94_1 Int) (v_v_93_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (< v_idx_122 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_1 (select |c_#valid| v_idx_122))) (<= (- v_v_93_1 (- v_v_93_1)) (- 2)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_123)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_116) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_116) v_v_16_1)) (or (= (select |c_#memory_int| v_idx_125) v_v_93_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 c_ULTIMATE.start_main_p1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_119)) (or (= 1 (select |c_#valid| v_idx_121)) (< v_idx_121 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_121)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_120) (= v_v_22_1 (select |c_#valid| v_idx_120))) (<= (+ v_v_93_1 1) 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_118 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_118) v_v_18_1)) (or (< v_idx_117 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_117)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_117)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_126 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_126) v_v_94_1)) (or (<= c_ULTIMATE.start_main_p1 v_idx_124) (= (select |c_#memory_int| v_idx_124) v_v_92_1)))))} [2019-01-18 14:50:27,167 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:27,727 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:27,727 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:36,042 WARN L181 SmtUtils]: Spent 8.31 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:50:36,042 WARN L270 ngHoareTripleChecker]: Pre: {2147483639#(or (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_24_1 Int) (v_v_22_1 Int) (v_v_33_1 Int) (v_v_32_1 Int) (v_v_31_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (< v_idx_111 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_1 (select |#valid| v_idx_111))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_114) v_v_32_1) (< v_idx_114 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_114)) (or (= (select |#memory_int| v_idx_113) v_v_31_1) (<= ULTIMATE.start_main_p1 v_idx_113)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_16_1) (<= ULTIMATE.start_malloc_ptr v_idx_105)) (or (< v_idx_107 (+ ULTIMATE.start_main_p2 1)) (= v_v_18_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_107))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_109) (= v_v_22_1 (select |#valid| v_idx_109))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_110) (= 1 (select |#valid| v_idx_110)) (< v_idx_110 ULTIMATE.start_malloc_ptr)) (or (= v_v_33_1 (select |#memory_int| v_idx_115)) (< v_idx_115 (+ ULTIMATE.start_main_p1 1))) (= v_v_2_1 (select |old(#valid)| v_idx_108)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_106) (< v_idx_106 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_106) 0)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_4_1 (select |old(#memory_int)| v_idx_112))))) (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_24_1 Int) (v_v_22_1 Int) (v_v_30_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_18_1 Int) (v_v_16_1 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_18_1) (< v_idx_96 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_95)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_95) (< v_idx_95 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_94) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_16_1)) (or (= (select |#valid| v_idx_98) v_v_22_1) (<= ULTIMATE.start_malloc_ptr v_idx_98)) (= v_v_4_1 (select |old(#memory_int)| v_idx_101)) (or (< v_idx_104 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_104) v_v_30_1)) (or (< v_idx_100 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_1 (select |#valid| v_idx_100))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_99 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_99) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_99)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_97) v_v_2_1) (or (<= ULTIMATE.start_malloc_ptr v_idx_102) (= (select |#memory_int| v_idx_102) v_v_28_1)) (or (= (select |#memory_int| v_idx_103) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_103) (< v_idx_103 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))))} [2019-01-18 14:50:36,043 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:36,043 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:36,079 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (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_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_2 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_2)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_121 Int)) (or (= 1 (select |#valid| v_idx_121)) (< v_idx_121 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_121))) (forall ((v_idx_117 Int)) (or (< v_idx_117 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_117)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_117))))} [2019-01-18 14:50:36,481 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:50:36,482 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:50:36,486 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:36,488 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:50:36,488 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:50:36,488 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:50:36,501 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:36,502 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:50:36,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:36,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:36,527 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:50:36,557 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 12 [2019-01-18 14:50:36,571 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2019-01-18 14:50:36,574 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:50:36,582 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:50:36,589 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:50:36,589 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:9, output treesize:11 [2019-01-18 14:50:36,593 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:50:36,594 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_12|, ULTIMATE.start_main_p2]. (= (store (store |v_#memory_int_12| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) |#memory_int|) [2019-01-18 14:50:36,594 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 14:50:36,632 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:50:36,633 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 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 5 [2019-01-18 14:50:36,635 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:50:36,639 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:50:36,639 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:16, output treesize:5 [2019-01-18 14:50:36,647 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:50:36,648 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_13|]. (let ((.cse0 (select |v_#memory_int_13| ULTIMATE.start_main_p1))) (and (= |#memory_int| (store |v_#memory_int_13| ULTIMATE.start_main_p1 (+ .cse0 1))) (= 0 .cse0))) [2019-01-18 14:50:36,648 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#memory_int| ULTIMATE.start_main_p1) 1) [2019-01-18 14:50:36,656 INFO L273 TraceCheckUtils]: 0: Hoare triple {54#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:36,657 INFO L273 TraceCheckUtils]: 1: Hoare triple {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {64#(= (select |#memory_int| ULTIMATE.start_main_p1) 1)} is VALID [2019-01-18 14:50:36,658 INFO L273 TraceCheckUtils]: 2: Hoare triple {64#(= (select |#memory_int| ULTIMATE.start_main_p1) 1)} assume !(#memory_int[main_p1] >= 0); {55#false} is VALID [2019-01-18 14:50:36,659 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:50:36,659 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:50:36,681 INFO L273 TraceCheckUtils]: 2: Hoare triple {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {55#false} is VALID [2019-01-18 14:50:36,682 INFO L273 TraceCheckUtils]: 1: Hoare triple {71#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:50:36,684 INFO L273 TraceCheckUtils]: 0: Hoare triple {54#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {71#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:50:36,685 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:50:36,707 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:50:36,708 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 4 [2019-01-18 14:50:36,708 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:50:36,709 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:50:36,709 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:50:36,709 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:50:36,715 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:50:36,716 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:50:36,716 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:50:36,716 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-18 14:50:36,717 INFO L87 Difference]: Start difference. First operand 6 states and 9 transitions. Second operand 4 states. [2019-01-18 14:50:36,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:36,800 INFO L93 Difference]: Finished difference Result 10 states and 17 transitions. [2019-01-18 14:50:36,800 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:50:36,800 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:50:36,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:50:36,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:50:36,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 14 transitions. [2019-01-18 14:50:36,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:50:36,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 14 transitions. [2019-01-18 14:50:36,804 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 14 transitions. [2019-01-18 14:50:36,835 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:36,837 INFO L225 Difference]: With dead ends: 10 [2019-01-18 14:50:36,837 INFO L226 Difference]: Without dead ends: 9 [2019-01-18 14:50:36,838 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-18 14:50:36,839 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9 states. [2019-01-18 14:50:36,847 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9 to 7. [2019-01-18 14:50:36,847 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:50:36,847 INFO L82 GeneralOperation]: Start isEquivalent. First operand 9 states. Second operand 7 states. [2019-01-18 14:50:36,847 INFO L74 IsIncluded]: Start isIncluded. First operand 9 states. Second operand 7 states. [2019-01-18 14:50:36,848 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 7 states. [2019-01-18 14:50:36,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:36,850 INFO L93 Difference]: Finished difference Result 9 states and 16 transitions. [2019-01-18 14:50:36,851 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 16 transitions. [2019-01-18 14:50:36,851 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:36,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:36,851 INFO L74 IsIncluded]: Start isIncluded. First operand 7 states. Second operand 9 states. [2019-01-18 14:50:36,852 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 9 states. [2019-01-18 14:50:36,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:36,854 INFO L93 Difference]: Finished difference Result 9 states and 16 transitions. [2019-01-18 14:50:36,854 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 16 transitions. [2019-01-18 14:50:36,854 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:36,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:36,855 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:50:36,855 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:50:36,855 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-01-18 14:50:36,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 13 transitions. [2019-01-18 14:50:36,856 INFO L78 Accepts]: Start accepts. Automaton has 7 states and 13 transitions. Word has length 3 [2019-01-18 14:50:36,856 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:50:36,856 INFO L480 AbstractCegarLoop]: Abstraction has 7 states and 13 transitions. [2019-01-18 14:50:36,857 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:50:36,857 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 13 transitions. [2019-01-18 14:50:36,857 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:50:36,857 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:36,857 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:50:36,858 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:36,858 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:36,858 INFO L82 PathProgramCache]: Analyzing trace with hash 30050, now seen corresponding path program 1 times [2019-01-18 14:50:36,858 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:36,859 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:36,859 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:36,859 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:36,859 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:36,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:36,923 INFO L273 TraceCheckUtils]: 0: Hoare triple {116#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {118#(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:50:36,926 INFO L273 TraceCheckUtils]: 1: Hoare triple {118#(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]; {119#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:36,933 INFO L273 TraceCheckUtils]: 2: Hoare triple {119#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {117#false} is VALID [2019-01-18 14:50:36,934 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:50:36,934 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:50:36,934 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:50:36,934 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:50:36,935 INFO L207 CegarAbsIntRunner]: [0], [8], [11] [2019-01-18 14:50:36,937 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:50:36,937 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:50:39,372 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:39,372 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:39,373 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:39,373 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:39,373 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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (< v_idx_152 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_152) (= (select |c_#memory_int| v_idx_152) 0)) (or (= (select |c_#memory_int| v_idx_151) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_151)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_22_2 (select |c_#valid| v_idx_147)) (<= c_ULTIMATE.start_main_p2 v_idx_147)) (or (< v_idx_153 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_153) v_v_30_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_146)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_148)) (< v_idx_148 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_148)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_143)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_150)) (or (< v_idx_145 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_145) v_v_18_2)) (or (< v_idx_149 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_149))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_144) (< v_idx_144 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144))))))} [2019-01-18 14:50:39,373 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:50:39,374 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:50:39,374 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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_154) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_154)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_155) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (< v_idx_155 c_ULTIMATE.start_main_p2)) (or (< v_idx_164 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_164) v_v_30_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_162) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_162)) (or (< v_idx_163 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_163) (- 1)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_163)) (or (= v_v_24_2 (select |c_#valid| v_idx_160)) (< v_idx_160 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_22_2 (select |c_#valid| v_idx_158)) (<= c_ULTIMATE.start_main_p2 v_idx_158)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_159 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_159) (= 1 (select |c_#valid| v_idx_159))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_161)) (= v_v_2_2 (select |c_old(#valid)| v_idx_157)) (or (< v_idx_156 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_156))))))} [2019-01-18 14:50:39,374 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:39,848 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:39,848 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:40,110 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (forall ((v_idx_148 Int)) (or (= 1 (select |#valid| v_idx_148)) (< v_idx_148 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_148))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_152 Int)) (or (< v_idx_152 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_152) (= (select |#memory_int| v_idx_152) 0))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_144 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_144) (< v_idx_144 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_144)))))} [2019-01-18 14:50:40,111 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:50:40,111 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:50:40,150 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_155 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_155) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (< v_idx_155 ULTIMATE.start_main_p2))) (forall ((v_idx_159 Int)) (or (< v_idx_159 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_159) (= 1 (select |#valid| v_idx_159)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_163 Int)) (or (< v_idx_163 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_163) (- 1)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_163))))} [2019-01-18 14:50:43,028 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:43,028 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:43,029 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:43,029 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:43,029 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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_165)) (= v_v_2_2 (select |c_old(#valid)| v_idx_168)) (or (< v_idx_174 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_174) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_174)) (or (<= c_ULTIMATE.start_main_p2 v_idx_173) (= (select |c_#memory_int| v_idx_173) v_v_28_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_18_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_167)) (< v_idx_167 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_170)) (< v_idx_170 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_170)) (or (< v_idx_175 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_175) v_v_30_2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_166) (< v_idx_166 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_24_2 (select |c_#valid| v_idx_171)) (< v_idx_171 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_169) (= v_v_22_2 (select |c_#valid| v_idx_169))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_172)))))} [2019-01-18 14:50:43,029 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:43,030 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:43,030 WARN L230 ngHoareTripleChecker]: Post: {2147483632#(forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_186 Int) (v_idx_176 Int)) (exists ((v_v_46_2 Int) (v_v_45_2 Int) (v_v_24_2 Int) (v_v_22_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_47_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_181) (= 1 (select |c_#valid| v_idx_181)) (< v_idx_181 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p1 v_idx_184) (= (select |c_#memory_int| v_idx_184) v_v_45_2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_180) (= v_v_22_2 (select |c_#valid| v_idx_180))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_46_2 (- v_v_46_2)) (- 2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_179)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_178) v_v_18_2) (< v_idx_178 (+ c_ULTIMATE.start_main_p2 1))) (<= (+ v_v_46_2 1) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_183)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_24_2 (select |c_#valid| v_idx_182)) (< v_idx_182 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_177 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_177)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_186 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_47_2 (select |c_#memory_int| v_idx_186))) (or (<= c_ULTIMATE.start_main_p2 v_idx_176) (= v_v_16_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176))) (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_46_2)))))} [2019-01-18 14:50:43,030 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:43,492 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:43,492 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:43,713 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (forall ((v_idx_170 Int)) (or (= 1 (select |#valid| v_idx_170)) (< v_idx_170 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_170))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_166 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_166) (< v_idx_166 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_174 Int)) (or (< v_idx_174 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_174) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_174))))} [2019-01-18 14:50:43,713 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:43,714 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:43,761 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (forall ((v_idx_177 Int)) (or (< v_idx_177 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_177) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_177))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_181 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_181) (= 1 (select |#valid| v_idx_181)) (< v_idx_181 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_3 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_prenex_3)) 2) 0))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_185 Int)) (or (<= (+ (select |#memory_int| v_idx_185) 1) 0) (< v_idx_185 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_185))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:50:47,143 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:47,143 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:47,143 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:47,143 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:47,144 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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (or (< v_idx_188 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_188)) (= v_v_2_2 (select |c_old(#valid)| v_idx_190)) (or (= v_v_22_2 (select |c_#valid| v_idx_191)) (<= c_ULTIMATE.start_main_p2 v_idx_191)) (or (= v_v_24_2 (select |c_#valid| v_idx_193)) (< v_idx_193 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_187) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_16_2)) (= (select |c_old(#memory_int)| v_idx_194) v_v_4_2) (or (< v_idx_197 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_197) v_v_30_2)) (or (< v_idx_192 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_192)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_192)) (or (< v_idx_189 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_196 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_196) (= 0 (select |c_#memory_int| v_idx_196))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_195) (= (select |c_#memory_int| v_idx_195) v_v_28_2))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_199)) (< v_idx_199 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_199)) (or (= (select |c_#memory_int| v_idx_208) v_v_30_2) (< v_idx_208 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_206) (= (select |c_#memory_int| v_idx_206) v_v_28_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_24_2 (select |c_#valid| v_idx_204)) (< v_idx_204 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_205)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_207 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_207) (- 1)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_207)) (= v_v_2_2 (select |c_old(#valid)| v_idx_201)) (or (<= c_ULTIMATE.start_main_p2 v_idx_202) (= v_v_22_2 (select |c_#valid| v_idx_202))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_18_2) (< v_idx_200 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_198)) (or (< v_idx_203 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_203) (= 1 (select |c_#valid| v_idx_203)))))))} [2019-01-18 14:50:47,144 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:50:47,144 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:50:47,144 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(or (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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (< v_idx_211 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_18_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_219) v_v_30_2) (< v_idx_219 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_217) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_217)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_210) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 c_ULTIMATE.start_main_p2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_209)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_216)) (= (select |c_old(#valid)| v_idx_212) v_v_2_2) (or (< v_idx_218 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_218) (= (- 1) (select |c_#memory_int| v_idx_218))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_24_2 (select |c_#valid| v_idx_215)) (< v_idx_215 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_213) (= v_v_22_2 (select |c_#valid| v_idx_213))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_214) (= 1 (select |c_#valid| v_idx_214)) (< v_idx_214 c_ULTIMATE.start_main_p2))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_#memory_int| v_idx_230) v_v_30_2) (< v_idx_230 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_220) (= v_v_16_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (< v_idx_221 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_221) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_221)) (or (= v_v_22_2 (select |c_#valid| v_idx_224)) (<= c_ULTIMATE.start_malloc_ptr v_idx_224)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_223) v_v_2_2) (or (= (select |c_#memory_int| v_idx_228) v_v_28_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_228)) (or (< v_idx_222 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_18_2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_229) (< v_idx_229 c_ULTIMATE.start_malloc_ptr) (= (- 2) (select |c_#memory_int| v_idx_229))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_227)) (or (= v_v_24_2 (select |c_#valid| v_idx_226)) (< v_idx_226 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_225 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_225)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_225)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:50:47,144 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:47,494 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:47,494 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:55,816 WARN L181 SmtUtils]: Spent 8.32 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:50:55,816 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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (or (< v_idx_188 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_188)) (= v_v_2_2 (select |old(#valid)| v_idx_190)) (or (= v_v_22_2 (select |#valid| v_idx_191)) (<= ULTIMATE.start_main_p2 v_idx_191)) (or (= v_v_24_2 (select |#valid| v_idx_193)) (< v_idx_193 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_187) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_16_2)) (= (select |old(#memory_int)| v_idx_194) v_v_4_2) (or (< v_idx_197 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_197) v_v_30_2)) (or (< v_idx_192 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_192)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_192)) (or (< v_idx_189 (+ ULTIMATE.start_main_p2 1)) (= v_v_18_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_189))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_196 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_196) (= 0 (select |#memory_int| v_idx_196))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= ULTIMATE.start_main_p2 v_idx_195) (= (select |#memory_int| v_idx_195) v_v_28_2))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_199)) (< v_idx_199 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_199)) (or (= (select |#memory_int| v_idx_208) v_v_30_2) (< v_idx_208 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_206) (= (select |#memory_int| v_idx_206) v_v_28_2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_24_2 (select |#valid| v_idx_204)) (< v_idx_204 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |old(#memory_int)| v_idx_205)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_207 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_207) (- 1)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_207)) (= v_v_2_2 (select |old(#valid)| v_idx_201)) (or (<= ULTIMATE.start_main_p2 v_idx_202) (= v_v_22_2 (select |#valid| v_idx_202))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_18_2) (< v_idx_200 (+ ULTIMATE.start_main_p2 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_198)) (or (< v_idx_203 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_203) (= 1 (select |#valid| v_idx_203)))))))} [2019-01-18 14:50:55,816 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:50:55,816 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:51:03,886 WARN L181 SmtUtils]: Spent 8.07 s on a formula simplification that was a NOOP. DAG size: 143 [2019-01-18 14:51:03,887 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(or (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_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (< v_idx_211 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_18_2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_219) v_v_30_2) (< v_idx_219 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#memory_int| v_idx_217) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_217)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_210) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 ULTIMATE.start_main_p2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_209)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |old(#memory_int)| v_idx_216)) (= (select |old(#valid)| v_idx_212) v_v_2_2) (or (< v_idx_218 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_218) (= (- 1) (select |#memory_int| v_idx_218))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= v_v_24_2 (select |#valid| v_idx_215)) (< v_idx_215 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_213) (= v_v_22_2 (select |#valid| v_idx_213))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_214) (= 1 (select |#valid| v_idx_214)) (< v_idx_214 ULTIMATE.start_main_p2))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= (select |#memory_int| v_idx_230) v_v_30_2) (< v_idx_230 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_220) (= v_v_16_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (< v_idx_221 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_221) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_221)) (or (= v_v_22_2 (select |#valid| v_idx_224)) (<= ULTIMATE.start_malloc_ptr v_idx_224)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= (select |old(#valid)| v_idx_223) v_v_2_2) (or (= (select |#memory_int| v_idx_228) v_v_28_2) (<= ULTIMATE.start_malloc_ptr v_idx_228)) (or (< v_idx_222 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_18_2)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_229) (< v_idx_229 ULTIMATE.start_malloc_ptr) (= (- 2) (select |#memory_int| v_idx_229))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |old(#memory_int)| v_idx_227)) (or (= v_v_24_2 (select |#valid| v_idx_226)) (< v_idx_226 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_225 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_225)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_225)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))))} [2019-01-18 14:51:18,177 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:18,178 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:18,178 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:18,178 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:18,178 WARN L224 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_234)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_236) (= 1 (select |c_#valid| v_idx_236)) (< v_idx_236 c_ULTIMATE.start_main_p2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_240) (< v_idx_240 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_240))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_241) v_v_30_2) (< v_idx_241 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_232) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 c_ULTIMATE.start_main_p2)) (or (< v_idx_237 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_237))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_238)) (or (<= c_ULTIMATE.start_main_p2 v_idx_231) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_16_2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_22_2 (select |c_#valid| v_idx_235)) (<= c_ULTIMATE.start_main_p2 v_idx_235)) (or (= (select |c_#memory_int| v_idx_239) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_239)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_233 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_18_2))))) (forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (= v_v_4_2 (select |c_old(#memory_int)| v_idx_249)) (or (= (select |c_#memory_int| v_idx_250) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_250)) (or (= v_v_24_2 (select |c_#valid| v_idx_248)) (< v_idx_248 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_18_2) (< v_idx_244 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_243)) (< v_idx_243 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_243)) (or (< v_idx_251 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_251) (- 1)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_251)) (= (select |c_old(#valid)| v_idx_245) v_v_2_2) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_247)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_247) (< v_idx_247 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_246) (= v_v_22_2 (select |c_#valid| v_idx_246))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_242)) (or (= (select |c_#memory_int| v_idx_252) v_v_30_2) (< v_idx_252 (+ c_ULTIMATE.start_main_p2 1)))))))} [2019-01-18 14:51:18,179 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:18,179 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:18,179 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(forall ((v_idx_258 Int) (v_idx_259 Int) (v_idx_256 Int) (v_idx_257 Int) (v_idx_261 Int) (v_idx_262 Int) (v_idx_260 Int) (v_idx_254 Int) (v_idx_255 Int) (v_idx_263 Int) (v_idx_253 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_18_2 Int) (v_v_408_1 Int) (v_v_2_2 Int) (v_v_407_1 Int) (v_v_16_2 Int) (v_v_406_1 Int) (v_v_4_2 Int)) (and (or (= v_v_408_1 (select |c_#memory_int| v_idx_263)) (< v_idx_263 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_254 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_254) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_254))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_255) v_v_18_2) (< v_idx_255 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_258) (< v_idx_258 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_258))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_261) (= (select |c_#memory_int| v_idx_261) v_v_406_1)) (or (< v_idx_259 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_259))) (<= (- v_v_407_1 (- v_v_407_1)) (- 2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_260)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_253) (= v_v_16_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_253))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_262) (< v_idx_262 c_ULTIMATE.start_main_p1) (= v_v_407_1 (select |c_#memory_int| v_idx_262))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (+ v_v_407_1 1) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_256)) (or (= v_v_22_2 (select |c_#valid| v_idx_257)) (<= c_ULTIMATE.start_malloc_ptr v_idx_257)))))} [2019-01-18 14:51:18,179 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:18,652 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:18,653 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:26,587 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:51:26,587 WARN L270 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |old(#valid)| v_idx_234)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_236) (= 1 (select |#valid| v_idx_236)) (< v_idx_236 ULTIMATE.start_main_p2)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_240) (< v_idx_240 ULTIMATE.start_main_p2) (= 0 (select |#memory_int| v_idx_240))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_241) v_v_30_2) (< v_idx_241 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_232) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 ULTIMATE.start_main_p2)) (or (< v_idx_237 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |#valid| v_idx_237))) (= v_v_4_2 (select |old(#memory_int)| v_idx_238)) (or (<= ULTIMATE.start_main_p2 v_idx_231) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_16_2)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_22_2 (select |#valid| v_idx_235)) (<= ULTIMATE.start_main_p2 v_idx_235)) (or (= (select |#memory_int| v_idx_239) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_239)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_233 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_18_2))))) (forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (= v_v_4_2 (select |old(#memory_int)| v_idx_249)) (or (= (select |#memory_int| v_idx_250) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_250)) (or (= v_v_24_2 (select |#valid| v_idx_248)) (< v_idx_248 (+ ULTIMATE.start_main_p2 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_18_2) (< v_idx_244 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_243)) (< v_idx_243 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_243)) (or (< v_idx_251 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_251) (- 1)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_251)) (= (select |old(#valid)| v_idx_245) v_v_2_2) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |#valid| v_idx_247)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_247) (< v_idx_247 ULTIMATE.start_main_p2)) (or (<= ULTIMATE.start_main_p2 v_idx_246) (= v_v_22_2 (select |#valid| v_idx_246))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_242)) (or (= (select |#memory_int| v_idx_252) v_v_30_2) (< v_idx_252 (+ ULTIMATE.start_main_p2 1)))))))} [2019-01-18 14:51:26,588 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:26,588 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:26,805 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (forall ((v_prenex_4 Int)) (or (<= (+ (select |#memory_int| v_prenex_4) 1) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_262 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_262) (< v_idx_262 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_262)) 2) 0))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_254 Int)) (or (< v_idx_254 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_254) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_254)))) (forall ((v_idx_258 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_258) (< v_idx_258 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_258)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:51:29,928 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:29,929 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:29,929 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:29,929 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:29,930 WARN L224 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_278 Int) (v_idx_279 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_285 Int) (v_idx_275 Int)) (exists ((v_v_403_1 Int) (v_v_397_1 Int) (v_v_402_1 Int) (v_v_401_1 Int) (v_v_399_1 Int) (v_v_398_1 Int) (v_v_405_1 Int) (v_v_395_1 Int) (v_v_404_1 Int)) (and (or (< v_idx_281 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_401_1 (select |c_#valid| v_idx_281))) (= (select |c_old(#memory_int)| v_idx_285) v_v_405_1) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_280)) (< v_idx_280 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_280)) (<= v_v_403_1 0) (or (< v_idx_277 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_397_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_277))) (<= (- v_v_403_1 (- v_v_403_1)) 0) (<= 0 (+ v_v_403_1 2)) (<= (- (- v_v_403_1) v_v_403_1) 4) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_279) (= v_v_399_1 (select |c_#valid| v_idx_279))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_395_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_275)) (<= c_ULTIMATE.start_malloc_ptr v_idx_275)) (or (= v_v_403_1 (select |c_#memory_int| v_idx_283)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_283) (< v_idx_283 c_ULTIMATE.start_malloc_ptr)) (= v_v_398_1 (select |c_old(#valid)| v_idx_278)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_276)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_276) (< v_idx_276 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_284 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_404_1 (select |c_#memory_int| v_idx_284))) (or (= v_v_402_1 (select |c_#memory_int| v_idx_282)) (<= c_ULTIMATE.start_malloc_ptr v_idx_282))))) (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_274 Int) (v_idx_264 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (= v_v_2_2 (select |c_old(#valid)| v_idx_267)) (or (<= c_ULTIMATE.start_main_p2 v_idx_268) (= v_v_22_2 (select |c_#valid| v_idx_268))) (or (<= c_ULTIMATE.start_main_p2 v_idx_272) (= (select |c_#memory_int| v_idx_272) v_v_28_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_264) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_264)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_271)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_273) (< v_idx_273 c_ULTIMATE.start_main_p2) (= (- 1) (select |c_#memory_int| v_idx_273))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_24_2 (select |c_#valid| v_idx_270)) (< v_idx_270 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_265)) (< v_idx_265 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_265)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= 1 (select |c_#valid| v_idx_269)) (< v_idx_269 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_269)) (or (= (select |c_#memory_int| v_idx_274) v_v_30_2) (< v_idx_274 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_266 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_266) v_v_18_2))))))} [2019-01-18 14:51:29,930 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:29,930 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:51:29,930 WARN L230 ngHoareTripleChecker]: Post: {2147483626#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_296 Int) (v_idx_286 Int)) (exists ((v_v_397_1 Int) (v_v_402_1 Int) (v_v_401_1 Int) (v_v_399_1 Int) (v_v_398_1 Int) (v_v_449_1 Int) (v_v_395_1 Int) (v_v_405_1 Int) (v_v_404_1 Int)) (and (or (= v_v_397_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_288)) (< v_idx_288 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_401_1 (select |c_#valid| v_idx_292)) (< v_idx_292 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_399_1 (select |c_#valid| v_idx_290)) (<= c_ULTIMATE.start_malloc_ptr v_idx_290)) (or (= v_v_449_1 (select |c_#memory_int| v_idx_295)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_295) (< v_idx_295 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_402_1 (select |c_#memory_int| v_idx_294)) (<= c_ULTIMATE.start_malloc_ptr v_idx_294)) (or (= v_v_395_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_286)) (<= c_ULTIMATE.start_malloc_ptr v_idx_286)) (= v_v_398_1 (select |c_old(#valid)| v_idx_289)) (<= (- v_v_449_1 (- v_v_449_1)) (- 2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_291) (< v_idx_291 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_291))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- (- v_v_449_1) v_v_449_1) 6) (<= (+ v_v_449_1 1) 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_287) (< v_idx_287 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_287))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= 0 (+ v_v_449_1 3)) (= v_v_405_1 (select |c_old(#memory_int)| v_idx_293)) (or (= v_v_404_1 (select |c_#memory_int| v_idx_296)) (< v_idx_296 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:51:29,931 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:30,347 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:30,347 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:38,162 WARN L181 SmtUtils]: Spent 7.81 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:51:38,162 WARN L270 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_278 Int) (v_idx_279 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_285 Int) (v_idx_275 Int)) (exists ((v_v_403_1 Int) (v_v_397_1 Int) (v_v_402_1 Int) (v_v_401_1 Int) (v_v_399_1 Int) (v_v_398_1 Int) (v_v_405_1 Int) (v_v_395_1 Int) (v_v_404_1 Int)) (and (or (< v_idx_281 (+ ULTIMATE.start_main_p2 1)) (= v_v_401_1 (select |#valid| v_idx_281))) (= (select |old(#memory_int)| v_idx_285) v_v_405_1) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |#valid| v_idx_280)) (< v_idx_280 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_280)) (<= v_v_403_1 0) (or (< v_idx_277 (+ ULTIMATE.start_main_p2 1)) (= v_v_397_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_277))) (<= (- v_v_403_1 (- v_v_403_1)) 0) (<= 0 (+ v_v_403_1 2)) (<= (- (- v_v_403_1) v_v_403_1) 4) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_279) (= v_v_399_1 (select |#valid| v_idx_279))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_395_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_275)) (<= ULTIMATE.start_malloc_ptr v_idx_275)) (or (= v_v_403_1 (select |#memory_int| v_idx_283)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_283) (< v_idx_283 ULTIMATE.start_malloc_ptr)) (= v_v_398_1 (select |old(#valid)| v_idx_278)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_276)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_276) (< v_idx_276 ULTIMATE.start_malloc_ptr)) (or (< v_idx_284 (+ ULTIMATE.start_main_p2 1)) (= v_v_404_1 (select |#memory_int| v_idx_284))) (or (= v_v_402_1 (select |#memory_int| v_idx_282)) (<= ULTIMATE.start_malloc_ptr v_idx_282))))) (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_274 Int) (v_idx_264 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (= v_v_2_2 (select |old(#valid)| v_idx_267)) (or (<= ULTIMATE.start_main_p2 v_idx_268) (= v_v_22_2 (select |#valid| v_idx_268))) (or (<= ULTIMATE.start_main_p2 v_idx_272) (= (select |#memory_int| v_idx_272) v_v_28_2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_264) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_264)) (= v_v_4_2 (select |old(#memory_int)| v_idx_271)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_273) (< v_idx_273 ULTIMATE.start_main_p2) (= (- 1) (select |#memory_int| v_idx_273))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= v_v_24_2 (select |#valid| v_idx_270)) (< v_idx_270 (+ ULTIMATE.start_main_p2 1))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_265)) (< v_idx_265 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_265)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= 1 (select |#valid| v_idx_269)) (< v_idx_269 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_269)) (or (= (select |#memory_int| v_idx_274) v_v_30_2) (< v_idx_274 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_266 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_266) v_v_18_2))))))} [2019-01-18 14:51:38,163 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:38,163 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:51:38,402 WARN L276 ngHoareTripleChecker]: Post: {2147483626#(and (forall ((v_idx_295 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_295) (< v_idx_295 ULTIMATE.start_malloc_ptr) (<= (+ (select |#memory_int| v_idx_295) 1) 0))) (forall ((v_prenex_5 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_5)) 2) 0) (< v_prenex_5 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_5))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_6 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_6) (<= 0 (+ (select |#memory_int| v_prenex_6) 3)) (< v_prenex_6 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_287 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_287) (< v_idx_287 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_287)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_7 Int)) (or (<= 0 (+ (* 2 (select |#memory_int| v_prenex_7)) 6)) (< v_prenex_7 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_291 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_291) (< v_idx_291 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_291)))))} [2019-01-18 14:51:46,697 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:46,698 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:46,698 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:46,698 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:46,698 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_403_1 Int) (v_v_397_1 Int) (v_v_402_1 Int) (v_v_401_1 Int) (v_v_399_1 Int) (v_v_398_1 Int) (v_v_395_1 Int) (v_v_405_1 Int) (v_v_404_1 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) v_v_395_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_308)) (or (< v_idx_317 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_404_1 (select |c_#memory_int| v_idx_317))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_309 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_309) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_309))) (= v_v_405_1 (select |c_old(#memory_int)| v_idx_318)) (<= v_v_403_1 0) (<= (- v_v_403_1 (- v_v_403_1)) 0) (<= 0 (+ v_v_403_1 2)) (<= (- (- v_v_403_1) v_v_403_1) 4) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_310 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_397_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_310))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_316 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_316) (= v_v_403_1 (select |c_#memory_int| v_idx_316))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_398_1 (select |c_old(#valid)| v_idx_311)) (or (= v_v_402_1 (select |c_#memory_int| v_idx_315)) (<= c_ULTIMATE.start_malloc_ptr v_idx_315)) (or (= v_v_401_1 (select |c_#valid| v_idx_314)) (< v_idx_314 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_313) (< v_idx_313 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_313))) (or (= v_v_399_1 (select |c_#valid| v_idx_312)) (<= c_ULTIMATE.start_malloc_ptr v_idx_312))))) (forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_300 Int) (v_idx_301 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_297 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_302) (< v_idx_302 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_302))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_297) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_297)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_306) (= (- 1) (select |c_#memory_int| v_idx_306)) (< v_idx_306 c_ULTIMATE.start_main_p2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_299) v_v_18_2) (< v_idx_299 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_304)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_298)) (< v_idx_298 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_298)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_301) (= v_v_22_2 (select |c_#valid| v_idx_301))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_305) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_305)) (or (< v_idx_307 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_30_2 (select |c_#memory_int| v_idx_307))) (or (= v_v_24_2 (select |c_#valid| v_idx_303)) (< v_idx_303 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_2 (select |c_old(#valid)| v_idx_300)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:51:46,699 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:46,699 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:46,699 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_24_2 Int) (v_v_638_1 Int) (v_v_22_2 Int) (v_v_639_1 Int) (v_v_18_2 Int) (v_v_640_1 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int)) (and (or (< v_idx_329 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_640_1 (select |c_#memory_int| v_idx_329))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (+ v_v_639_1 1) 0) (<= (- v_v_639_1 (- v_v_639_1)) (- 2)) (or (< v_idx_325 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_325))) (or (< v_idx_324 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_324) (= 1 (select |c_#valid| v_idx_324))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_321) v_v_18_2) (< v_idx_321 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_322) v_v_2_2) (or (<= c_ULTIMATE.start_main_p2 v_idx_323) (= v_v_22_2 (select |c_#valid| v_idx_323))) (= (select |c_old(#memory_int)| v_idx_326) v_v_4_2) (or (<= c_ULTIMATE.start_main_p1 v_idx_327) (= v_v_638_1 (select |c_#memory_int| v_idx_327))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_320) 0) (< v_idx_320 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_320)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_319) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_319)) (or (= (select |c_#memory_int| v_idx_328) v_v_639_1) (< v_idx_328 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_328)))))} [2019-01-18 14:51:46,699 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:47,383 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:47,383 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:55,252 WARN L181 SmtUtils]: Spent 7.87 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:51:55,253 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_403_1 Int) (v_v_397_1 Int) (v_v_402_1 Int) (v_v_401_1 Int) (v_v_399_1 Int) (v_v_398_1 Int) (v_v_395_1 Int) (v_v_405_1 Int) (v_v_404_1 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_308) v_v_395_1) (<= ULTIMATE.start_malloc_ptr v_idx_308)) (or (< v_idx_317 (+ ULTIMATE.start_main_p2 1)) (= v_v_404_1 (select |#memory_int| v_idx_317))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_309 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_309) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_309))) (= v_v_405_1 (select |old(#memory_int)| v_idx_318)) (<= v_v_403_1 0) (<= (- v_v_403_1 (- v_v_403_1)) 0) (<= 0 (+ v_v_403_1 2)) (<= (- (- v_v_403_1) v_v_403_1) 4) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_310 (+ ULTIMATE.start_main_p2 1)) (= v_v_397_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_310))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_316 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_316) (= v_v_403_1 (select |#memory_int| v_idx_316))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_398_1 (select |old(#valid)| v_idx_311)) (or (= v_v_402_1 (select |#memory_int| v_idx_315)) (<= ULTIMATE.start_malloc_ptr v_idx_315)) (or (= v_v_401_1 (select |#valid| v_idx_314)) (< v_idx_314 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_313) (< v_idx_313 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_313))) (or (= v_v_399_1 (select |#valid| v_idx_312)) (<= ULTIMATE.start_malloc_ptr v_idx_312))))) (forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_300 Int) (v_idx_301 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_297 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_302) (< v_idx_302 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_302))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_297) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_297)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_306) (= (- 1) (select |#memory_int| v_idx_306)) (< v_idx_306 ULTIMATE.start_main_p2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_299) v_v_18_2) (< v_idx_299 (+ ULTIMATE.start_main_p2 1))) (= v_v_4_2 (select |old(#memory_int)| v_idx_304)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_298)) (< v_idx_298 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_298)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p2 v_idx_301) (= v_v_22_2 (select |#valid| v_idx_301))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_305) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_305)) (or (< v_idx_307 (+ ULTIMATE.start_main_p2 1)) (= v_v_30_2 (select |#memory_int| v_idx_307))) (or (= v_v_24_2 (select |#valid| v_idx_303)) (< v_idx_303 (+ ULTIMATE.start_main_p2 1))) (= v_v_2_2 (select |old(#valid)| v_idx_300)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))))} [2019-01-18 14:51:55,253 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:55,253 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:55,479 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_328 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_328)) 2) 0) (< v_idx_328 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_328))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_324 Int)) (or (< v_idx_324 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_324) (= 1 (select |#valid| v_idx_324)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_prenex_8) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_8))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_320 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_320) 0) (< v_idx_320 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_320))))} [2019-01-18 14:51:58,745 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:58,745 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:58,746 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:58,747 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:58,747 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_340 Int) (v_idx_330 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_339) (= (- 1) (select |c_#memory_int| v_idx_339)) (< v_idx_339 c_ULTIMATE.start_main_p2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_333)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_331) (< v_idx_331 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_331))) (or (= (select |c_#memory_int| v_idx_340) v_v_30_2) (< v_idx_340 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_330) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_330) v_v_16_2)) (or (= (select |c_#memory_int| v_idx_338) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_338)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_337)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_332) v_v_18_2) (< v_idx_332 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_22_2 (select |c_#valid| v_idx_334)) (<= c_ULTIMATE.start_main_p2 v_idx_334)) (or (< v_idx_336 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_336))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_335) (= 1 (select |c_#valid| v_idx_335)) (< v_idx_335 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_351 Int) (v_idx_341 Int)) (exists ((v_v_636_1 Int) (v_v_635_1 Int) (v_v_627_1 Int) (v_v_637_1 Int) (v_v_629_1 Int) (v_v_630_1 Int) (v_v_631_1 Int) (v_v_634_1 Int) (v_v_633_1 Int)) (and (or (= v_v_633_1 (select |c_#valid| v_idx_347)) (< v_idx_347 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_346 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_346) (= 1 (select |c_#valid| v_idx_346))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_627_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_341)) (<= c_ULTIMATE.start_main_p2 v_idx_341)) (<= 0 (+ v_v_635_1 3)) (<= (- (- v_v_635_1) v_v_635_1) 6) (<= (- v_v_635_1 (- v_v_635_1)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_342) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_342) (< v_idx_342 c_ULTIMATE.start_main_p2)) (<= v_v_635_1 0) (or (= v_v_634_1 (select |c_#memory_int| v_idx_348)) (<= c_ULTIMATE.start_main_p2 v_idx_348)) (= v_v_637_1 (select |c_old(#memory_int)| v_idx_351)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_629_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_343)) (< v_idx_343 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_630_1 (select |c_old(#valid)| v_idx_344)) (or (= v_v_631_1 (select |c_#valid| v_idx_345)) (<= c_ULTIMATE.start_main_p2 v_idx_345)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_350 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_636_1 (select |c_#memory_int| v_idx_350))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_349) (< v_idx_349 c_ULTIMATE.start_main_p2) (= v_v_635_1 (select |c_#memory_int| v_idx_349)))))))} [2019-01-18 14:51:58,747 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:58,747 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:51:58,747 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_362 Int) (v_idx_352 Int)) (exists ((v_v_636_1 Int) (v_v_627_1 Int) (v_v_637_1 Int) (v_v_629_1 Int) (v_v_681_1 Int) (v_v_630_1 Int) (v_v_631_1 Int) (v_v_634_1 Int) (v_v_633_1 Int)) (and (or (< v_idx_361 c_ULTIMATE.start_main_p2) (= v_v_681_1 (select |c_#memory_int| v_idx_361)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_361)) (= v_v_637_1 (select |c_old(#memory_int)| v_idx_359)) (or (= v_v_629_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_354)) (< v_idx_354 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_360) (= (select |c_#memory_int| v_idx_360) v_v_634_1)) (<= (- (- v_v_681_1) v_v_681_1) 8) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_353) (< v_idx_353 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_353) 0)) (or (< v_idx_362 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_636_1 (select |c_#memory_int| v_idx_362))) (or (= 1 (select |c_#valid| v_idx_357)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_357) (< v_idx_357 c_ULTIMATE.start_main_p2)) (= v_v_630_1 (select |c_old(#valid)| v_idx_355)) (<= (+ v_v_681_1 1) 0) (or (= v_v_633_1 (select |c_#valid| v_idx_358)) (< v_idx_358 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_631_1 (select |c_#valid| v_idx_356)) (<= c_ULTIMATE.start_main_p2 v_idx_356)) (<= (- v_v_681_1 (- v_v_681_1)) (- 2)) (<= 0 (+ v_v_681_1 4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_627_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_352)) (<= c_ULTIMATE.start_main_p2 v_idx_352)))))} [2019-01-18 14:51:58,748 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:59,140 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:59,140 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:07,012 WARN L181 SmtUtils]: Spent 1.13 m on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:53:07,013 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_340 Int) (v_idx_330 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_339) (= (- 1) (select |#memory_int| v_idx_339)) (< v_idx_339 ULTIMATE.start_main_p2)) (= v_v_2_2 (select |old(#valid)| v_idx_333)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_331) (< v_idx_331 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_331))) (or (= (select |#memory_int| v_idx_340) v_v_30_2) (< v_idx_340 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_330) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_330) v_v_16_2)) (or (= (select |#memory_int| v_idx_338) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_338)) (= v_v_4_2 (select |old(#memory_int)| v_idx_337)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_332) v_v_18_2) (< v_idx_332 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_22_2 (select |#valid| v_idx_334)) (<= ULTIMATE.start_main_p2 v_idx_334)) (or (< v_idx_336 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |#valid| v_idx_336))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_335) (= 1 (select |#valid| v_idx_335)) (< v_idx_335 ULTIMATE.start_main_p2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_351 Int) (v_idx_341 Int)) (exists ((v_v_636_1 Int) (v_v_635_1 Int) (v_v_627_1 Int) (v_v_637_1 Int) (v_v_629_1 Int) (v_v_630_1 Int) (v_v_631_1 Int) (v_v_634_1 Int) (v_v_633_1 Int)) (and (or (= v_v_633_1 (select |#valid| v_idx_347)) (< v_idx_347 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_346 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_346) (= 1 (select |#valid| v_idx_346))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_627_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_341)) (<= ULTIMATE.start_main_p2 v_idx_341)) (<= 0 (+ v_v_635_1 3)) (<= (- (- v_v_635_1) v_v_635_1) 6) (<= (- v_v_635_1 (- v_v_635_1)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_342) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_342) (< v_idx_342 ULTIMATE.start_main_p2)) (<= v_v_635_1 0) (or (= v_v_634_1 (select |#memory_int| v_idx_348)) (<= ULTIMATE.start_main_p2 v_idx_348)) (= v_v_637_1 (select |old(#memory_int)| v_idx_351)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= v_v_629_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_343)) (< v_idx_343 (+ ULTIMATE.start_main_p2 1))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= v_v_630_1 (select |old(#valid)| v_idx_344)) (or (= v_v_631_1 (select |#valid| v_idx_345)) (<= ULTIMATE.start_main_p2 v_idx_345)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_350 (+ ULTIMATE.start_main_p2 1)) (= v_v_636_1 (select |#memory_int| v_idx_350))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_349) (< v_idx_349 ULTIMATE.start_main_p2) (= v_v_635_1 (select |#memory_int| v_idx_349)))))))} [2019-01-18 14:53:07,013 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:07,013 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:53:07,203 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (forall ((v_idx_361 Int)) (or (< v_idx_361 ULTIMATE.start_main_p2) (<= (+ (select |#memory_int| v_idx_361) 1) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_361))) (forall ((v_idx_353 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_353) (< v_idx_353 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_353) 0))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_9 Int)) (or (<= 0 (+ (* 2 (select |#memory_int| v_prenex_9)) 8)) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_9) (< v_prenex_9 ULTIMATE.start_main_p2))) (forall ((v_idx_357 Int)) (or (= 1 (select |#valid| v_idx_357)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_357) (< v_idx_357 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_11 Int)) (or (< v_prenex_11 ULTIMATE.start_main_p2) (<= 0 (+ (select |#memory_int| v_prenex_11) 4)) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_11))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_10 Int)) (or (< v_prenex_10 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_10) (<= (+ (* 2 (select |#memory_int| v_prenex_10)) 2) 0))))} [2019-01-18 14:53:21,912 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:21,912 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:21,912 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:21,913 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:21,913 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_379 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_384 Int) (v_idx_374 Int)) (exists ((v_v_636_1 Int) (v_v_635_1 Int) (v_v_627_1 Int) (v_v_637_1 Int) (v_v_629_1 Int) (v_v_630_1 Int) (v_v_631_1 Int) (v_v_634_1 Int) (v_v_633_1 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_375)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_375) (< v_idx_375 c_ULTIMATE.start_main_p2)) (= v_v_637_1 (select |c_old(#memory_int)| v_idx_384)) (or (<= c_ULTIMATE.start_main_p2 v_idx_381) (= v_v_634_1 (select |c_#memory_int| v_idx_381))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 0 (+ v_v_635_1 3)) (= v_v_630_1 (select |c_old(#valid)| v_idx_377)) (or (<= c_ULTIMATE.start_main_p2 v_idx_378) (= v_v_631_1 (select |c_#valid| v_idx_378))) (or (< v_idx_376 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_376) v_v_629_1)) (or (= 1 (select |c_#valid| v_idx_379)) (< v_idx_379 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_379)) (<= (- (- v_v_635_1) v_v_635_1) 6) (<= (- v_v_635_1 (- v_v_635_1)) 0) (<= v_v_635_1 0) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_374) (= v_v_627_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_374))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_382) (< v_idx_382 c_ULTIMATE.start_main_p2) (= v_v_635_1 (select |c_#memory_int| v_idx_382))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_636_1 (select |c_#memory_int| v_idx_383)) (< v_idx_383 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_380 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_633_1 (select |c_#valid| v_idx_380)))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_373 Int) (v_idx_363 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (= v_v_4_2 (select |c_old(#memory_int)| v_idx_370)) (= v_v_2_2 (select |c_old(#valid)| v_idx_366)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_372) (= (- 1) (select |c_#memory_int| v_idx_372)) (< v_idx_372 c_ULTIMATE.start_main_p2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_22_2 (select |c_#valid| v_idx_367)) (<= c_ULTIMATE.start_main_p2 v_idx_367)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_364) 0) (< v_idx_364 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_364)) (or (= (select |c_#memory_int| v_idx_373) v_v_30_2) (< v_idx_373 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_365) v_v_18_2) (< v_idx_365 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_369 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |c_#valid| v_idx_369))) (or (= 1 (select |c_#valid| v_idx_368)) (< v_idx_368 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_368)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_371) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_371)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_363) v_v_16_2) (<= c_ULTIMATE.start_main_p2 v_idx_363)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:53:21,913 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:21,913 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:21,913 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_388 Int) (v_idx_389 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_395 Int) (v_idx_385 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_1002_1 Int) (v_v_1003_1 Int) (v_v_18_2 Int) (v_v_1004_1 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_389) (= v_v_22_2 (select |c_#valid| v_idx_389))) (or (= v_v_24_2 (select |c_#valid| v_idx_391)) (< v_idx_391 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_393) (= (select |c_#memory_int| v_idx_393) v_v_1002_1)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_395) v_v_1004_1) (< v_idx_395 (+ c_ULTIMATE.start_main_p1 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_385) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_385) v_v_16_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_392)) (<= (+ v_v_1003_1 1) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_390) (= 1 (select |c_#valid| v_idx_390)) (< v_idx_390 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_387) v_v_18_2) (< v_idx_387 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_394 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_394) (= (select |c_#memory_int| v_idx_394) v_v_1003_1)) (= v_v_2_2 (select |c_old(#valid)| v_idx_388)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (- v_v_1003_1 (- v_v_1003_1)) (- 2)) (or (< v_idx_386 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_386) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_386)))))} [2019-01-18 14:53:21,914 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:22,079 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:22,080 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:29,811 WARN L181 SmtUtils]: Spent 7.73 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:53:29,811 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_379 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_384 Int) (v_idx_374 Int)) (exists ((v_v_636_1 Int) (v_v_635_1 Int) (v_v_627_1 Int) (v_v_637_1 Int) (v_v_629_1 Int) (v_v_630_1 Int) (v_v_631_1 Int) (v_v_634_1 Int) (v_v_633_1 Int)) (and (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_375)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_375) (< v_idx_375 ULTIMATE.start_main_p2)) (= v_v_637_1 (select |old(#memory_int)| v_idx_384)) (or (<= ULTIMATE.start_main_p2 v_idx_381) (= v_v_634_1 (select |#memory_int| v_idx_381))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= 0 (+ v_v_635_1 3)) (= v_v_630_1 (select |old(#valid)| v_idx_377)) (or (<= ULTIMATE.start_main_p2 v_idx_378) (= v_v_631_1 (select |#valid| v_idx_378))) (or (< v_idx_376 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_376) v_v_629_1)) (or (= 1 (select |#valid| v_idx_379)) (< v_idx_379 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_379)) (<= (- (- v_v_635_1) v_v_635_1) 6) (<= (- v_v_635_1 (- v_v_635_1)) 0) (<= v_v_635_1 0) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p2 v_idx_374) (= v_v_627_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_374))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_382) (< v_idx_382 ULTIMATE.start_main_p2) (= v_v_635_1 (select |#memory_int| v_idx_382))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= v_v_636_1 (select |#memory_int| v_idx_383)) (< v_idx_383 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_380 (+ ULTIMATE.start_main_p2 1)) (= v_v_633_1 (select |#valid| v_idx_380)))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_373 Int) (v_idx_363 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int) (v_v_28_2 Int)) (and (= v_v_4_2 (select |old(#memory_int)| v_idx_370)) (= v_v_2_2 (select |old(#valid)| v_idx_366)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_372) (= (- 1) (select |#memory_int| v_idx_372)) (< v_idx_372 ULTIMATE.start_main_p2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_22_2 (select |#valid| v_idx_367)) (<= ULTIMATE.start_main_p2 v_idx_367)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_364) 0) (< v_idx_364 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_364)) (or (= (select |#memory_int| v_idx_373) v_v_30_2) (< v_idx_373 (+ ULTIMATE.start_main_p2 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_365) v_v_18_2) (< v_idx_365 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_369 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_2 (select |#valid| v_idx_369))) (or (= 1 (select |#valid| v_idx_368)) (< v_idx_368 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_368)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_371) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_371)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_363) v_v_16_2) (<= ULTIMATE.start_main_p2 v_idx_363)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))))} [2019-01-18 14:53:29,812 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:29,812 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:30,026 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_390 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_390) (= 1 (select |#valid| v_idx_390)) (< v_idx_390 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_386 Int)) (or (< v_idx_386 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_386) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_386))) (forall ((v_idx_394 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_394) (< v_idx_394 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_394)) 2) 0))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_12 Int)) (or (<= (+ (select |#memory_int| v_prenex_12) 1) 0) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))))} [2019-01-18 14:53:33,007 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:33,008 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:33,008 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:33,008 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:33,008 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_396 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= v_v_18_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_398)) (< v_idx_398 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_404) v_v_28_2) (<= c_ULTIMATE.start_main_p2 v_idx_404)) (or (< v_idx_397 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_397)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_397)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_405) (< v_idx_405 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_405) (- 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_399)) (or (< v_idx_402 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_402) v_v_24_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_400) v_v_22_2) (<= c_ULTIMATE.start_main_p2 v_idx_400)) (or (<= c_ULTIMATE.start_main_p2 v_idx_396) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_396) v_v_16_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_403)) (or (< v_idx_401 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_401) (= 1 (select |c_#valid| v_idx_401))) (or (= (select |c_#memory_int| v_idx_406) v_v_30_2) (< v_idx_406 (+ c_ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_745_1 Int) (v_v_746_1 Int) (v_v_747_1 Int) (v_v_748_1 Int) (v_v_738_1 Int) (v_v_740_1 Int) (v_v_742_1 Int) (v_v_744_1 Int) (v_v_741_1 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_411) (= v_v_742_1 (select |c_#valid| v_idx_411))) (or (= v_v_747_1 (select |c_#memory_int| v_idx_416)) (< v_idx_416 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_738_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_407)) (<= c_ULTIMATE.start_malloc_ptr v_idx_407)) (or (< v_idx_413 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_413) v_v_744_1)) (or (< v_idx_409 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_740_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_409))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_748_1 (select |c_old(#memory_int)| v_idx_417)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_415) (< v_idx_415 c_ULTIMATE.start_malloc_ptr) (= v_v_746_1 (select |c_#memory_int| v_idx_415))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_414) (= v_v_745_1 (select |c_#memory_int| v_idx_414))) (or (< v_idx_412 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_412)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_412)) (= v_v_741_1 (select |c_old(#valid)| v_idx_410)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_408) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_408)) (< v_idx_408 c_ULTIMATE.start_malloc_ptr)) (<= v_v_746_1 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (- v_v_746_1 (- v_v_746_1)) 0)))))} [2019-01-18 14:53:33,009 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:33,009 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:53:33,009 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_745_1 Int) (v_v_747_1 Int) (v_v_748_1 Int) (v_v_738_1 Int) (v_v_740_1 Int) (v_v_1045_1 Int) (v_v_742_1 Int) (v_v_744_1 Int) (v_v_741_1 Int)) (and (<= (+ v_v_1045_1 1) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_420) v_v_740_1) (< v_idx_420 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_418) (= v_v_738_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_418))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_423) (= 1 (select |c_#valid| v_idx_423)) (< v_idx_423 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_426) (= v_v_745_1 (select |c_#memory_int| v_idx_426))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_422) (= v_v_742_1 (select |c_#valid| v_idx_422))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_428 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_747_1 (select |c_#memory_int| v_idx_428))) (= v_v_748_1 (select |c_old(#memory_int)| v_idx_425)) (or (< v_idx_427 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_427) (= (select |c_#memory_int| v_idx_427) v_v_1045_1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_419)) (< v_idx_419 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_419)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= (- v_v_1045_1 (- v_v_1045_1)) (- 2)) (or (< v_idx_424 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_744_1 (select |c_#valid| v_idx_424))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#valid)| v_idx_421) v_v_741_1))))} [2019-01-18 14:53:33,009 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:33,415 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:33,416 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:41,695 WARN L181 SmtUtils]: Spent 8.28 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-18 14:53:41,696 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_396 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (= v_v_18_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_398)) (< v_idx_398 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#memory_int| v_idx_404) v_v_28_2) (<= ULTIMATE.start_main_p2 v_idx_404)) (or (< v_idx_397 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_397)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_397)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_405) (< v_idx_405 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_405) (- 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |old(#valid)| v_idx_399)) (or (< v_idx_402 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_402) v_v_24_2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_400) v_v_22_2) (<= ULTIMATE.start_main_p2 v_idx_400)) (or (<= ULTIMATE.start_main_p2 v_idx_396) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_396) v_v_16_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_4_2 (select |old(#memory_int)| v_idx_403)) (or (< v_idx_401 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_401) (= 1 (select |#valid| v_idx_401))) (or (= (select |#memory_int| v_idx_406) v_v_30_2) (< v_idx_406 (+ ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_745_1 Int) (v_v_746_1 Int) (v_v_747_1 Int) (v_v_748_1 Int) (v_v_738_1 Int) (v_v_740_1 Int) (v_v_742_1 Int) (v_v_744_1 Int) (v_v_741_1 Int)) (and (or (<= ULTIMATE.start_malloc_ptr v_idx_411) (= v_v_742_1 (select |#valid| v_idx_411))) (or (= v_v_747_1 (select |#memory_int| v_idx_416)) (< v_idx_416 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_738_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_407)) (<= ULTIMATE.start_malloc_ptr v_idx_407)) (or (< v_idx_413 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_413) v_v_744_1)) (or (< v_idx_409 (+ ULTIMATE.start_main_p2 1)) (= v_v_740_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_409))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_748_1 (select |old(#memory_int)| v_idx_417)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_415) (< v_idx_415 ULTIMATE.start_malloc_ptr) (= v_v_746_1 (select |#memory_int| v_idx_415))) (or (<= ULTIMATE.start_malloc_ptr v_idx_414) (= v_v_745_1 (select |#memory_int| v_idx_414))) (or (< v_idx_412 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_412)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_412)) (= v_v_741_1 (select |old(#valid)| v_idx_410)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_408) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_408)) (< v_idx_408 ULTIMATE.start_malloc_ptr)) (<= v_v_746_1 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (<= (- v_v_746_1 (- v_v_746_1)) 0)))))} [2019-01-18 14:53:41,696 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:41,696 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:53:41,874 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_427 Int)) (or (< v_idx_427 ULTIMATE.start_malloc_ptr) (<= (+ (* 2 (select |#memory_int| v_idx_427)) 2) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_427))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_419 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_419)) (< v_idx_419 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_419))) (forall ((v_idx_423 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_423) (= 1 (select |#valid| v_idx_423)) (< v_idx_423 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_13 Int)) (or (< v_prenex_13 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_13) (<= (+ (select |#memory_int| v_prenex_13) 1) 0))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:53:45,069 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:45,070 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:45,070 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:45,070 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:45,071 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_430) (< v_idx_430 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_430))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_431 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_431))) (or (= (select |c_#memory_int| v_idx_438) (- 1)) (< v_idx_438 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_438)) (or (< v_idx_435 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_435) v_v_24_2)) (or (= (select |c_#memory_int| v_idx_439) v_v_30_2) (< v_idx_439 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_437) (= (select |c_#memory_int| v_idx_437) v_v_28_2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_433) (= (select |c_#valid| v_idx_433) v_v_22_2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_429) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_429) v_v_16_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_2_2 (select |c_old(#valid)| v_idx_432)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_434 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_434) (= 1 (select |c_#valid| v_idx_434))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_436)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))) (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_745_1 Int) (v_v_746_1 Int) (v_v_747_1 Int) (v_v_748_1 Int) (v_v_738_1 Int) (v_v_740_1 Int) (v_v_742_1 Int) (v_v_744_1 Int) (v_v_741_1 Int)) (and (or (= (select |c_#memory_int| v_idx_449) v_v_747_1) (< v_idx_449 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_444) v_v_742_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_444)) (= v_v_748_1 (select |c_old(#memory_int)| v_idx_450)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_446) v_v_744_1) (< v_idx_446 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_442 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_442) v_v_740_1)) (or (< v_idx_445 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_445) (= (select |c_#valid| v_idx_445) 1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_448) v_v_746_1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_448) (< v_idx_448 c_ULTIMATE.start_malloc_ptr)) (<= v_v_746_1 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_447) (= (select |c_#memory_int| v_idx_447) v_v_745_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_440) (= v_v_738_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_440))) (= v_v_741_1 (select |c_old(#valid)| v_idx_443)) (or (< v_idx_441 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_441) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_441))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (- v_v_746_1 (- v_v_746_1)) 0)))))} [2019-01-18 14:53:45,071 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:45,071 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:45,071 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_461 Int) (v_idx_451 Int)) (exists ((v_v_24_2 Int) (v_v_1091_1 Int) (v_v_22_2 Int) (v_v_1092_1 Int) (v_v_1093_1 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_#memory_int| v_idx_459) v_v_1091_1) (<= c_ULTIMATE.start_main_p1 v_idx_459)) (or (= (select |c_#valid| v_idx_457) v_v_24_2) (< v_idx_457 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_461) v_v_1093_1) (< v_idx_461 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_451) v_v_16_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_451)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_452)) (< v_idx_452 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_452)) (<= (+ v_v_1092_1 1) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_458)) (= v_v_2_2 (select |c_old(#valid)| v_idx_454)) (or (< v_idx_456 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_456) (= (select |c_#valid| v_idx_456) 1)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_1092_1 (- v_v_1092_1)) (- 2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_453 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_453) v_v_18_2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_455) (= (select |c_#valid| v_idx_455) v_v_22_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_460) v_v_1092_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_460) (< v_idx_460 c_ULTIMATE.start_main_p1)))))} [2019-01-18 14:53:45,071 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:45,415 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:45,415 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:53,594 WARN L181 SmtUtils]: Spent 8.18 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-18 14:53:53,595 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_24_2 Int) (v_v_22_2 Int) (v_v_30_2 Int) (v_v_18_2 Int) (v_v_2_2 Int) (v_v_16_2 Int) (v_v_28_2 Int) (v_v_4_2 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_430) (< v_idx_430 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_430))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_431 (+ ULTIMATE.start_main_p2 1)) (= v_v_18_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_431))) (or (= (select |#memory_int| v_idx_438) (- 1)) (< v_idx_438 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_438)) (or (< v_idx_435 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_435) v_v_24_2)) (or (= (select |#memory_int| v_idx_439) v_v_30_2) (< v_idx_439 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_437) (= (select |#memory_int| v_idx_437) v_v_28_2)) (or (<= ULTIMATE.start_main_p2 v_idx_433) (= (select |#valid| v_idx_433) v_v_22_2)) (or (<= ULTIMATE.start_main_p2 v_idx_429) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_429) v_v_16_2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_2_2 (select |old(#valid)| v_idx_432)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_434 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_434) (= 1 (select |#valid| v_idx_434))) (= v_v_4_2 (select |old(#memory_int)| v_idx_436)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))) (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_745_1 Int) (v_v_746_1 Int) (v_v_747_1 Int) (v_v_748_1 Int) (v_v_738_1 Int) (v_v_740_1 Int) (v_v_742_1 Int) (v_v_744_1 Int) (v_v_741_1 Int)) (and (or (= (select |#memory_int| v_idx_449) v_v_747_1) (< v_idx_449 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#valid| v_idx_444) v_v_742_1) (<= ULTIMATE.start_malloc_ptr v_idx_444)) (= v_v_748_1 (select |old(#memory_int)| v_idx_450)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_446) v_v_744_1) (< v_idx_446 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_442 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_442) v_v_740_1)) (or (< v_idx_445 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_445) (= (select |#valid| v_idx_445) 1)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_448) v_v_746_1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_448) (< v_idx_448 ULTIMATE.start_malloc_ptr)) (<= v_v_746_1 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_447) (= (select |#memory_int| v_idx_447) v_v_745_1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_440) (= v_v_738_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_440))) (= v_v_741_1 (select |old(#valid)| v_idx_443)) (or (< v_idx_441 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_441) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_441))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (<= (- v_v_746_1 (- v_v_746_1)) 0)))))} [2019-01-18 14:53:53,595 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:53,595 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:53,788 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(and (forall ((v_idx_460 Int)) (or (<= (+ (select |#memory_int| v_idx_460) 1) 0) (< v_idx_460 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_460))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_14 Int)) (or (< v_prenex_14 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14) (<= (+ (* 2 (select |#memory_int| v_prenex_14)) 2) 0))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_456 Int)) (or (< v_idx_456 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_456) (= (select |#valid| v_idx_456) 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_452 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_452)) (< v_idx_452 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_452))))} [2019-01-18 14:53:53,946 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:53:53,946 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:53:53,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:53,948 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:53:53,948 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:53,948 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:53:53,959 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:53,960 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:53:53,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:53,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:53,968 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:53:54,006 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 9 treesize of output 12 [2019-01-18 14:53:54,012 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 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:53:54,020 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:54,030 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:54,041 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 1 [2019-01-18 14:53:54,042 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:54,051 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:54,052 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:18, output treesize:15 [2019-01-18 14:53:54,055 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:54,055 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_15|, |v_#valid_4|]. (and (= (select (store |v_#valid_4| ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2) 0) (= |#memory_int| (store (store |v_#memory_int_15| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0))) [2019-01-18 14:53:54,056 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 14:53:54,082 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:54,083 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 21 [2019-01-18 14:53:54,085 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:54,092 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:54,093 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:11 [2019-01-18 14:53:56,314 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:56,314 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_16|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_16| ULTIMATE.start_main_p2))) (and (= (store |v_#memory_int_16| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_16| ULTIMATE.start_main_p1)) (= .cse0 0))) [2019-01-18 14:53:56,314 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0)) [2019-01-18 14:53:56,480 INFO L273 TraceCheckUtils]: 0: Hoare triple {116#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {123#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:53:56,481 INFO L273 TraceCheckUtils]: 1: Hoare triple {123#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {127#(and (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:53:56,482 INFO L273 TraceCheckUtils]: 2: Hoare triple {127#(and (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); {117#false} is VALID [2019-01-18 14:53:56,482 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:53:56,483 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:53:56,504 INFO L273 TraceCheckUtils]: 2: Hoare triple {131#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {117#false} is VALID [2019-01-18 14:53:56,506 INFO L273 TraceCheckUtils]: 1: Hoare triple {135#(<= 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]; {131#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:56,507 INFO L273 TraceCheckUtils]: 0: Hoare triple {116#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {135#(<= 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:53:56,508 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:53:56,529 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:53:56,529 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:53:56,529 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:53:56,529 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:53:56,530 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:53:56,530 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:53:56,538 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:53:56,538 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:53:56,538 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:53:56,538 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:53:56,539 INFO L87 Difference]: Start difference. First operand 7 states and 13 transitions. Second operand 6 states. [2019-01-18 14:53:56,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:56,775 INFO L93 Difference]: Finished difference Result 17 states and 27 transitions. [2019-01-18 14:53:56,775 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:53:56,775 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:53:56,775 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:53:56,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:53:56,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 20 transitions. [2019-01-18 14:53:56,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:53:56,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 20 transitions. [2019-01-18 14:53:56,777 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 20 transitions. [2019-01-18 14:53:56,808 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:53:56,810 INFO L225 Difference]: With dead ends: 17 [2019-01-18 14:53:56,810 INFO L226 Difference]: Without dead ends: 14 [2019-01-18 14:53:56,811 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:53:56,811 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 14 states. [2019-01-18 14:53:56,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 14 to 10. [2019-01-18 14:53:56,842 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:53:56,842 INFO L82 GeneralOperation]: Start isEquivalent. First operand 14 states. Second operand 10 states. [2019-01-18 14:53:56,842 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 10 states. [2019-01-18 14:53:56,842 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 10 states. [2019-01-18 14:53:56,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:56,845 INFO L93 Difference]: Finished difference Result 14 states and 23 transitions. [2019-01-18 14:53:56,845 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 23 transitions. [2019-01-18 14:53:56,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:56,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:56,846 INFO L74 IsIncluded]: Start isIncluded. First operand 10 states. Second operand 14 states. [2019-01-18 14:53:56,846 INFO L87 Difference]: Start difference. First operand 10 states. Second operand 14 states. [2019-01-18 14:53:56,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:56,848 INFO L93 Difference]: Finished difference Result 14 states and 23 transitions. [2019-01-18 14:53:56,848 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 23 transitions. [2019-01-18 14:53:56,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:56,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:56,849 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:53:56,849 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:53:56,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2019-01-18 14:53:56,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 21 transitions. [2019-01-18 14:53:56,850 INFO L78 Accepts]: Start accepts. Automaton has 10 states and 21 transitions. Word has length 3 [2019-01-18 14:53:56,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:53:56,850 INFO L480 AbstractCegarLoop]: Abstraction has 10 states and 21 transitions. [2019-01-18 14:53:56,851 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:53:56,851 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 21 transitions. [2019-01-18 14:53:56,851 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:53:56,851 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:53:56,851 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:53:56,852 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:53:56,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:56,852 INFO L82 PathProgramCache]: Analyzing trace with hash 929546, now seen corresponding path program 1 times [2019-01-18 14:53:56,852 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:53:56,853 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:56,853 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:56,853 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:56,853 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:53:56,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:56,942 INFO L273 TraceCheckUtils]: 0: Hoare triple {207#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {209#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:53:56,944 INFO L273 TraceCheckUtils]: 1: Hoare triple {209#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {210#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= 1 (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:53:56,945 INFO L273 TraceCheckUtils]: 2: Hoare triple {210#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= 1 (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]; {211#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:56,946 INFO L273 TraceCheckUtils]: 3: Hoare triple {211#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {208#false} is VALID [2019-01-18 14:53:56,946 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:53:56,947 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:56,947 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:53:56,947 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:53:56,948 INFO L207 CegarAbsIntRunner]: [0], [6], [8], [11] [2019-01-18 14:53:56,950 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:53:56,951 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:59,296 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:59,296 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:59,296 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:59,297 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:59,297 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (< v_idx_487 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_487) (= (select |c_#memory_int| v_idx_487) 0)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_481) v_v_2_3) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_485)) (or (<= c_ULTIMATE.start_main_p2 v_idx_482) (= (select |c_#valid| v_idx_482) v_v_22_3)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_479)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_479) (< v_idx_479 c_ULTIMATE.start_main_p2)) (or (= (select |c_#memory_int| v_idx_486) v_v_28_3) (<= c_ULTIMATE.start_main_p2 v_idx_486)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_483) (= 1 (select |c_#valid| v_idx_483)) (< v_idx_483 c_ULTIMATE.start_main_p2)) (or (= v_v_16_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_478)) (<= c_ULTIMATE.start_main_p2 v_idx_478)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_480) v_v_18_3) (< v_idx_480 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_484) v_v_24_3) (< v_idx_484 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_488) v_v_30_3) (< v_idx_488 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:53:59,297 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:59,297 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:53:59,297 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_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_#memory_int| v_idx_499) v_v_33_3) (< v_idx_499 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_492)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_491) v_v_18_3) (< v_idx_491 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_495) v_v_24_3) (< v_idx_495 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_493) (= (select |c_#valid| v_idx_493) v_v_22_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_496)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_489) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_489)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_498) (< v_idx_498 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_498) v_v_32_3)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_494) (= 1 (select |c_#valid| v_idx_494)) (< v_idx_494 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_490) (< v_idx_490 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_490))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_497) v_v_31_3) (<= c_ULTIMATE.start_main_p1 v_idx_497)))))} [2019-01-18 14:53:59,297 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:59,677 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:59,678 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:59,915 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (forall ((v_idx_487 Int)) (or (< v_idx_487 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_487) (= (select |#memory_int| v_idx_487) 0))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_483 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_483) (= 1 (select |#valid| v_idx_483)) (< v_idx_483 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_479 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_479)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_479) (< v_idx_479 ULTIMATE.start_main_p2))))} [2019-01-18 14:53:59,915 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:59,916 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:53:59,944 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (forall ((v_idx_494 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_494) (= 1 (select |#valid| v_idx_494)) (< v_idx_494 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_490 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_490) (< v_idx_490 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_490)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:02,284 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:02,284 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:02,285 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:02,285 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:02,285 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_510 Int) (v_idx_504 Int) (v_idx_505 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_508 Int) (v_idx_509 Int) (v_idx_506 Int) (v_idx_507 Int)) (exists ((v_v_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (= v_v_4_3 (select |c_old(#memory_int)| v_idx_507)) (or (= (select |c_#memory_int| v_idx_508) v_v_28_3) (<= c_ULTIMATE.start_main_p2 v_idx_508)) (= (select |c_old(#valid)| v_idx_503) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_500)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_509 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_509)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_509)) (or (< v_idx_510 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_510) v_v_30_3)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_505) (= (select |c_#valid| v_idx_505) 1) (< v_idx_505 c_ULTIMATE.start_main_p2)) (or (< v_idx_502 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_502) v_v_18_3)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_506 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_3 (select |c_#valid| v_idx_506))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_501)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_501) (< v_idx_501 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#valid| v_idx_504) v_v_22_3) (<= c_ULTIMATE.start_main_p2 v_idx_504)))))} [2019-01-18 14:54:02,285 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:02,285 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:02,285 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(forall ((v_idx_511 Int) (v_idx_512 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_515 Int) (v_idx_516 Int) (v_idx_513 Int) (v_idx_514 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (= v_v_4_3 (select |c_old(#memory_int)| v_idx_518)) (or (< v_idx_513 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_513) v_v_18_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_512) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_512) (< v_idx_512 c_ULTIMATE.start_main_p2)) (or (< v_idx_521 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_521) v_v_30_3)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_516)) (< v_idx_516 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_516)) (= v_v_2_3 (select |c_old(#valid)| v_idx_514)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_511) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_511)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_22_3 (select |c_#valid| v_idx_515)) (<= c_ULTIMATE.start_main_p2 v_idx_515)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_520 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_520) (- 1)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_520)) (or (= (select |c_#memory_int| v_idx_519) v_v_28_3) (<= c_ULTIMATE.start_main_p2 v_idx_519)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_24_3 (select |c_#valid| v_idx_517)) (< v_idx_517 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:54:02,286 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:02,741 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:02,741 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:02,972 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_509 Int)) (or (< v_idx_509 ULTIMATE.start_main_p2) (= 0 (select |#memory_int| v_idx_509)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_509))) (forall ((v_idx_505 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_505) (= (select |#valid| v_idx_505) 1) (< v_idx_505 ULTIMATE.start_main_p2))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_501 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_501)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_501) (< v_idx_501 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:02,973 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:02,973 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:03,032 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_520 Int)) (or (< v_idx_520 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_520) (- 1)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_520))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_516 Int)) (or (= 1 (select |#valid| v_idx_516)) (< v_idx_516 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_516))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_512 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_512) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_512) (< v_idx_512 ULTIMATE.start_main_p2))))} [2019-01-18 14:54:05,833 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:05,833 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:05,834 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:05,834 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:05,834 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(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_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_#memory_int| v_idx_531)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_531) (< v_idx_531 c_ULTIMATE.start_main_p2)) (= v_v_2_3 (select |c_old(#valid)| v_idx_525)) (or (= 1 (select |c_#valid| v_idx_527)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_527) (< v_idx_527 c_ULTIMATE.start_main_p2)) (= (select |c_old(#memory_int)| v_idx_529) v_v_4_3) (or (<= c_ULTIMATE.start_main_p2 v_idx_522) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_16_3)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_30_3 (select |c_#memory_int| v_idx_532)) (< v_idx_532 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_528 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_3 (select |c_#valid| v_idx_528))) (or (= v_v_18_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_524)) (< v_idx_524 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_526) (= v_v_22_3 (select |c_#valid| v_idx_526))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_530) (= (select |c_#memory_int| v_idx_530) v_v_28_3)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_523)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_523) (< v_idx_523 c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:54:05,834 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:05,834 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:05,835 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(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_22_3 Int) (v_v_72_3 Int) (v_v_71_3 Int) (v_v_18_3 Int) (v_v_70_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (= 1 (select |c_#valid| v_idx_538)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_538) (< v_idx_538 c_ULTIMATE.start_main_p2)) (or (< v_idx_535 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_535) v_v_18_3)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_541) v_v_70_3) (<= c_ULTIMATE.start_main_p1 v_idx_541)) (<= (+ v_v_71_3 1) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_534) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_534)) (< v_idx_534 c_ULTIMATE.start_main_p2)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_540)) (<= (- v_v_71_3 (- v_v_71_3)) (- 2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_533) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_16_3)) (or (= v_v_24_3 (select |c_#valid| v_idx_539)) (< v_idx_539 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_543 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_72_3 (select |c_#memory_int| v_idx_543))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_537) (= v_v_22_3 (select |c_#valid| v_idx_537))) (= v_v_2_3 (select |c_old(#valid)| v_idx_536)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_542 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_542) v_v_71_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_542)))))} [2019-01-18 14:54:05,835 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:06,442 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:06,442 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:06,485 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(and (forall ((v_idx_527 Int)) (or (= 1 (select |#valid| v_idx_527)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_527) (< v_idx_527 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_531 Int)) (or (= 0 (select |#memory_int| v_idx_531)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_531) (< v_idx_531 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_523 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_523)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_523) (< v_idx_523 ULTIMATE.start_main_p2))))} [2019-01-18 14:54:06,485 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:06,485 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:06,680 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (forall ((v_idx_542 Int)) (or (< v_idx_542 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_542) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_542))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (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))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_538 Int)) (or (= 1 (select |#valid| v_idx_538)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_538) (< v_idx_538 ULTIMATE.start_main_p2))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_534 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_534) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_534)) (< v_idx_534 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:09,139 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:09,139 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:09,139 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:09,139 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:09,140 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_559 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_555)) (or (= (select |c_#memory_int| v_idx_565) v_v_33_3) (< v_idx_565 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_564) (= (select |c_#memory_int| v_idx_564) v_v_32_3) (< v_idx_564 c_ULTIMATE.start_main_p1)) (or (= v_v_24_3 (select |c_#valid| v_idx_561)) (< v_idx_561 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_563) (= (select |c_#memory_int| v_idx_563) v_v_31_3)) (or (<= c_ULTIMATE.start_main_p2 v_idx_559) (= v_v_22_3 (select |c_#valid| v_idx_559))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_557) v_v_18_3) (< v_idx_557 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_560) (= 1 (select |c_#valid| v_idx_560)) (< v_idx_560 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_562) v_v_4_3) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_558)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_556 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_556)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_556))))) (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_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (<= c_ULTIMATE.start_main_p2 v_idx_552) (= (select |c_#memory_int| v_idx_552) v_v_28_3)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_553) (< v_idx_553 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_553) 0)) (= (select |c_old(#memory_int)| v_idx_551) v_v_4_3) (= v_v_2_3 (select |c_old(#valid)| v_idx_547)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_546) v_v_18_3) (< v_idx_546 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_548) (= v_v_22_3 (select |c_#valid| v_idx_548))) (or (<= c_ULTIMATE.start_main_p2 v_idx_544) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_544) v_v_16_3)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_545) (< v_idx_545 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_545) 0)) (or (= 1 (select |c_#valid| v_idx_549)) (< v_idx_549 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_549)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_24_3 (select |c_#valid| v_idx_550)) (< v_idx_550 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_554 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_554) v_v_30_3))))))} [2019-01-18 14:54:09,140 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:54:09,140 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:54:09,140 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(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_22_3 Int) (v_v_75_3 Int) (v_v_74_3 Int) (v_v_73_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (= v_v_2_3 (select |c_old(#valid)| v_idx_569)) (= (select |c_old(#memory_int)| v_idx_573) v_v_4_3) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_574) v_v_73_3) (<= c_ULTIMATE.start_main_p1 v_idx_574)) (or (< v_idx_571 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_571)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_571)) (or (= v_v_22_3 (select |c_#valid| v_idx_570)) (<= c_ULTIMATE.start_malloc_ptr v_idx_570)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_567) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_567) 0) (< v_idx_567 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_16_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_566)) (or (= v_v_24_3 (select |c_#valid| v_idx_572)) (< v_idx_572 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_576) v_v_75_3) (< v_idx_576 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_575 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_575) (= (select |c_#memory_int| v_idx_575) v_v_74_3)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_568) v_v_18_3) (< v_idx_568 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:54:09,140 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:09,502 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:09,502 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:17,435 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:17,435 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_559 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_16_3) (<= ULTIMATE.start_main_p2 v_idx_555)) (or (= (select |#memory_int| v_idx_565) v_v_33_3) (< v_idx_565 (+ ULTIMATE.start_main_p1 1))) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_564) (= (select |#memory_int| v_idx_564) v_v_32_3) (< v_idx_564 ULTIMATE.start_main_p1)) (or (= v_v_24_3 (select |#valid| v_idx_561)) (< v_idx_561 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p1 v_idx_563) (= (select |#memory_int| v_idx_563) v_v_31_3)) (or (<= ULTIMATE.start_main_p2 v_idx_559) (= v_v_22_3 (select |#valid| v_idx_559))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_557) v_v_18_3) (< v_idx_557 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_560) (= 1 (select |#valid| v_idx_560)) (< v_idx_560 ULTIMATE.start_main_p2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_562) v_v_4_3) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |old(#valid)| v_idx_558)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_556 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_556)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_556))))) (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_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (<= ULTIMATE.start_main_p2 v_idx_552) (= (select |#memory_int| v_idx_552) v_v_28_3)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_553) (< v_idx_553 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_553) 0)) (= (select |old(#memory_int)| v_idx_551) v_v_4_3) (= v_v_2_3 (select |old(#valid)| v_idx_547)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_546) v_v_18_3) (< v_idx_546 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p2 v_idx_548) (= v_v_22_3 (select |#valid| v_idx_548))) (or (<= ULTIMATE.start_main_p2 v_idx_544) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_544) v_v_16_3)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_545) (< v_idx_545 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_545) 0)) (or (= 1 (select |#valid| v_idx_549)) (< v_idx_549 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_549)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= v_v_24_3 (select |#valid| v_idx_550)) (< v_idx_550 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_554 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_554) v_v_30_3))))))} [2019-01-18 14:54:17,435 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:54:17,436 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:54:17,601 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (forall ((v_idx_567 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_567) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_567) 0) (< v_idx_567 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_571 Int)) (or (< v_idx_571 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_571)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_571))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:20,871 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:20,872 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:20,872 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:20,872 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:20,872 WARN L224 ngHoareTripleChecker]: Pre: {2147483605#(or (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_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (< v_idx_593 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_593) (= 1 (select |c_#valid| v_idx_593))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_589) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_589) 0) (< v_idx_589 c_ULTIMATE.start_main_p2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_591) v_v_2_3) (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_32_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_588) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_588)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_595)) (or (<= c_ULTIMATE.start_main_p1 v_idx_596) (= (select |c_#memory_int| v_idx_596) v_v_31_3)) (or (< v_idx_594 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_3 (select |c_#valid| v_idx_594))) (or (= (select |c_#memory_int| v_idx_598) v_v_33_3) (< v_idx_598 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_22_3 (select |c_#valid| v_idx_592)) (<= c_ULTIMATE.start_main_p2 v_idx_592)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_590) v_v_18_3) (< v_idx_590 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))) (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_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_582) (= 1 (select |c_#valid| v_idx_582)) (< v_idx_582 c_ULTIMATE.start_main_p2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_577) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_577)) (or (= (select |c_#memory_int| v_idx_587) v_v_30_3) (< v_idx_587 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_585) v_v_28_3) (<= c_ULTIMATE.start_main_p2 v_idx_585)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_24_3 (select |c_#valid| v_idx_583)) (< v_idx_583 (+ c_ULTIMATE.start_main_p2 1))) (= (select |c_old(#valid)| v_idx_580) v_v_2_3) (= (select |c_old(#memory_int)| v_idx_584) v_v_4_3) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_586 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_586) (= (select |c_#memory_int| v_idx_586) 0)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_578) 0) (< v_idx_578 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_578)) (or (< v_idx_579 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_579) v_v_18_3)) (or (<= c_ULTIMATE.start_main_p2 v_idx_581) (= v_v_22_3 (select |c_#valid| v_idx_581)))))))} [2019-01-18 14:54:20,873 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:20,873 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:20,873 WARN L230 ngHoareTripleChecker]: Post: {2147483604#(forall ((v_idx_599 Int) (v_idx_600 Int) (v_idx_603 Int) (v_idx_604 Int) (v_idx_601 Int) (v_idx_602 Int) (v_idx_607 Int) (v_idx_608 Int) (v_idx_605 Int) (v_idx_606 Int) (v_idx_609 Int)) (exists ((v_v_22_3 Int) (v_v_18_3 Int) (v_v_121_3 Int) (v_v_2_3 Int) (v_v_122_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int) (v_v_120_3 Int)) (and (or (< v_idx_604 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_604) (= 1 (select |c_#valid| v_idx_604))) (or (< v_idx_605 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_605) v_v_24_3)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_609) v_v_122_3) (< v_idx_609 (+ c_ULTIMATE.start_main_p2 1))) (= (select |c_old(#memory_int)| v_idx_606) v_v_4_3) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_608) (= (select |c_#memory_int| v_idx_608) v_v_121_3) (< v_idx_608 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_599) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_599) v_v_16_3)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_603) (= v_v_22_3 (select |c_#valid| v_idx_603))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_601 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_18_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_601))) (= v_v_2_3 (select |c_old(#valid)| v_idx_602)) (or (= (select |c_#memory_int| v_idx_607) v_v_120_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_607)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_600)) (< v_idx_600 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_600)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 14:54:20,873 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:21,362 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:21,362 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:29,246 WARN L181 SmtUtils]: Spent 7.88 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:29,247 WARN L270 ngHoareTripleChecker]: Pre: {2147483605#(or (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_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (or (< v_idx_593 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_593) (= 1 (select |#valid| v_idx_593))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_589) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_589) 0) (< v_idx_589 ULTIMATE.start_main_p2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= (select |old(#valid)| v_idx_591) v_v_2_3) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_597) (< v_idx_597 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_597) v_v_32_3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_588) v_v_16_3) (<= ULTIMATE.start_main_p2 v_idx_588)) (= v_v_4_3 (select |old(#memory_int)| v_idx_595)) (or (<= ULTIMATE.start_main_p1 v_idx_596) (= (select |#memory_int| v_idx_596) v_v_31_3)) (or (< v_idx_594 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_3 (select |#valid| v_idx_594))) (or (= (select |#memory_int| v_idx_598) v_v_33_3) (< v_idx_598 (+ ULTIMATE.start_main_p1 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_22_3 (select |#valid| v_idx_592)) (<= ULTIMATE.start_main_p2 v_idx_592)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_590) v_v_18_3) (< v_idx_590 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))) (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_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_582) (= 1 (select |#valid| v_idx_582)) (< v_idx_582 ULTIMATE.start_main_p2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_577) v_v_16_3) (<= ULTIMATE.start_main_p2 v_idx_577)) (or (= (select |#memory_int| v_idx_587) v_v_30_3) (< v_idx_587 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#memory_int| v_idx_585) v_v_28_3) (<= ULTIMATE.start_main_p2 v_idx_585)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_24_3 (select |#valid| v_idx_583)) (< v_idx_583 (+ ULTIMATE.start_main_p2 1))) (= (select |old(#valid)| v_idx_580) v_v_2_3) (= (select |old(#memory_int)| v_idx_584) v_v_4_3) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_586 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_586) (= (select |#memory_int| v_idx_586) 0)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_578) 0) (< v_idx_578 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_578)) (or (< v_idx_579 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_579) v_v_18_3)) (or (<= ULTIMATE.start_main_p2 v_idx_581) (= v_v_22_3 (select |#valid| v_idx_581)))))))} [2019-01-18 14:54:29,247 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:29,247 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:29,442 WARN L276 ngHoareTripleChecker]: Post: {2147483604#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_604 Int)) (or (< v_idx_604 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_604) (= 1 (select |#valid| v_idx_604)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_600 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_600)) (< v_idx_600 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_600))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:32,434 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:32,434 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:32,434 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:32,434 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:32,435 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_610 Int) (v_idx_611 Int) (v_idx_620 Int) (v_idx_614 Int) (v_idx_615 Int) (v_idx_612 Int) (v_idx_613 Int) (v_idx_618 Int) (v_idx_619 Int) (v_idx_616 Int) (v_idx_617 Int)) (exists ((v_v_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (= (select |c_old(#memory_int)| v_idx_617) v_v_4_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_612) v_v_18_3) (< v_idx_612 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_610) (= v_v_16_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_610))) (or (< v_idx_615 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_615)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_615)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_620 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_620) v_v_30_3)) (or (<= c_ULTIMATE.start_main_p2 v_idx_618) (= (select |c_#memory_int| v_idx_618) v_v_28_3)) (= v_v_2_3 (select |c_old(#valid)| v_idx_613)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_611) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_611)) (< v_idx_611 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_614) (= (select |c_#valid| v_idx_614) v_v_22_3)) (or (< v_idx_616 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_616) v_v_24_3)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_619) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_619) (< v_idx_619 c_ULTIMATE.start_main_p2))))) (forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_631 Int) (v_idx_625 Int) (v_idx_626 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_627 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_627) v_v_24_3)) (or (< v_idx_630 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_630) (= (select |c_#memory_int| v_idx_630) v_v_32_3)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_624)) (or (= (select |c_#valid| v_idx_626) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_626) (< v_idx_626 c_ULTIMATE.start_main_p2)) (or (= (select |c_#memory_int| v_idx_629) v_v_31_3) (<= c_ULTIMATE.start_main_p1 v_idx_629)) (or (< v_idx_622 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_622) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_622))) (or (<= c_ULTIMATE.start_main_p2 v_idx_621) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_621) v_v_16_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_628)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_625) v_v_22_3) (<= c_ULTIMATE.start_main_p2 v_idx_625)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_623) v_v_18_3) (< v_idx_623 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_631 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_631) v_v_33_3))))))} [2019-01-18 14:54:32,435 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:32,435 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:32,435 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_641 Int) (v_idx_642 Int) (v_idx_636 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_22_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_165_2 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_166_2 Int) (v_v_24_3 Int) (v_v_167_2 Int)) (and (= (select |c_old(#memory_int)| v_idx_639) v_v_4_3) (<= (+ v_v_166_2 1) 0) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_633 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_633) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_633))) (or (<= c_ULTIMATE.start_main_p2 v_idx_636) (= v_v_22_3 (select |c_#valid| v_idx_636))) (= (select |c_old(#valid)| v_idx_635) v_v_2_3) (or (< v_idx_641 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_641) v_v_166_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_641)) (or (= (select |c_#memory_int| v_idx_640) v_v_165_2) (<= c_ULTIMATE.start_main_p1 v_idx_640)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_637) (= 1 (select |c_#valid| v_idx_637)) (< v_idx_637 c_ULTIMATE.start_main_p2)) (<= (- v_v_166_2 (- v_v_166_2)) (- 2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_167_2 (select |c_#memory_int| v_idx_642)) (< v_idx_642 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_634 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_634) v_v_18_3)) (or (= (select |c_#valid| v_idx_638) v_v_24_3) (< v_idx_638 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_632) v_v_16_3) (<= c_ULTIMATE.start_main_p2 v_idx_632)))))} [2019-01-18 14:54:32,435 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:33,084 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:33,084 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:41,056 WARN L181 SmtUtils]: Spent 7.97 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:41,057 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_610 Int) (v_idx_611 Int) (v_idx_620 Int) (v_idx_614 Int) (v_idx_615 Int) (v_idx_612 Int) (v_idx_613 Int) (v_idx_618 Int) (v_idx_619 Int) (v_idx_616 Int) (v_idx_617 Int)) (exists ((v_v_22_3 Int) (v_v_30_3 Int) (v_v_28_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_4_3 Int) (v_v_24_3 Int)) (and (= (select |old(#memory_int)| v_idx_617) v_v_4_3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_612) v_v_18_3) (< v_idx_612 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_610) (= v_v_16_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_610))) (or (< v_idx_615 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_615)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_615)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_620 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_620) v_v_30_3)) (or (<= ULTIMATE.start_main_p2 v_idx_618) (= (select |#memory_int| v_idx_618) v_v_28_3)) (= v_v_2_3 (select |old(#valid)| v_idx_613)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_611) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_611)) (< v_idx_611 ULTIMATE.start_main_p2)) (or (<= ULTIMATE.start_main_p2 v_idx_614) (= (select |#valid| v_idx_614) v_v_22_3)) (or (< v_idx_616 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_616) v_v_24_3)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |#memory_int| v_idx_619) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_619) (< v_idx_619 ULTIMATE.start_main_p2))))) (forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_631 Int) (v_idx_625 Int) (v_idx_626 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_22_3 Int) (v_v_33_3 Int) (v_v_32_3 Int) (v_v_31_3 Int) (v_v_18_3 Int) (v_v_2_3 Int) (v_v_16_3 Int) (v_v_24_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_627 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_627) v_v_24_3)) (or (< v_idx_630 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_630) (= (select |#memory_int| v_idx_630) v_v_32_3)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_3 (select |old(#valid)| v_idx_624)) (or (= (select |#valid| v_idx_626) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_626) (< v_idx_626 ULTIMATE.start_main_p2)) (or (= (select |#memory_int| v_idx_629) v_v_31_3) (<= ULTIMATE.start_main_p1 v_idx_629)) (or (< v_idx_622 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_622) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_622))) (or (<= ULTIMATE.start_main_p2 v_idx_621) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_621) v_v_16_3)) (= v_v_4_3 (select |old(#memory_int)| v_idx_628)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_625) v_v_22_3) (<= ULTIMATE.start_main_p2 v_idx_625)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_623) v_v_18_3) (< v_idx_623 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_631 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_631) v_v_33_3))))))} [2019-01-18 14:54:41,057 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:41,057 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:41,264 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_637 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_637) (= 1 (select |#valid| v_idx_637)) (< v_idx_637 ULTIMATE.start_main_p2))) (forall ((v_idx_641 Int)) (or (< v_idx_641 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_641) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_641))) (<= (- (- ULTIMATE.start_main_p2) (- 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_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_633 Int)) (or (< v_idx_633 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_633) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_633)))))} [2019-01-18 14:54:41,402 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:54:41,402 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:54:41,403 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:41,403 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:54:41,403 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:41,403 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:54:41,412 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:41,412 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:54:41,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:41,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:41,420 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:54:41,452 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 1 [2019-01-18 14:54:41,453 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,460 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 9 treesize of output 12 [2019-01-18 14:54:41,467 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 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:54:41,468 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,474 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,483 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,483 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:18, output treesize:15 [2019-01-18 14:54:41,487 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:41,487 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_18|, |v_#valid_5|]. (and (= (select (store |v_#valid_5| ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2) 0) (= (store (store |v_#memory_int_18| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) |#memory_int|)) [2019-01-18 14:54:41,487 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 14:54:41,580 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:41,581 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 15 [2019-01-18 14:54:41,583 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,590 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,590 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:25, output treesize:11 [2019-01-18 14:54:41,601 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:41,601 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_19|]. (let ((.cse0 (select |v_#memory_int_19| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_19| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (= 0 (select |v_#memory_int_19| ULTIMATE.start_main_p2)) (= .cse0 0))) [2019-01-18 14:54:41,602 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 14:54:41,631 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:41,632 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:41,633 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:41,634 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:41,635 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-01-18 14:54:41,637 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:41,646 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:41,646 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:11 [2019-01-18 14:54:43,847 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:43,847 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_20|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_20| ULTIMATE.start_main_p2))) (and (= .cse0 0) (= (store |v_#memory_int_20| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= 1 (select |v_#memory_int_20| ULTIMATE.start_main_p1)))) [2019-01-18 14:54:43,847 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 14:54:43,992 INFO L273 TraceCheckUtils]: 0: Hoare triple {207#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {215#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:54:43,993 INFO L273 TraceCheckUtils]: 1: Hoare triple {215#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {219#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:54:43,994 INFO L273 TraceCheckUtils]: 2: Hoare triple {219#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {223#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} is VALID [2019-01-18 14:54:43,995 INFO L273 TraceCheckUtils]: 3: Hoare triple {223#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} assume !(#memory_int[main_p1] >= 0); {208#false} is VALID [2019-01-18 14:54:43,995 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:54:43,995 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:54:44,068 INFO L273 TraceCheckUtils]: 3: Hoare triple {227#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {208#false} is VALID [2019-01-18 14:54:44,070 INFO L273 TraceCheckUtils]: 2: Hoare triple {231#(<= 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]; {227#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:44,071 INFO L273 TraceCheckUtils]: 1: Hoare triple {235#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {231#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:44,073 INFO L273 TraceCheckUtils]: 0: Hoare triple {207#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {235#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:44,073 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:44,093 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:54:44,093 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 14:54:44,093 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:54:44,093 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:54:44,094 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:44,094 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:54:44,106 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:54:44,106 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:54:44,106 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:54:44,106 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2019-01-18 14:54:44,107 INFO L87 Difference]: Start difference. First operand 10 states and 21 transitions. Second operand 8 states. [2019-01-18 14:54:44,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,334 INFO L93 Difference]: Finished difference Result 18 states and 31 transitions. [2019-01-18 14:54:44,334 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-18 14:54:44,334 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:54:44,335 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:44,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:54:44,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 21 transitions. [2019-01-18 14:54:44,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:54:44,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 21 transitions. [2019-01-18 14:54:44,338 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 21 transitions. [2019-01-18 14:54:44,369 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:44,370 INFO L225 Difference]: With dead ends: 18 [2019-01-18 14:54:44,370 INFO L226 Difference]: Without dead ends: 15 [2019-01-18 14:54:44,371 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=53, Invalid=79, Unknown=0, NotChecked=0, Total=132 [2019-01-18 14:54:44,371 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 15 states. [2019-01-18 14:54:44,596 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 15 to 6. [2019-01-18 14:54:44,596 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:44,596 INFO L82 GeneralOperation]: Start isEquivalent. First operand 15 states. Second operand 6 states. [2019-01-18 14:54:44,596 INFO L74 IsIncluded]: Start isIncluded. First operand 15 states. Second operand 6 states. [2019-01-18 14:54:44,597 INFO L87 Difference]: Start difference. First operand 15 states. Second operand 6 states. [2019-01-18 14:54:44,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,598 INFO L93 Difference]: Finished difference Result 15 states and 26 transitions. [2019-01-18 14:54:44,598 INFO L276 IsEmpty]: Start isEmpty. Operand 15 states and 26 transitions. [2019-01-18 14:54:44,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:44,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:44,599 INFO L74 IsIncluded]: Start isIncluded. First operand 6 states. Second operand 15 states. [2019-01-18 14:54:44,599 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 15 states. [2019-01-18 14:54:44,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,601 INFO L93 Difference]: Finished difference Result 15 states and 26 transitions. [2019-01-18 14:54:44,601 INFO L276 IsEmpty]: Start isEmpty. Operand 15 states and 26 transitions. [2019-01-18 14:54:44,601 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:44,601 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:44,601 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:44,602 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:44,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:54:44,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2019-01-18 14:54:44,603 INFO L78 Accepts]: Start accepts. Automaton has 6 states and 9 transitions. Word has length 4 [2019-01-18 14:54:44,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:44,603 INFO L480 AbstractCegarLoop]: Abstraction has 6 states and 9 transitions. [2019-01-18 14:54:44,603 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:54:44,603 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states and 9 transitions. [2019-01-18 14:54:44,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:54:44,603 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:44,604 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:54:44,604 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:44,604 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:44,604 INFO L82 PathProgramCache]: Analyzing trace with hash 931594, now seen corresponding path program 1 times [2019-01-18 14:54:44,604 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:44,605 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:44,605 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:44,605 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:44,606 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:44,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:44,660 INFO L273 TraceCheckUtils]: 0: Hoare triple {305#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {307#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:44,662 INFO L273 TraceCheckUtils]: 1: Hoare triple {307#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {308#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} is VALID [2019-01-18 14:54:44,662 INFO L273 TraceCheckUtils]: 2: Hoare triple {308#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} assume #memory_int[main_p1] >= 0; {308#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} is VALID [2019-01-18 14:54:44,666 INFO L273 TraceCheckUtils]: 3: Hoare triple {308#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} assume !(#memory_int[main_p2] <= 0); {306#false} is VALID [2019-01-18 14:54:44,666 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:44,667 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:44,667 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:54:44,667 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:54:44,667 INFO L207 CegarAbsIntRunner]: [0], [8], [12], [13] [2019-01-18 14:54:44,668 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:54:44,668 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:54:46,924 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:46,925 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:46,925 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:46,925 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:46,925 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#valid| v_idx_665) v_v_24_4) (< v_idx_665 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_661 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_661) v_v_18_4)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_660) (< v_idx_660 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_660))) (or (< v_idx_669 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_669) v_v_30_4)) (or (<= c_ULTIMATE.start_main_p2 v_idx_667) (= (select |c_#memory_int| v_idx_667) v_v_28_4)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_668) (< v_idx_668 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_668) 0)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_664 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_664) (= 1 (select |c_#valid| v_idx_664))) (or (<= c_ULTIMATE.start_main_p2 v_idx_663) (= (select |c_#valid| v_idx_663) v_v_22_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_662)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_666) v_v_4_4) (or (<= c_ULTIMATE.start_main_p2 v_idx_659) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_659) v_v_16_4)))))} [2019-01-18 14:54:46,925 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:46,925 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:46,926 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= c_ULTIMATE.start_main_p2 v_idx_670) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_16_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_677)) (= v_v_2_4 (select |c_old(#valid)| v_idx_673)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_671 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_671) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (= (select |c_#valid| v_idx_674) v_v_22_4) (<= c_ULTIMATE.start_main_p2 v_idx_674)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_672) v_v_18_4) (< v_idx_672 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_680 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_680) v_v_30_4)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_679) (= (- 1) (select |c_#memory_int| v_idx_679)) (< v_idx_679 c_ULTIMATE.start_main_p2)) (or (= (select |c_#valid| v_idx_676) v_v_24_4) (< v_idx_676 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_678) v_v_28_4) (<= c_ULTIMATE.start_main_p2 v_idx_678)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_675) (= (select |c_#valid| v_idx_675) 1) (< v_idx_675 c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:54:46,926 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:47,379 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,380 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:47,579 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_660 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_660) (< v_idx_660 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_660)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_668 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_668) (< v_idx_668 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_668) 0))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_664 Int)) (or (< v_idx_664 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_664) (= 1 (select |#valid| v_idx_664)))))} [2019-01-18 14:54:47,579 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:47,580 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:47,614 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_675 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_675) (= (select |#valid| v_idx_675) 1) (< v_idx_675 ULTIMATE.start_main_p2))) (forall ((v_idx_679 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_679) (= (- 1) (select |#memory_int| v_idx_679)) (< v_idx_679 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_671 Int)) (or (< v_idx_671 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_671) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_671)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:54:50,019 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:50,019 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:50,019 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:50,020 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:50,020 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_16_4) (<= c_ULTIMATE.start_main_p2 v_idx_681)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_687) v_v_24_4) (< v_idx_687 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_690 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_690) (= (select |c_#memory_int| v_idx_690) 0)) (or (< v_idx_686 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_686) (= 1 (select |c_#valid| v_idx_686))) (or (= (select |c_#memory_int| v_idx_691) v_v_30_4) (< v_idx_691 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_684)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_682) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_682)) (< v_idx_682 c_ULTIMATE.start_main_p2)) (or (< v_idx_683 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_683) v_v_18_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_688)) (or (<= c_ULTIMATE.start_main_p2 v_idx_685) (= (select |c_#valid| v_idx_685) v_v_22_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_689) (= (select |c_#memory_int| v_idx_689) v_v_28_4)))))} [2019-01-18 14:54:50,020 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:50,020 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:50,020 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_696 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_22_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_47_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_24_4 Int) (v_v_4_4 Int) (v_v_45_4 Int)) (and (or (= (select |c_#memory_int| v_idx_702) v_v_47_4) (< v_idx_702 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_694) v_v_18_4) (< v_idx_694 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- v_v_46_4) v_v_46_4) 0) (or (< v_idx_698 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_698) v_v_24_4)) (= (select |c_old(#memory_int)| v_idx_699) v_v_4_4) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_22_4 (select |c_#valid| v_idx_696)) (<= c_ULTIMATE.start_malloc_ptr v_idx_696)) (<= 0 v_v_46_4) (or (= 1 (select |c_#valid| v_idx_697)) (< v_idx_697 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_697)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_693) (< v_idx_693 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_693))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_695)) (or (= (select |c_#memory_int| v_idx_701) v_v_46_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_701) (< v_idx_701 c_ULTIMATE.start_main_p1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_692) v_v_16_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_692)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_700) (= (select |c_#memory_int| v_idx_700) v_v_45_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 14:54:50,020 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:50,457 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:50,457 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:50,662 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_682 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_682) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_682)) (< v_idx_682 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_686 Int)) (or (< v_idx_686 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_686) (= 1 (select |#valid| v_idx_686)))) (forall ((v_idx_690 Int)) (or (< v_idx_690 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_690) (= (select |#memory_int| v_idx_690) 0))))} [2019-01-18 14:54:50,662 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:50,662 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:50,705 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_697 Int)) (or (= 1 (select |#valid| v_idx_697)) (< v_idx_697 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_697))) (forall ((v_idx_693 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_693) (< v_idx_693 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_693)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_701 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_701) (<= 0 (* 2 (select |#memory_int| v_idx_701))) (< v_idx_701 ULTIMATE.start_main_p1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_17 Int)) (or (<= 0 (select |#memory_int| v_prenex_17)) (< v_prenex_17 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_17))))} [2019-01-18 14:54:53,561 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:53,562 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:53,562 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:53,562 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:53,562 WARN L224 ngHoareTripleChecker]: Pre: {2147483595#(or (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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (< v_idx_705 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_18_4)) (or (< v_idx_712 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_712) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_712)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_704) (< v_idx_704 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_704))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_706) v_v_2_4) (or (= (select |c_#memory_int| v_idx_713) v_v_30_4) (< v_idx_713 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_16_4) (<= c_ULTIMATE.start_main_p2 v_idx_703)) (or (= (select |c_#valid| v_idx_707) v_v_22_4) (<= c_ULTIMATE.start_main_p2 v_idx_707)) (or (<= c_ULTIMATE.start_main_p2 v_idx_711) (= (select |c_#memory_int| v_idx_711) v_v_28_4)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_710) v_v_4_4) (or (= (select |c_#valid| v_idx_709) v_v_24_4) (< v_idx_709 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_708) (< v_idx_708 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_708) 1))))) (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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#valid| v_idx_718) v_v_22_4) (<= c_ULTIMATE.start_main_p2 v_idx_718)) (or (< v_idx_719 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_719) (= 1 (select |c_#valid| v_idx_719))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_716) v_v_18_4) (< v_idx_716 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_717)) (or (< v_idx_720 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_720) v_v_24_4)) (or (= (select |c_#memory_int| v_idx_724) v_v_30_4) (< v_idx_724 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_715) (< v_idx_715 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_715) 0)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_16_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_714)) (<= c_ULTIMATE.start_main_p2 v_idx_714)) (or (<= c_ULTIMATE.start_main_p2 v_idx_722) (= (select |c_#memory_int| v_idx_722) v_v_28_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_721) v_v_4_4) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_723) (< v_idx_723 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_723) (- 1)))))))} [2019-01-18 14:54:53,562 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:54:53,563 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:54:53,563 WARN L230 ngHoareTripleChecker]: Post: {2147483594#(or (forall ((v_idx_731 Int) (v_idx_732 Int) (v_idx_730 Int) (v_idx_735 Int) (v_idx_725 Int) (v_idx_733 Int) (v_idx_734 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_726)) (< v_idx_726 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_726)) (or (= (select |c_#memory_int| v_idx_735) v_v_30_4) (< v_idx_735 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_734) (= (select |c_#memory_int| v_idx_734) (- 1)) (< v_idx_734 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_733) (= (select |c_#memory_int| v_idx_733) v_v_28_4)) (or (< v_idx_731 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_4 (select |c_#valid| v_idx_731))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_730 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_730)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_730)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_729) (= (select |c_#valid| v_idx_729) v_v_22_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_728)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_18_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_727)) (< v_idx_727 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_725) (= v_v_16_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_725))) (= (select |c_old(#memory_int)| v_idx_732) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2)))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_736 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_739 Int) (v_idx_737 Int) (v_idx_738 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_741) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_741) (< v_idx_741 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_744) v_v_28_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_744)) (or (< v_idx_745 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_745) (= (select |c_#memory_int| v_idx_745) (- 2))) (= v_v_2_4 (select |c_old(#valid)| v_idx_739)) (or (= (select |c_#memory_int| v_idx_746) v_v_30_4) (< v_idx_746 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_740) v_v_22_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_740)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_736) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_736) v_v_16_4)) (or (< v_idx_738 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_738) v_v_18_4)) (or (< v_idx_742 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_742) v_v_24_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_737) (< v_idx_737 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_737) 0)) (= (select |c_old(#memory_int)| v_idx_743) v_v_4_4)))))} [2019-01-18 14:54:53,563 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:53,946 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:53,946 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:01,822 WARN L181 SmtUtils]: Spent 7.88 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:55:01,822 WARN L270 ngHoareTripleChecker]: Pre: {2147483595#(or (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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (< v_idx_705 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_705) v_v_18_4)) (or (< v_idx_712 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_712) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_712)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_704) (< v_idx_704 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_704))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= (select |old(#valid)| v_idx_706) v_v_2_4) (or (= (select |#memory_int| v_idx_713) v_v_30_4) (< v_idx_713 (+ ULTIMATE.start_main_p2 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_16_4) (<= ULTIMATE.start_main_p2 v_idx_703)) (or (= (select |#valid| v_idx_707) v_v_22_4) (<= ULTIMATE.start_main_p2 v_idx_707)) (or (<= ULTIMATE.start_main_p2 v_idx_711) (= (select |#memory_int| v_idx_711) v_v_28_4)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#memory_int)| v_idx_710) v_v_4_4) (or (= (select |#valid| v_idx_709) v_v_24_4) (< v_idx_709 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_708) (< v_idx_708 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_708) 1))))) (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_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |#valid| v_idx_718) v_v_22_4) (<= ULTIMATE.start_main_p2 v_idx_718)) (or (< v_idx_719 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_719) (= 1 (select |#valid| v_idx_719))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_716) v_v_18_4) (< v_idx_716 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |old(#valid)| v_idx_717)) (or (< v_idx_720 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_720) v_v_24_4)) (or (= (select |#memory_int| v_idx_724) v_v_30_4) (< v_idx_724 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_715) (< v_idx_715 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_715) 0)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_16_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_714)) (<= ULTIMATE.start_main_p2 v_idx_714)) (or (<= ULTIMATE.start_main_p2 v_idx_722) (= (select |#memory_int| v_idx_722) v_v_28_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= (select |old(#memory_int)| v_idx_721) v_v_4_4) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_723) (< v_idx_723 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_723) (- 1)))))))} [2019-01-18 14:55:01,822 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:55:01,822 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:10,039 WARN L181 SmtUtils]: Spent 8.22 s on a formula simplification that was a NOOP. DAG size: 143 [2019-01-18 14:55:10,040 WARN L276 ngHoareTripleChecker]: Post: {2147483594#(or (forall ((v_idx_731 Int) (v_idx_732 Int) (v_idx_730 Int) (v_idx_735 Int) (v_idx_725 Int) (v_idx_733 Int) (v_idx_734 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_726)) (< v_idx_726 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_726)) (or (= (select |#memory_int| v_idx_735) v_v_30_4) (< v_idx_735 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_734) (= (select |#memory_int| v_idx_734) (- 1)) (< v_idx_734 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_733) (= (select |#memory_int| v_idx_733) v_v_28_4)) (or (< v_idx_731 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_4 (select |#valid| v_idx_731))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_730 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_730)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_730)) (or (<= ULTIMATE.start_malloc_ptr v_idx_729) (= (select |#valid| v_idx_729) v_v_22_4)) (= v_v_2_4 (select |old(#valid)| v_idx_728)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= v_v_18_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_727)) (< v_idx_727 (+ ULTIMATE.start_main_p2 1))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_725) (= v_v_16_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_725))) (= (select |old(#memory_int)| v_idx_732) v_v_4_4) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2)))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_736 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_739 Int) (v_idx_737 Int) (v_idx_738 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_741) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_741) (< v_idx_741 ULTIMATE.start_malloc_ptr)) (or (= (select |#memory_int| v_idx_744) v_v_28_4) (<= ULTIMATE.start_malloc_ptr v_idx_744)) (or (< v_idx_745 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_745) (= (select |#memory_int| v_idx_745) (- 2))) (= v_v_2_4 (select |old(#valid)| v_idx_739)) (or (= (select |#memory_int| v_idx_746) v_v_30_4) (< v_idx_746 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_740) v_v_22_4) (<= ULTIMATE.start_malloc_ptr v_idx_740)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_736) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_736) v_v_16_4)) (or (< v_idx_738 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_738) v_v_18_4)) (or (< v_idx_742 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_742) v_v_24_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_737) (< v_idx_737 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_737) 0)) (= (select |old(#memory_int)| v_idx_743) v_v_4_4)))))} [2019-01-18 14:55:22,228 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:22,229 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:22,229 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:22,229 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:22,229 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_756) (= (select |c_#memory_int| v_idx_756) 0) (< v_idx_756 c_ULTIMATE.start_main_p2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_750)) (= (select |c_old(#memory_int)| v_idx_754) v_v_4_4) (or (= 1 (select |c_#valid| v_idx_752)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_752) (< v_idx_752 c_ULTIMATE.start_main_p2)) (or (= (select |c_#memory_int| v_idx_755) v_v_28_4) (<= c_ULTIMATE.start_main_p2 v_idx_755)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_757 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_757) v_v_30_4)) (or (= (select |c_#valid| v_idx_753) v_v_24_4) (< v_idx_753 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_748) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_748)) (< v_idx_748 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_749 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_749) v_v_18_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= v_v_22_4 (select |c_#valid| v_idx_751)) (<= c_ULTIMATE.start_main_p2 v_idx_751)) (or (<= c_ULTIMATE.start_main_p2 v_idx_747) (= v_v_16_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_747)))))) (forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (<= c_ULTIMATE.start_main_p2 v_idx_762) (= (select |c_#valid| v_idx_762) v_v_22_4)) (or (<= c_ULTIMATE.start_main_p2 v_idx_758) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_758) v_v_16_4)) (or (= (select |c_#valid| v_idx_764) v_v_24_4) (< v_idx_764 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_760) v_v_18_4) (< v_idx_760 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_767 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_767) (= (select |c_#memory_int| v_idx_767) (- 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_763 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_763) (= (select |c_#valid| v_idx_763) 1)) (or (< v_idx_768 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_768) v_v_30_4)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_761) v_v_2_4) (= (select |c_old(#memory_int)| v_idx_765) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_766) (= (select |c_#memory_int| v_idx_766) v_v_28_4)) (or (< v_idx_759 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_759) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_759)))))))} [2019-01-18 14:55:22,229 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:55:22,230 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:55:22,230 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_779 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_22_4 Int) (v_v_18_4 Int) (v_v_408_2 Int) (v_v_16_4 Int) (v_v_407_2 Int) (v_v_406_2 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (= v_v_2_4 (select |c_old(#valid)| v_idx_772)) (= (select |c_old(#memory_int)| v_idx_776) v_v_4_4) (or (= (select |c_#memory_int| v_idx_777) v_v_406_2) (<= c_ULTIMATE.start_main_p1 v_idx_777)) (<= (- (- v_v_407_2) v_v_407_2) 0) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_774) (< v_idx_774 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_774) 1)) (or (< v_idx_779 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_779) v_v_408_2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_770) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_770) 0) (< v_idx_770 c_ULTIMATE.start_malloc_ptr)) (<= 0 v_v_407_2) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_778) (< v_idx_778 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_778) v_v_407_2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_775 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_775) v_v_24_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_771) v_v_18_4) (< v_idx_771 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_773) (= (select |c_#valid| v_idx_773) v_v_22_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_769) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_769) v_v_16_4)))))} [2019-01-18 14:55:22,230 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:22,663 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:22,663 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:30,539 WARN L181 SmtUtils]: Spent 7.88 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-18 14:55:30,540 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_756) (= (select |#memory_int| v_idx_756) 0) (< v_idx_756 ULTIMATE.start_main_p2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |old(#valid)| v_idx_750)) (= (select |old(#memory_int)| v_idx_754) v_v_4_4) (or (= 1 (select |#valid| v_idx_752)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_752) (< v_idx_752 ULTIMATE.start_main_p2)) (or (= (select |#memory_int| v_idx_755) v_v_28_4) (<= ULTIMATE.start_main_p2 v_idx_755)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_757 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_757) v_v_30_4)) (or (= (select |#valid| v_idx_753) v_v_24_4) (< v_idx_753 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_748) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_748)) (< v_idx_748 ULTIMATE.start_main_p2)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_749 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_749) v_v_18_4)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= v_v_22_4 (select |#valid| v_idx_751)) (<= ULTIMATE.start_main_p2 v_idx_751)) (or (<= ULTIMATE.start_main_p2 v_idx_747) (= v_v_16_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_747)))))) (forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (<= ULTIMATE.start_main_p2 v_idx_762) (= (select |#valid| v_idx_762) v_v_22_4)) (or (<= ULTIMATE.start_main_p2 v_idx_758) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_758) v_v_16_4)) (or (= (select |#valid| v_idx_764) v_v_24_4) (< v_idx_764 (+ ULTIMATE.start_main_p2 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_760) v_v_18_4) (< v_idx_760 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_767 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_767) (= (select |#memory_int| v_idx_767) (- 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_763 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_763) (= (select |#valid| v_idx_763) 1)) (or (< v_idx_768 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_768) v_v_30_4)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_761) v_v_2_4) (= (select |old(#memory_int)| v_idx_765) v_v_4_4) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= ULTIMATE.start_main_p2 v_idx_766) (= (select |#memory_int| v_idx_766) v_v_28_4)) (or (< v_idx_759 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_759) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_759)))))))} [2019-01-18 14:55:30,540 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:55:30,540 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:55:30,752 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (forall ((v_idx_770 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_770) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_770) 0) (< v_idx_770 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_778 Int)) (or (<= 0 (select |#memory_int| v_idx_778)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_778) (< v_idx_778 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_774 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_774) (< v_idx_774 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_774) 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_18 Int)) (or (< v_prenex_18 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_18))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_18))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 14:55:33,048 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:33,048 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:33,049 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:33,049 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:33,049 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_790 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_22_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_2_4 Int) (v_v_47_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (= v_v_2_4 (select |c_old(#valid)| v_idx_783)) (<= (- (- v_v_46_4) v_v_46_4) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_782) v_v_18_4) (< v_idx_782 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_784) (= (select |c_#valid| v_idx_784) v_v_22_4)) (or (< v_idx_785 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_785) (= 1 (select |c_#valid| v_idx_785))) (or (= (select |c_#memory_int| v_idx_789) v_v_46_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_789) (< v_idx_789 c_ULTIMATE.start_main_p1)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_790) v_v_47_4) (< v_idx_790 (+ c_ULTIMATE.start_main_p1 1))) (<= 0 v_v_46_4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_781)) (< v_idx_781 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_781)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_780) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_780) v_v_16_4)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_788) v_v_45_4) (<= c_ULTIMATE.start_main_p1 v_idx_788)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_786 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_4 (select |c_#valid| v_idx_786))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_787) v_v_4_4))))} [2019-01-18 14:55:33,049 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:55:33,049 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:55:33,049 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_801 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_22_4 Int) (v_v_446_2 Int) (v_v_445_2 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_447_2 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (< v_idx_801 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_801) v_v_447_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_793) v_v_18_4) (< v_idx_793 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_791) v_v_16_4) (<= c_ULTIMATE.start_main_p2 v_idx_791)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 1 v_v_446_2) (= (select |c_old(#memory_int)| v_idx_798) v_v_4_4) (<= (- (- v_v_446_2) v_v_446_2) (- 2)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_792)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_792) (< v_idx_792 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_799) v_v_445_2) (<= c_ULTIMATE.start_main_p2 v_idx_799)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_795) (= (select |c_#valid| v_idx_795) v_v_22_4)) (or (< v_idx_796 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_796) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_796)) (= (select |c_old(#valid)| v_idx_794) v_v_2_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_800 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_800) (= (select |c_#memory_int| v_idx_800) v_v_446_2)) (or (= (select |c_#valid| v_idx_797) v_v_24_4) (< v_idx_797 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:55:33,049 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:33,676 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:33,677 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:33,849 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_785 Int)) (or (< v_idx_785 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_785) (= 1 (select |#valid| v_idx_785)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_789 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_789))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_789) (< v_idx_789 ULTIMATE.start_main_p1))) (forall ((v_prenex_19 Int)) (or (<= 0 (select |#memory_int| v_prenex_19)) (< v_prenex_19 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_19))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_781 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_781)) (< v_idx_781 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_781))))} [2019-01-18 14:55:33,849 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:55:33,849 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:55:33,897 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_792 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_792)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_792) (< v_idx_792 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_796 Int)) (or (< v_idx_796 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_796) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_796))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_800 Int)) (or (< v_idx_800 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_800) (<= 1 (select |#memory_int| v_idx_800)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_20 Int)) (or (< v_prenex_20 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_20) (<= 2 (* 2 (select |#memory_int| v_prenex_20))))))} [2019-01-18 14:55:36,649 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:36,649 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:36,650 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:36,650 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:36,650 WARN L224 ngHoareTripleChecker]: Pre: {2147483589#(or (forall ((v_idx_812 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_803) (< v_idx_803 c_ULTIMATE.start_main_p2) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_803) 0)) (or (<= c_ULTIMATE.start_main_p2 v_idx_806) (= (select |c_#valid| v_idx_806) v_v_22_4)) (or (= (select |c_#memory_int| v_idx_810) v_v_28_4) (<= c_ULTIMATE.start_main_p2 v_idx_810)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_807) (< v_idx_807 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_807) 1)) (or (<= c_ULTIMATE.start_main_p2 v_idx_802) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_802) v_v_16_4)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_804) v_v_18_4) (< v_idx_804 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_812 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_812) v_v_30_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_809)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_805)) (or (< v_idx_808 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_808) v_v_24_4)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_811 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_811) (- 1)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_811))))) (forall ((v_idx_820 Int) (v_idx_823 Int) (v_idx_813 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_402_2 Int) (v_v_401_2 Int) (v_v_395_2 Int) (v_v_398_2 Int) (v_v_397_2 Int) (v_v_399_2 Int) (v_v_405_2 Int) (v_v_404_2 Int) (v_v_403_2 Int)) (and (or (= (select |c_#valid| v_idx_818) 1) (< v_idx_818 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_818)) (or (= (select |c_#memory_int| v_idx_821) v_v_403_2) (< v_idx_821 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_821)) (or (= (select |c_#valid| v_idx_819) v_v_401_2) (< v_idx_819 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_815 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_397_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_815))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_403_2) v_v_403_2) 4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_814)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_814) (< v_idx_814 c_ULTIMATE.start_main_p2)) (= v_v_398_2 (select |c_old(#valid)| v_idx_816)) (or (= (select |c_#memory_int| v_idx_822) v_v_404_2) (< v_idx_822 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_820) (= (select |c_#memory_int| v_idx_820) v_v_402_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= v_v_403_2 0) (<= 0 (+ v_v_403_2 2)) (or (= v_v_395_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_813)) (<= c_ULTIMATE.start_main_p2 v_idx_813)) (<= (- v_v_403_2 (- v_v_403_2)) 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_817) (= (select |c_#valid| v_idx_817) v_v_399_2)) (= v_v_405_2 (select |c_old(#memory_int)| v_idx_823))))))} [2019-01-18 14:55:36,650 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:55:36,650 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:36,650 WARN L230 ngHoareTripleChecker]: Post: {2147483588#(forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_834 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_402_2 Int) (v_v_452_2 Int) (v_v_401_2 Int) (v_v_395_2 Int) (v_v_398_2 Int) (v_v_397_2 Int) (v_v_399_2 Int) (v_v_405_2 Int) (v_v_404_2 Int)) (and (<= (- (- v_v_452_2) v_v_452_2) 6) (<= 0 (+ v_v_452_2 3)) (or (<= c_ULTIMATE.start_main_p2 v_idx_832) (= (select |c_#memory_int| v_idx_832) v_v_402_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_401_2 (select |c_#valid| v_idx_830)) (< v_idx_830 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_825) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_825)) (< v_idx_825 c_ULTIMATE.start_main_p2)) (<= (- v_v_452_2 (- v_v_452_2)) (- 2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_828) (= v_v_399_2 (select |c_#valid| v_idx_828))) (or (= v_v_395_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_824)) (<= c_ULTIMATE.start_main_p2 v_idx_824)) (or (< v_idx_834 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_834) v_v_404_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_405_2 (select |c_old(#memory_int)| v_idx_831)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_397_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_826)) (< v_idx_826 (+ c_ULTIMATE.start_main_p2 1))) (<= (+ v_v_452_2 1) 0) (= (select |c_old(#valid)| v_idx_827) v_v_398_2) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_833) (< v_idx_833 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_833) v_v_452_2)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_829) (< v_idx_829 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_829))))))} [2019-01-18 14:55:36,650 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:37,020 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:37,020 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:46,842 WARN L181 SmtUtils]: Spent 1.16 m on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:56:46,842 WARN L270 ngHoareTripleChecker]: Pre: {2147483589#(or (forall ((v_idx_812 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_803) (< v_idx_803 ULTIMATE.start_main_p2) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_803) 0)) (or (<= ULTIMATE.start_main_p2 v_idx_806) (= (select |#valid| v_idx_806) v_v_22_4)) (or (= (select |#memory_int| v_idx_810) v_v_28_4) (<= ULTIMATE.start_main_p2 v_idx_810)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_807) (< v_idx_807 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_807) 1)) (or (<= ULTIMATE.start_main_p2 v_idx_802) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_802) v_v_16_4)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_804) v_v_18_4) (< v_idx_804 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_812 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_812) v_v_30_4)) (= v_v_4_4 (select |old(#memory_int)| v_idx_809)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |old(#valid)| v_idx_805)) (or (< v_idx_808 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_808) v_v_24_4)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_811 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_811) (- 1)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_811))))) (forall ((v_idx_820 Int) (v_idx_823 Int) (v_idx_813 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_402_2 Int) (v_v_401_2 Int) (v_v_395_2 Int) (v_v_398_2 Int) (v_v_397_2 Int) (v_v_399_2 Int) (v_v_405_2 Int) (v_v_404_2 Int) (v_v_403_2 Int)) (and (or (= (select |#valid| v_idx_818) 1) (< v_idx_818 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_818)) (or (= (select |#memory_int| v_idx_821) v_v_403_2) (< v_idx_821 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_821)) (or (= (select |#valid| v_idx_819) v_v_401_2) (< v_idx_819 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_815 (+ ULTIMATE.start_main_p2 1)) (= v_v_397_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_815))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_403_2) v_v_403_2) 4) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_814)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_814) (< v_idx_814 ULTIMATE.start_main_p2)) (= v_v_398_2 (select |old(#valid)| v_idx_816)) (or (= (select |#memory_int| v_idx_822) v_v_404_2) (< v_idx_822 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_820) (= (select |#memory_int| v_idx_820) v_v_402_2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= v_v_403_2 0) (<= 0 (+ v_v_403_2 2)) (or (= v_v_395_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_813)) (<= ULTIMATE.start_main_p2 v_idx_813)) (<= (- v_v_403_2 (- v_v_403_2)) 0) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= ULTIMATE.start_main_p2 v_idx_817) (= (select |#valid| v_idx_817) v_v_399_2)) (= v_v_405_2 (select |old(#memory_int)| v_idx_823))))))} [2019-01-18 14:56:46,842 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:56:46,842 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:56:47,040 WARN L276 ngHoareTripleChecker]: Post: {2147483588#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_833 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_833) (< v_idx_833 ULTIMATE.start_main_p2) (<= (+ (* 2 (select |#memory_int| v_idx_833)) 2) 0))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_23 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_23) (<= 0 (+ (* 2 (select |#memory_int| v_prenex_23)) 6)) (< v_prenex_23 ULTIMATE.start_main_p2))) (forall ((v_prenex_21 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_21) (<= (+ (select |#memory_int| v_prenex_21) 1) 0) (< v_prenex_21 ULTIMATE.start_main_p2))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_22 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_22) (< v_prenex_22 ULTIMATE.start_main_p2) (<= 0 (+ (select |#memory_int| v_prenex_22) 3)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_829 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_829) (< v_idx_829 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_829)))) (forall ((v_idx_825 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_825) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_825)) (< v_idx_825 ULTIMATE.start_main_p2))))} [2019-01-18 14:56:54,264 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:54,264 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:54,265 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:54,265 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:54,265 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_837) v_v_18_4) (< v_idx_837 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_844) (- 1)) (< v_idx_844 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_844)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_845 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_845) v_v_30_4)) (or (<= c_ULTIMATE.start_main_p2 v_idx_839) (= (select |c_#valid| v_idx_839) v_v_22_4)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_16_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= c_ULTIMATE.start_main_p2 v_idx_835)) (or (< v_idx_841 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_4 (select |c_#valid| v_idx_841))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_840) (= 1 (select |c_#valid| v_idx_840)) (< v_idx_840 c_ULTIMATE.start_main_p2)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_842)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_836) (< v_idx_836 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_836))) (or (= (select |c_#memory_int| v_idx_843) v_v_28_4) (<= c_ULTIMATE.start_main_p2 v_idx_843)) (= v_v_2_4 (select |c_old(#valid)| v_idx_838))))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_846 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_402_2 Int) (v_v_395_2 Int) (v_v_401_2 Int) (v_v_398_2 Int) (v_v_397_2 Int) (v_v_399_2 Int) (v_v_405_2 Int) (v_v_404_2 Int) (v_v_403_2 Int)) (and (or (= v_v_402_2 (select |c_#memory_int| v_idx_853)) (<= c_ULTIMATE.start_main_p2 v_idx_853)) (= v_v_398_2 (select |c_old(#valid)| v_idx_849)) (or (<= c_ULTIMATE.start_main_p2 v_idx_846) (= v_v_395_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_846))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_403_2) v_v_403_2) 4) (or (= (select |c_#valid| v_idx_851) 1) (< v_idx_851 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_851)) (or (= (select |c_#valid| v_idx_850) v_v_399_2) (<= c_ULTIMATE.start_main_p2 v_idx_850)) (or (< v_idx_847 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_847) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_847))) (or (< v_idx_855 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_855) v_v_404_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= v_v_403_2 0) (<= 0 (+ v_v_403_2 2)) (= (select |c_old(#memory_int)| v_idx_856) v_v_405_2) (<= (- v_v_403_2 (- v_v_403_2)) 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_397_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_848)) (< v_idx_848 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_854 c_ULTIMATE.start_main_p2) (= v_v_403_2 (select |c_#memory_int| v_idx_854)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_854)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_852 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_401_2 (select |c_#valid| v_idx_852)))))))} [2019-01-18 14:56:54,265 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:56:54,265 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:56:54,265 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_867 Int) (v_idx_857 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_22_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_642_2 Int) (v_v_2_4 Int) (v_v_641_2 Int) (v_v_643_2 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (<= (- (- v_v_642_2) v_v_642_2) 0) (or (< v_idx_867 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_867) v_v_643_2)) (= v_v_2_4 (select |c_old(#valid)| v_idx_860)) (or (= (select |c_#memory_int| v_idx_866) v_v_642_2) (< v_idx_866 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_866)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_864)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_862) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_862) (< v_idx_862 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_641_2 (select |c_#memory_int| v_idx_865)) (<= c_ULTIMATE.start_main_p1 v_idx_865)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_857) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_857) v_v_16_4)) (or (= (select |c_#valid| v_idx_861) v_v_22_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_861)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_858)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_858) (< v_idx_858 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= 0 v_v_642_2) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_859) v_v_18_4) (< v_idx_859 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_863) v_v_24_4) (< v_idx_863 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 14:56:54,266 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:54,911 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:54,911 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:58:07,696 WARN L181 SmtUtils]: Spent 1.21 m on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:58:07,697 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_837) v_v_18_4) (< v_idx_837 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#memory_int| v_idx_844) (- 1)) (< v_idx_844 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_844)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_845 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_845) v_v_30_4)) (or (<= ULTIMATE.start_main_p2 v_idx_839) (= (select |#valid| v_idx_839) v_v_22_4)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_16_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= ULTIMATE.start_main_p2 v_idx_835)) (or (< v_idx_841 (+ ULTIMATE.start_main_p2 1)) (= v_v_24_4 (select |#valid| v_idx_841))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_840) (= 1 (select |#valid| v_idx_840)) (< v_idx_840 ULTIMATE.start_main_p2)) (= v_v_4_4 (select |old(#memory_int)| v_idx_842)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_836) (< v_idx_836 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_836))) (or (= (select |#memory_int| v_idx_843) v_v_28_4) (<= ULTIMATE.start_main_p2 v_idx_843)) (= v_v_2_4 (select |old(#valid)| v_idx_838))))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_846 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_402_2 Int) (v_v_395_2 Int) (v_v_401_2 Int) (v_v_398_2 Int) (v_v_397_2 Int) (v_v_399_2 Int) (v_v_405_2 Int) (v_v_404_2 Int) (v_v_403_2 Int)) (and (or (= v_v_402_2 (select |#memory_int| v_idx_853)) (<= ULTIMATE.start_main_p2 v_idx_853)) (= v_v_398_2 (select |old(#valid)| v_idx_849)) (or (<= ULTIMATE.start_main_p2 v_idx_846) (= v_v_395_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_846))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- (- v_v_403_2) v_v_403_2) 4) (or (= (select |#valid| v_idx_851) 1) (< v_idx_851 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_851)) (or (= (select |#valid| v_idx_850) v_v_399_2) (<= ULTIMATE.start_main_p2 v_idx_850)) (or (< v_idx_847 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_847) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_847))) (or (< v_idx_855 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_855) v_v_404_2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= v_v_403_2 0) (<= 0 (+ v_v_403_2 2)) (= (select |old(#memory_int)| v_idx_856) v_v_405_2) (<= (- v_v_403_2 (- v_v_403_2)) 0) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_397_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_848)) (< v_idx_848 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_854 ULTIMATE.start_main_p2) (= v_v_403_2 (select |#memory_int| v_idx_854)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_854)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (< v_idx_852 (+ ULTIMATE.start_main_p2 1)) (= v_v_401_2 (select |#valid| v_idx_852)))))))} [2019-01-18 14:58:07,697 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:58:07,697 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:58:07,864 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_866 Int)) (or (< v_idx_866 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_866) (<= 0 (* 2 (select |#memory_int| v_idx_866))))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_858 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_858)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_858) (< v_idx_858 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_24 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_24) (< v_prenex_24 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_24)))) (forall ((v_idx_862 Int)) (or (= (select |#valid| v_idx_862) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_862) (< v_idx_862 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:58:10,755 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:58:10,756 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:58:10,756 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:58:10,756 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:58:10,756 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_878 Int) (v_idx_868 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (= v_v_2_4 (select |c_old(#valid)| v_idx_871)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_872) (= v_v_22_4 (select |c_#valid| v_idx_872))) (or (< v_idx_877 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_877) (= (select |c_#memory_int| v_idx_877) (- 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_873) (= 1 (select |c_#valid| v_idx_873)) (< v_idx_873 c_ULTIMATE.start_main_p2)) (or (= v_v_24_4 (select |c_#valid| v_idx_874)) (< v_idx_874 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_875)) (or (= v_v_18_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_870)) (< v_idx_870 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_869)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_869) (< v_idx_869 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_876) v_v_28_4) (<= c_ULTIMATE.start_main_p2 v_idx_876)) (or (< v_idx_878 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_878) v_v_30_4)) (or (= v_v_16_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_868)) (<= c_ULTIMATE.start_main_p2 v_idx_868))))) (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_889 Int) (v_idx_879 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_634_2 Int) (v_v_637_2 Int) (v_v_636_2 Int) (v_v_639_2 Int) (v_v_638_2 Int) (v_v_640_2 Int) (v_v_630_2 Int) (v_v_633_2 Int) (v_v_632_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_883) (= (select |c_#valid| v_idx_883) v_v_634_2)) (or (= (select |c_#valid| v_idx_885) v_v_636_2) (< v_idx_885 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_888 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_888) v_v_639_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_880) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_880) (< v_idx_880 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_632_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_881)) (< v_idx_881 (+ c_ULTIMATE.start_main_p2 1))) (<= v_v_638_2 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_633_2 (select |c_old(#valid)| v_idx_882)) (<= (- (- v_v_638_2) v_v_638_2) 6) (= (select |c_old(#memory_int)| v_idx_889) v_v_640_2) (or (= (select |c_#valid| v_idx_884) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_884) (< v_idx_884 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_886) (= (select |c_#memory_int| v_idx_886) v_v_637_2)) (or (= v_v_630_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_879)) (<= c_ULTIMATE.start_main_p2 v_idx_879)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= 0 (+ v_v_638_2 3)) (or (< v_idx_887 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_887) (= (select |c_#memory_int| v_idx_887) v_v_638_2)) (<= (- v_v_638_2 (- v_v_638_2)) 0)))))} [2019-01-18 14:58:10,756 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:58:10,756 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:58:10,757 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_900 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_634_2 Int) (v_v_637_2 Int) (v_v_636_2 Int) (v_v_684_2 Int) (v_v_639_2 Int) (v_v_640_2 Int) (v_v_630_2 Int) (v_v_633_2 Int) (v_v_632_2 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_894) (= (select |c_#valid| v_idx_894) v_v_634_2)) (<= (+ v_v_684_2 1) 0) (or (< v_idx_899 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_899) (= v_v_684_2 (select |c_#memory_int| v_idx_899))) (<= (- (- v_v_684_2) v_v_684_2) 8) (<= 0 (+ v_v_684_2 4)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_892 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_632_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_892))) (or (< v_idx_896 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_896) v_v_636_2)) (= v_v_633_2 (select |c_old(#valid)| v_idx_893)) (or (= v_v_637_2 (select |c_#memory_int| v_idx_898)) (<= c_ULTIMATE.start_malloc_ptr v_idx_898)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_900) v_v_639_2) (< v_idx_900 (+ c_ULTIMATE.start_main_p2 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_891)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_891) (< v_idx_891 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#valid| v_idx_895) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_895) (< v_idx_895 c_ULTIMATE.start_malloc_ptr)) (<= (- v_v_684_2 (- v_v_684_2)) (- 2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_890) (= v_v_630_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_890))) (= v_v_640_2 (select |c_old(#memory_int)| v_idx_897)))))} [2019-01-18 14:58:10,757 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:58:11,139 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:58:11,139 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:59:26,075 WARN L181 SmtUtils]: Spent 1.25 m on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 14:59:26,076 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_878 Int) (v_idx_868 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (= v_v_2_4 (select |old(#valid)| v_idx_871)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_872) (= v_v_22_4 (select |#valid| v_idx_872))) (or (< v_idx_877 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_877) (= (select |#memory_int| v_idx_877) (- 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_873) (= 1 (select |#valid| v_idx_873)) (< v_idx_873 ULTIMATE.start_main_p2)) (or (= v_v_24_4 (select |#valid| v_idx_874)) (< v_idx_874 (+ ULTIMATE.start_main_p2 1))) (= v_v_4_4 (select |old(#memory_int)| v_idx_875)) (or (= v_v_18_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_870)) (< v_idx_870 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_869)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_869) (< v_idx_869 ULTIMATE.start_main_p2)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |#memory_int| v_idx_876) v_v_28_4) (<= ULTIMATE.start_main_p2 v_idx_876)) (or (< v_idx_878 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_878) v_v_30_4)) (or (= v_v_16_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_868)) (<= ULTIMATE.start_main_p2 v_idx_868))))) (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_889 Int) (v_idx_879 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_634_2 Int) (v_v_637_2 Int) (v_v_636_2 Int) (v_v_639_2 Int) (v_v_638_2 Int) (v_v_640_2 Int) (v_v_630_2 Int) (v_v_633_2 Int) (v_v_632_2 Int)) (and (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_883) (= (select |#valid| v_idx_883) v_v_634_2)) (or (= (select |#valid| v_idx_885) v_v_636_2) (< v_idx_885 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_888 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_888) v_v_639_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_880) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_880) (< v_idx_880 ULTIMATE.start_main_p2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= v_v_632_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_881)) (< v_idx_881 (+ ULTIMATE.start_main_p2 1))) (<= v_v_638_2 0) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (= v_v_633_2 (select |old(#valid)| v_idx_882)) (<= (- (- v_v_638_2) v_v_638_2) 6) (= (select |old(#memory_int)| v_idx_889) v_v_640_2) (or (= (select |#valid| v_idx_884) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_884) (< v_idx_884 ULTIMATE.start_main_p2)) (or (<= ULTIMATE.start_main_p2 v_idx_886) (= (select |#memory_int| v_idx_886) v_v_637_2)) (or (= v_v_630_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_879)) (<= ULTIMATE.start_main_p2 v_idx_879)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (<= 0 (+ v_v_638_2 3)) (or (< v_idx_887 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_887) (= (select |#memory_int| v_idx_887) v_v_638_2)) (<= (- v_v_638_2 (- v_v_638_2)) 0)))))} [2019-01-18 14:59:26,076 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:59:26,076 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:59:26,301 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_899 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_899)) 2) 0) (< v_idx_899 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_899))) (forall ((v_prenex_25 Int)) (or (< v_prenex_25 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_25) (<= (+ (select |#memory_int| v_prenex_25) 1) 0))) (forall ((v_prenex_27 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_27) (<= 0 (+ (select |#memory_int| v_prenex_27) 4)) (< v_prenex_27 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_891 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_891)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_891) (< v_idx_891 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_895 Int)) (or (= (select |#valid| v_idx_895) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_895) (< v_idx_895 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_26 Int)) (or (< v_prenex_26 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_26) (<= 0 (+ (* 2 (select |#memory_int| v_prenex_26)) 8)))))} [2019-01-18 14:59:36,263 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:59:36,263 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:59:36,264 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:59:36,264 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:59:36,264 WARN L224 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_922 Int) (v_idx_912 Int) (v_idx_920 Int) (v_idx_921 Int) (v_idx_915 Int) (v_idx_916 Int) (v_idx_913 Int) (v_idx_914 Int) (v_idx_919 Int) (v_idx_917 Int) (v_idx_918 Int)) (exists ((v_v_634_2 Int) (v_v_637_2 Int) (v_v_636_2 Int) (v_v_639_2 Int) (v_v_638_2 Int) (v_v_640_2 Int) (v_v_630_2 Int) (v_v_633_2 Int) (v_v_632_2 Int)) (and (or (< v_idx_917 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_917)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_917)) (or (<= c_ULTIMATE.start_main_p2 v_idx_916) (= v_v_634_2 (select |c_#valid| v_idx_916))) (or (< v_idx_918 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_636_2 (select |c_#valid| v_idx_918))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_913) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_913)) (< v_idx_913 c_ULTIMATE.start_main_p2)) (= v_v_633_2 (select |c_old(#valid)| v_idx_915)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_914) v_v_632_2) (< v_idx_914 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_919) (= (select |c_#memory_int| v_idx_919) v_v_637_2)) (or (= v_v_639_2 (select |c_#memory_int| v_idx_921)) (< v_idx_921 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= v_v_638_2 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_638_2) v_v_638_2) 6) (= v_v_640_2 (select |c_old(#memory_int)| v_idx_922)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= 0 (+ v_v_638_2 3)) (<= (- v_v_638_2 (- v_v_638_2)) 0) (or (< v_idx_920 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_920) v_v_638_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_920)) (or (= v_v_630_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_912)) (<= c_ULTIMATE.start_main_p2 v_idx_912))))) (forall ((v_idx_911 Int) (v_idx_901 Int) (v_idx_910 Int) (v_idx_904 Int) (v_idx_905 Int) (v_idx_902 Int) (v_idx_903 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_910) (< v_idx_910 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_910) (- 1))) (or (= (select |c_#valid| v_idx_905) v_v_22_4) (<= c_ULTIMATE.start_main_p2 v_idx_905)) (or (<= c_ULTIMATE.start_main_p2 v_idx_909) (= (select |c_#memory_int| v_idx_909) v_v_28_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_901) v_v_16_4) (<= c_ULTIMATE.start_main_p2 v_idx_901)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_903) v_v_18_4) (< v_idx_903 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_904)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_902) (< v_idx_902 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_902))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_908) v_v_4_4) (or (< v_idx_911 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_911) v_v_30_4)) (or (= (select |c_#valid| v_idx_907) v_v_24_4) (< v_idx_907 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_906 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_906) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_906))))))} [2019-01-18 14:59:36,264 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:59:36,264 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:59:36,264 WARN L230 ngHoareTripleChecker]: Post: {2147483582#(forall ((v_idx_930 Int) (v_idx_933 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_22_4 Int) (v_v_1005_2 Int) (v_v_1006_2 Int) (v_v_1007_2 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_2_4 Int) (v_v_24_4 Int) (v_v_4_4 Int)) (and (<= 0 v_v_1006_2) (or (< v_idx_925 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_925) v_v_18_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_926)) (<= (- (- v_v_1006_2) v_v_1006_2) 0) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_933 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_933) v_v_1007_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_923) v_v_16_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_923)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_928) (< v_idx_928 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_928))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_932 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_932) v_v_1006_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_932)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_924)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_924) (< v_idx_924 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_931) v_v_1005_2) (<= c_ULTIMATE.start_main_p1 v_idx_931)) (or (< v_idx_929 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_929) v_v_24_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_930) v_v_4_4) (or (= (select |c_#valid| v_idx_927) v_v_22_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_927)))))} [2019-01-18 14:59:36,265 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:59:36,796 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:59:36,796 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:17,145 WARN L181 SmtUtils]: Spent 40.35 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 15:00:17,146 WARN L270 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_922 Int) (v_idx_912 Int) (v_idx_920 Int) (v_idx_921 Int) (v_idx_915 Int) (v_idx_916 Int) (v_idx_913 Int) (v_idx_914 Int) (v_idx_919 Int) (v_idx_917 Int) (v_idx_918 Int)) (exists ((v_v_634_2 Int) (v_v_637_2 Int) (v_v_636_2 Int) (v_v_639_2 Int) (v_v_638_2 Int) (v_v_640_2 Int) (v_v_630_2 Int) (v_v_633_2 Int) (v_v_632_2 Int)) (and (or (< v_idx_917 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_917)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_917)) (or (<= ULTIMATE.start_main_p2 v_idx_916) (= v_v_634_2 (select |#valid| v_idx_916))) (or (< v_idx_918 (+ ULTIMATE.start_main_p2 1)) (= v_v_636_2 (select |#valid| v_idx_918))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_913) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_913)) (< v_idx_913 ULTIMATE.start_main_p2)) (= v_v_633_2 (select |old(#valid)| v_idx_915)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_914) v_v_632_2) (< v_idx_914 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_919) (= (select |#memory_int| v_idx_919) v_v_637_2)) (or (= v_v_639_2 (select |#memory_int| v_idx_921)) (< v_idx_921 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= v_v_638_2 0) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_638_2) v_v_638_2) 6) (= v_v_640_2 (select |old(#memory_int)| v_idx_922)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (<= 0 (+ v_v_638_2 3)) (<= (- v_v_638_2 (- v_v_638_2)) 0) (or (< v_idx_920 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_920) v_v_638_2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_920)) (or (= v_v_630_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_912)) (<= ULTIMATE.start_main_p2 v_idx_912))))) (forall ((v_idx_911 Int) (v_idx_901 Int) (v_idx_910 Int) (v_idx_904 Int) (v_idx_905 Int) (v_idx_902 Int) (v_idx_903 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_22_4 Int) (v_v_30_4 Int) (v_v_18_4 Int) (v_v_16_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_24_4 Int)) (and (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_910) (< v_idx_910 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_910) (- 1))) (or (= (select |#valid| v_idx_905) v_v_22_4) (<= ULTIMATE.start_main_p2 v_idx_905)) (or (<= ULTIMATE.start_main_p2 v_idx_909) (= (select |#memory_int| v_idx_909) v_v_28_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_901) v_v_16_4) (<= ULTIMATE.start_main_p2 v_idx_901)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_903) v_v_18_4) (< v_idx_903 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |old(#valid)| v_idx_904)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_902) (< v_idx_902 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_902))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= (select |old(#memory_int)| v_idx_908) v_v_4_4) (or (< v_idx_911 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_911) v_v_30_4)) (or (= (select |#valid| v_idx_907) v_v_24_4) (< v_idx_907 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_906 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_906) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_906))))))} [2019-01-18 15:00:17,146 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:00:17,146 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:00:17,365 WARN L276 ngHoareTripleChecker]: Post: {2147483582#(and (forall ((v_idx_932 Int)) (or (< v_idx_932 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_idx_932)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_932))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_928 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_928) (< v_idx_928 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_928)))) (forall ((v_idx_924 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_924)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_924) (< v_idx_924 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_28 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_28))) (< v_prenex_28 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_28))))} [2019-01-18 15:00:20,473 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:20,474 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:20,474 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:20,474 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:20,474 WARN L224 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 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_736_2 Int) (v_v_734_2 Int) (v_v_733_2 Int) (v_v_739_2 Int) (v_v_738_2 Int) (v_v_737_2 Int) (v_v_732_2 Int) (v_v_730_2 Int) (v_v_740_2 Int)) (and (or (= (select |c_#valid| v_idx_939) 1) (< v_idx_939 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_939)) (<= (- v_v_738_2 (- v_v_738_2)) (- 2)) (or (= v_v_737_2 (select |c_#memory_int| v_idx_941)) (<= c_ULTIMATE.start_malloc_ptr v_idx_941)) (<= (+ v_v_738_2 1) 0) (= (select |c_old(#valid)| v_idx_937) v_v_733_2) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_936) v_v_732_2) (< v_idx_936 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_935 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_935)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_935)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_934) (= v_v_730_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_934))) (or (< v_idx_942 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_942) (= (select |c_#memory_int| v_idx_942) v_v_738_2)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_740_2 (select |c_old(#memory_int)| v_idx_944)) (or (= (select |c_#valid| v_idx_938) v_v_734_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_938)) (or (< v_idx_943 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_943) v_v_739_2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#valid| v_idx_940) v_v_736_2) (< v_idx_940 (+ c_ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 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_744_2 Int) (v_v_745_2 Int) (v_v_747_2 Int) (v_v_748_2 Int) (v_v_749_2 Int) (v_v_750_2 Int) (v_v_743_2 Int) (v_v_751_2 Int) (v_v_741_2 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_945) (= v_v_741_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_945))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_947) v_v_743_2) (< v_idx_947 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_745_2 (select |c_#valid| v_idx_949)) (<= c_ULTIMATE.start_malloc_ptr v_idx_949)) (or (< v_idx_954 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_750_2 (select |c_#memory_int| v_idx_954))) (= v_v_744_2 (select |c_old(#valid)| v_idx_948)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_953) (< v_idx_953 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_953) v_v_749_2)) (or (= v_v_748_2 (select |c_#memory_int| v_idx_952)) (<= c_ULTIMATE.start_malloc_ptr v_idx_952)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_946)) (< v_idx_946 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_946)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= v_v_749_2 0) (<= (- v_v_749_2 (- v_v_749_2)) 0) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_951 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_951) v_v_747_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_751_2 (select |c_old(#memory_int)| v_idx_955)) (or (= (select |c_#valid| v_idx_950) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_950) (< v_idx_950 c_ULTIMATE.start_malloc_ptr))))))} [2019-01-18 15:00:20,474 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:00:20,474 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 15:00:20,475 WARN L230 ngHoareTripleChecker]: Post: {2147483580#(forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_966 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_744_2 Int) (v_v_745_2 Int) (v_v_1048_2 Int) (v_v_747_2 Int) (v_v_748_2 Int) (v_v_750_2 Int) (v_v_751_2 Int) (v_v_743_2 Int) (v_v_741_2 Int)) (and (or (= v_v_747_2 (select |c_#valid| v_idx_962)) (< v_idx_962 (+ c_ULTIMATE.start_main_p2 1))) (<= (+ v_v_1048_2 1) 0) (or (< v_idx_961 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_961)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_961)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_957) 0) (< v_idx_957 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_957)) (or (= v_v_741_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_956)) (<= c_ULTIMATE.start_malloc_ptr v_idx_956)) (= (select |c_old(#valid)| v_idx_959) v_v_744_2) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_965 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_965) (= (select |c_#memory_int| v_idx_965) v_v_1048_2)) (or (= (select |c_#memory_int| v_idx_964) v_v_748_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_964)) (<= (- v_v_1048_2 (- v_v_1048_2)) (- 2)) (= v_v_751_2 (select |c_old(#memory_int)| v_idx_963)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_745_2 (select |c_#valid| v_idx_960)) (<= c_ULTIMATE.start_malloc_ptr v_idx_960)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (< v_idx_958 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_743_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_958))) (or (< v_idx_966 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_966) v_v_750_2)))))} [2019-01-18 15:00:20,475 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:20,966 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:20,967 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:29,242 WARN L181 SmtUtils]: Spent 8.27 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 15:00:29,242 WARN L270 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 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_736_2 Int) (v_v_734_2 Int) (v_v_733_2 Int) (v_v_739_2 Int) (v_v_738_2 Int) (v_v_737_2 Int) (v_v_732_2 Int) (v_v_730_2 Int) (v_v_740_2 Int)) (and (or (= (select |#valid| v_idx_939) 1) (< v_idx_939 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_939)) (<= (- v_v_738_2 (- v_v_738_2)) (- 2)) (or (= v_v_737_2 (select |#memory_int| v_idx_941)) (<= ULTIMATE.start_malloc_ptr v_idx_941)) (<= (+ v_v_738_2 1) 0) (= (select |old(#valid)| v_idx_937) v_v_733_2) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_936) v_v_732_2) (< v_idx_936 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_935 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_935)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_935)) (or (<= ULTIMATE.start_malloc_ptr v_idx_934) (= v_v_730_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_934))) (or (< v_idx_942 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_942) (= (select |#memory_int| v_idx_942) v_v_738_2)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_740_2 (select |old(#memory_int)| v_idx_944)) (or (= (select |#valid| v_idx_938) v_v_734_2) (<= ULTIMATE.start_malloc_ptr v_idx_938)) (or (< v_idx_943 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_943) v_v_739_2)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |#valid| v_idx_940) v_v_736_2) (< v_idx_940 (+ ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 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_744_2 Int) (v_v_745_2 Int) (v_v_747_2 Int) (v_v_748_2 Int) (v_v_749_2 Int) (v_v_750_2 Int) (v_v_743_2 Int) (v_v_751_2 Int) (v_v_741_2 Int)) (and (or (<= ULTIMATE.start_malloc_ptr v_idx_945) (= v_v_741_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_945))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_947) v_v_743_2) (< v_idx_947 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_745_2 (select |#valid| v_idx_949)) (<= ULTIMATE.start_malloc_ptr v_idx_949)) (or (< v_idx_954 (+ ULTIMATE.start_main_p2 1)) (= v_v_750_2 (select |#memory_int| v_idx_954))) (= v_v_744_2 (select |old(#valid)| v_idx_948)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_953) (< v_idx_953 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_953) v_v_749_2)) (or (= v_v_748_2 (select |#memory_int| v_idx_952)) (<= ULTIMATE.start_malloc_ptr v_idx_952)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_946)) (< v_idx_946 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_946)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= v_v_749_2 0) (<= (- v_v_749_2 (- v_v_749_2)) 0) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_951 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_951) v_v_747_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_751_2 (select |old(#memory_int)| v_idx_955)) (or (= (select |#valid| v_idx_950) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_950) (< v_idx_950 ULTIMATE.start_malloc_ptr))))))} [2019-01-18 15:00:29,242 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:00:29,242 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 15:00:29,419 WARN L276 ngHoareTripleChecker]: Post: {2147483580#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_965 Int)) (or (< v_idx_965 ULTIMATE.start_malloc_ptr) (<= (+ (* 2 (select |#memory_int| v_idx_965)) 2) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_965))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_961 Int)) (or (< v_idx_961 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_961)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_961))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_29 Int)) (or (< v_prenex_29 ULTIMATE.start_malloc_ptr) (<= (+ (select |#memory_int| v_prenex_29) 1) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_29))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_957 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_957) 0) (< v_idx_957 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_957))))} [2019-01-18 15:00:32,434 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:32,434 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:32,434 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:32,435 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:32,435 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_977 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_736_2 Int) (v_v_734_2 Int) (v_v_733_2 Int) (v_v_739_2 Int) (v_v_738_2 Int) (v_v_737_2 Int) (v_v_732_2 Int) (v_v_730_2 Int) (v_v_740_2 Int)) (and (<= (- v_v_738_2 (- v_v_738_2)) (- 2)) (or (< v_idx_972 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_972) (= 1 (select |c_#valid| v_idx_972))) (or (< v_idx_975 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_975) (= (select |c_#memory_int| v_idx_975) v_v_738_2)) (or (= v_v_736_2 (select |c_#valid| v_idx_973)) (< v_idx_973 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_732_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_969)) (< v_idx_969 (+ c_ULTIMATE.start_main_p2 1))) (<= (+ v_v_738_2 1) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_968)) (< v_idx_968 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_968)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_974) (= v_v_737_2 (select |c_#memory_int| v_idx_974))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_733_2 (select |c_old(#valid)| v_idx_970)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_967) (= v_v_730_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_967))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_976 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_739_2 (select |c_#memory_int| v_idx_976))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_740_2 (select |c_old(#memory_int)| v_idx_977)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_971) (= v_v_734_2 (select |c_#valid| v_idx_971)))))) (forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 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_744_2 Int) (v_v_745_2 Int) (v_v_747_2 Int) (v_v_748_2 Int) (v_v_749_2 Int) (v_v_750_2 Int) (v_v_751_2 Int) (v_v_743_2 Int) (v_v_741_2 Int)) (and (or (= (select |c_#memory_int| v_idx_986) v_v_749_2) (< v_idx_986 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_986)) (or (= (select |c_#valid| v_idx_984) v_v_747_2) (< v_idx_984 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_982) (= (select |c_#valid| v_idx_982) v_v_745_2)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_985) v_v_748_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_985)) (or (< v_idx_979 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_979) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_979) 0)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= v_v_749_2 0) (<= (- v_v_749_2 (- v_v_749_2)) 0) (= v_v_744_2 (select |c_old(#valid)| v_idx_981)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_978) (= v_v_741_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_978))) (= v_v_751_2 (select |c_old(#memory_int)| v_idx_988)) (or (= v_v_743_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_980)) (< v_idx_980 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_983) 1) (< v_idx_983 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_983)) (or (< v_idx_987 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_750_2 (select |c_#memory_int| v_idx_987)))))))} [2019-01-18 15:00:32,435 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:00:32,435 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:00:32,435 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_993 Int) (v_idx_994 Int) (v_idx_999 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_736_2 Int) (v_v_734_2 Int) (v_v_733_2 Int) (v_v_1094_2 Int) (v_v_1095_2 Int) (v_v_1096_2 Int) (v_v_732_2 Int) (v_v_730_2 Int) (v_v_740_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_990) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_990)) (< v_idx_990 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_993) (= (select |c_#valid| v_idx_993) v_v_734_2)) (= v_v_733_2 (select |c_old(#valid)| v_idx_992)) (= (select |c_old(#memory_int)| v_idx_999) v_v_740_2) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_996) v_v_1094_2) (<= c_ULTIMATE.start_main_p1 v_idx_996)) (or (< v_idx_991 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_732_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_991))) (<= (- (- v_v_1095_2) v_v_1095_2) 0) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_989) (= v_v_730_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_989))) (or (< v_idx_995 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_736_2 (select |c_#valid| v_idx_995))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_994) (= (select |c_#valid| v_idx_994) 1) (< v_idx_994 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= 0 v_v_1095_2) (or (= (select |c_#memory_int| v_idx_998) v_v_1096_2) (< v_idx_998 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#memory_int| v_idx_997) v_v_1095_2) (< v_idx_997 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_997)))))} [2019-01-18 15:00:32,436 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:33,215 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:33,215 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:41,667 WARN L181 SmtUtils]: Spent 8.45 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-18 15:00:41,668 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_977 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_736_2 Int) (v_v_734_2 Int) (v_v_733_2 Int) (v_v_739_2 Int) (v_v_738_2 Int) (v_v_737_2 Int) (v_v_732_2 Int) (v_v_730_2 Int) (v_v_740_2 Int)) (and (<= (- v_v_738_2 (- v_v_738_2)) (- 2)) (or (< v_idx_972 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_972) (= 1 (select |#valid| v_idx_972))) (or (< v_idx_975 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_975) (= (select |#memory_int| v_idx_975) v_v_738_2)) (or (= v_v_736_2 (select |#valid| v_idx_973)) (< v_idx_973 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_732_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_969)) (< v_idx_969 (+ ULTIMATE.start_main_p2 1))) (<= (+ v_v_738_2 1) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_968)) (< v_idx_968 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_968)) (or (<= ULTIMATE.start_malloc_ptr v_idx_974) (= v_v_737_2 (select |#memory_int| v_idx_974))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_733_2 (select |old(#valid)| v_idx_970)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_967) (= v_v_730_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_967))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_976 (+ ULTIMATE.start_main_p2 1)) (= v_v_739_2 (select |#memory_int| v_idx_976))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= v_v_740_2 (select |old(#memory_int)| v_idx_977)) (or (<= ULTIMATE.start_malloc_ptr v_idx_971) (= v_v_734_2 (select |#valid| v_idx_971)))))) (forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 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_744_2 Int) (v_v_745_2 Int) (v_v_747_2 Int) (v_v_748_2 Int) (v_v_749_2 Int) (v_v_750_2 Int) (v_v_751_2 Int) (v_v_743_2 Int) (v_v_741_2 Int)) (and (or (= (select |#memory_int| v_idx_986) v_v_749_2) (< v_idx_986 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_986)) (or (= (select |#valid| v_idx_984) v_v_747_2) (< v_idx_984 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_982) (= (select |#valid| v_idx_982) v_v_745_2)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_985) v_v_748_2) (<= ULTIMATE.start_malloc_ptr v_idx_985)) (or (< v_idx_979 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_979) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_979) 0)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= v_v_749_2 0) (<= (- v_v_749_2 (- v_v_749_2)) 0) (= v_v_744_2 (select |old(#valid)| v_idx_981)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= ULTIMATE.start_malloc_ptr v_idx_978) (= v_v_741_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_978))) (= v_v_751_2 (select |old(#memory_int)| v_idx_988)) (or (= v_v_743_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_980)) (< v_idx_980 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#valid| v_idx_983) 1) (< v_idx_983 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_983)) (or (< v_idx_987 (+ ULTIMATE.start_main_p2 1)) (= v_v_750_2 (select |#memory_int| v_idx_987)))))))} [2019-01-18 15:00:41,668 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:00:41,668 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:00:41,832 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_994 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_994) (= (select |#valid| v_idx_994) 1) (< v_idx_994 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_997 Int)) (or (< v_idx_997 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_997) (<= 0 (* 2 (select |#memory_int| v_idx_997))))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_30 Int)) (or (<= 0 (select |#memory_int| v_prenex_30)) (< v_prenex_30 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_30))) (forall ((v_idx_990 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_990) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_990)) (< v_idx_990 ULTIMATE.start_malloc_ptr))))} [2019-01-18 15:00:41,957 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 15:00:41,957 INFO L272 AbstractInterpreter]: Visited 4 different actions 12 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 15:00:41,957 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 15:00:41,958 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 15:00:41,958 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 15:00:41,958 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 15:00:41,969 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 15:00:41,969 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 15:00:41,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:00:42,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:00:42,005 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 15:00:42,023 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 12 [2019-01-18 15:00:42,029 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2019-01-18 15:00:42,031 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 15:00:42,035 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 15:00:42,040 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 15:00:42,040 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:9, output treesize:11 [2019-01-18 15:00:42,044 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 15:00:42,044 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_23|, ULTIMATE.start_main_p1]. (= (store (store |v_#memory_int_23| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) |#memory_int|) [2019-01-18 15:00:42,044 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 15:00:42,055 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:00:42,057 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 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 5 [2019-01-18 15:00:42,058 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 15:00:42,060 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 15:00:42,061 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:16, output treesize:5 [2019-01-18 15:00:42,070 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 15:00:42,070 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_24|]. (let ((.cse0 (select |v_#memory_int_24| ULTIMATE.start_main_p2))) (and (= 0 .cse0) (= |#memory_int| (store |v_#memory_int_24| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))))) [2019-01-18 15:00:42,070 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) [2019-01-18 15:00:42,078 INFO L273 TraceCheckUtils]: 0: Hoare triple {305#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {307#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:00:42,079 INFO L273 TraceCheckUtils]: 1: Hoare triple {307#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {315#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-18 15:00:42,080 INFO L273 TraceCheckUtils]: 2: Hoare triple {315#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume #memory_int[main_p1] >= 0; {315#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-18 15:00:42,081 INFO L273 TraceCheckUtils]: 3: Hoare triple {315#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume !(#memory_int[main_p2] <= 0); {306#false} is VALID [2019-01-18 15:00:42,081 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 15:00:42,081 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 15:00:42,100 INFO L273 TraceCheckUtils]: 3: Hoare triple {322#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {306#false} is VALID [2019-01-18 15:00:42,101 INFO L273 TraceCheckUtils]: 2: Hoare triple {322#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {322#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:00:42,102 INFO L273 TraceCheckUtils]: 1: Hoare triple {329#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {322#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:00:42,103 INFO L273 TraceCheckUtils]: 0: Hoare triple {305#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {329#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} is VALID [2019-01-18 15:00:42,103 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 15:00:42,122 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 15:00:42,123 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 15:00:42,123 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 15:00:42,123 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 15:00:42,123 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 15:00:42,123 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 15:00:42,127 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:00:42,127 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 15:00:42,128 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 15:00:42,128 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 15:00:42,128 INFO L87 Difference]: Start difference. First operand 6 states and 9 transitions. Second operand 4 states. [2019-01-18 15:00:42,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,210 INFO L93 Difference]: Finished difference Result 12 states and 17 transitions. [2019-01-18 15:00:42,210 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 15:00:42,211 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 15:00:42,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 15:00:42,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 15:00:42,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 13 transitions. [2019-01-18 15:00:42,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 15:00:42,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 13 transitions. [2019-01-18 15:00:42,213 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 13 transitions. [2019-01-18 15:00:42,226 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:00:42,227 INFO L225 Difference]: With dead ends: 12 [2019-01-18 15:00:42,227 INFO L226 Difference]: Without dead ends: 10 [2019-01-18 15:00:42,227 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 2 SyntacticMatches, 1 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 15:00:42,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 10 states. [2019-01-18 15:00:42,253 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 10 to 8. [2019-01-18 15:00:42,253 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 15:00:42,253 INFO L82 GeneralOperation]: Start isEquivalent. First operand 10 states. Second operand 8 states. [2019-01-18 15:00:42,253 INFO L74 IsIncluded]: Start isIncluded. First operand 10 states. Second operand 8 states. [2019-01-18 15:00:42,254 INFO L87 Difference]: Start difference. First operand 10 states. Second operand 8 states. [2019-01-18 15:00:42,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,256 INFO L93 Difference]: Finished difference Result 10 states and 15 transitions. [2019-01-18 15:00:42,256 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 15 transitions. [2019-01-18 15:00:42,256 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:00:42,256 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:00:42,257 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 10 states. [2019-01-18 15:00:42,257 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 10 states. [2019-01-18 15:00:42,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,258 INFO L93 Difference]: Finished difference Result 10 states and 15 transitions. [2019-01-18 15:00:42,258 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 15 transitions. [2019-01-18 15:00:42,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:00:42,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:00:42,259 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 15:00:42,259 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 15:00:42,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 15:00:42,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 14 transitions. [2019-01-18 15:00:42,260 INFO L78 Accepts]: Start accepts. Automaton has 8 states and 14 transitions. Word has length 4 [2019-01-18 15:00:42,260 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 15:00:42,260 INFO L480 AbstractCegarLoop]: Abstraction has 8 states and 14 transitions. [2019-01-18 15:00:42,260 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 15:00:42,260 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 14 transitions. [2019-01-18 15:00:42,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2019-01-18 15:00:42,260 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 15:00:42,261 INFO L402 BasicCegarLoop]: trace histogram [2, 1, 1, 1] [2019-01-18 15:00:42,261 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 15:00:42,261 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 15:00:42,261 INFO L82 PathProgramCache]: Analyzing trace with hash 28814048, now seen corresponding path program 1 times [2019-01-18 15:00:42,261 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 15:00:42,262 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 15:00:42,262 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 15:00:42,262 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 15:00:42,263 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 15:00:42,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:00:42,324 INFO L273 TraceCheckUtils]: 0: Hoare triple {382#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-18 15:00:42,325 INFO L273 TraceCheckUtils]: 1: Hoare triple {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-18 15:00:42,326 INFO L273 TraceCheckUtils]: 2: Hoare triple {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-18 15:00:42,327 INFO L273 TraceCheckUtils]: 3: Hoare triple {384#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} assume #memory_int[main_p1] >= 0; {385#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:00:42,328 INFO L273 TraceCheckUtils]: 4: Hoare triple {385#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {383#false} is VALID [2019-01-18 15:00:42,328 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2019-01-18 15:00:42,329 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 15:00:42,329 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2019-01-18 15:00:42,329 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 15:00:42,330 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 5 [2019-01-18 15:00:42,330 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 15:00:42,330 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 15:00:42,371 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:00:42,371 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 15:00:42,371 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 15:00:42,371 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-18 15:00:42,371 INFO L87 Difference]: Start difference. First operand 8 states and 14 transitions. Second operand 4 states. [2019-01-18 15:00:42,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,445 INFO L93 Difference]: Finished difference Result 11 states and 18 transitions. [2019-01-18 15:00:42,445 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 15:00:42,445 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 5 [2019-01-18 15:00:42,445 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 15:00:42,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 15:00:42,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 9 transitions. [2019-01-18 15:00:42,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 15:00:42,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 9 transitions. [2019-01-18 15:00:42,447 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 9 transitions. [2019-01-18 15:00:42,455 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:00:42,455 INFO L225 Difference]: With dead ends: 11 [2019-01-18 15:00:42,456 INFO L226 Difference]: Without dead ends: 9 [2019-01-18 15:00:42,456 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 1 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-18 15:00:42,457 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 9 states. [2019-01-18 15:00:42,494 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 9 to 9. [2019-01-18 15:00:42,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 15:00:42,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 9 states. Second operand 9 states. [2019-01-18 15:00:42,495 INFO L74 IsIncluded]: Start isIncluded. First operand 9 states. Second operand 9 states. [2019-01-18 15:00:42,495 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 9 states. [2019-01-18 15:00:42,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,496 INFO L93 Difference]: Finished difference Result 9 states and 16 transitions. [2019-01-18 15:00:42,497 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 16 transitions. [2019-01-18 15:00:42,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:00:42,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:00:42,497 INFO L74 IsIncluded]: Start isIncluded. First operand 9 states. Second operand 9 states. [2019-01-18 15:00:42,498 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 9 states. [2019-01-18 15:00:42,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:00:42,499 INFO L93 Difference]: Finished difference Result 9 states and 16 transitions. [2019-01-18 15:00:42,499 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 16 transitions. [2019-01-18 15:00:42,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:00:42,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:00:42,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 15:00:42,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 15:00:42,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-01-18 15:00:42,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 16 transitions. [2019-01-18 15:00:42,501 INFO L78 Accepts]: Start accepts. Automaton has 9 states and 16 transitions. Word has length 5 [2019-01-18 15:00:42,501 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 15:00:42,501 INFO L480 AbstractCegarLoop]: Abstraction has 9 states and 16 transitions. [2019-01-18 15:00:42,501 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 15:00:42,501 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 16 transitions. [2019-01-18 15:00:42,501 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2019-01-18 15:00:42,502 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 15:00:42,502 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2019-01-18 15:00:42,502 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-01-18 15:00:42,502 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 15:00:42,502 INFO L82 PathProgramCache]: Analyzing trace with hash 28873630, now seen corresponding path program 1 times [2019-01-18 15:00:42,502 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 15:00:42,503 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 15:00:42,503 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 15:00:42,503 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 15:00:42,503 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 15:00:42,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:00:42,580 INFO L273 TraceCheckUtils]: 0: Hoare triple {438#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {440#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p2) 0))} is VALID [2019-01-18 15:00:42,582 INFO L273 TraceCheckUtils]: 1: Hoare triple {440#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p2) 0))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {441#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 1) 0))} is VALID [2019-01-18 15:00:42,583 INFO L273 TraceCheckUtils]: 2: Hoare triple {441#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {442#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} is VALID [2019-01-18 15:00:42,588 INFO L273 TraceCheckUtils]: 3: Hoare triple {442#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} assume #memory_int[main_p1] >= 0; {442#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} is VALID [2019-01-18 15:00:42,589 INFO L273 TraceCheckUtils]: 4: Hoare triple {442#(<= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)} assume !(#memory_int[main_p2] <= 0); {439#false} is VALID [2019-01-18 15:00:42,589 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 15:00:42,589 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 15:00:42,590 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 15:00:42,590 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 6 with the following transitions: [2019-01-18 15:00:42,590 INFO L207 CegarAbsIntRunner]: [0], [6], [8], [12], [13] [2019-01-18 15:00:42,591 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 15:00:42,591 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 15:00:45,096 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:45,097 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:45,097 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:45,097 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:45,097 WARN L224 ngHoareTripleChecker]: Pre: {2147483575#(forall ((v_idx_1016 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_1020 Int) (v_idx_1019 Int) (v_idx_1018 Int) (v_idx_1017 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1018) v_v_18_5) (< v_idx_1018 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_1026 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1026) v_v_30_5)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1020) (= (select |c_#valid| v_idx_1020) v_v_22_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_1019)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_1021)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1021) (< v_idx_1021 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1024) (= (select |c_#memory_int| v_idx_1024) v_v_28_5)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1025) (< v_idx_1025 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_1025))) (or (< v_idx_1022 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_1022) v_v_24_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1023)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1017)) (< v_idx_1017 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1017)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1016) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1016)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 15:00:45,097 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 15:00:45,097 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 15:00:45,098 WARN L230 ngHoareTripleChecker]: Post: {2147483574#(forall ((v_idx_1027 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_1031 Int) (v_idx_1030 Int) (v_idx_1029 Int) (v_idx_1028 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (or (= (select |c_#memory_int| v_idx_1035) v_v_31_5) (<= c_ULTIMATE.start_main_p1 v_idx_1035)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_1037) v_v_33_5) (< v_idx_1037 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1027) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1027)) (or (= (select |c_#valid| v_idx_1032) 1) (< v_idx_1032 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1032)) (or (< v_idx_1036 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1036) (= (select |c_#memory_int| v_idx_1036) v_v_32_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1028) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1028) (< v_idx_1028 c_ULTIMATE.start_main_p2)) (or (= (select |c_#valid| v_idx_1033) v_v_24_5) (< v_idx_1033 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1029) v_v_18_5) (< v_idx_1029 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_1031) v_v_22_5) (<= c_ULTIMATE.start_main_p2 v_idx_1031)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1034)) (= (select |c_old(#valid)| v_idx_1030) v_v_2_5))))} [2019-01-18 15:00:45,098 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:45,485 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:45,485 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:45,704 WARN L270 ngHoareTripleChecker]: Pre: {2147483575#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1025 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1025) (< v_idx_1025 ULTIMATE.start_main_p2) (= 0 (select |#memory_int| v_idx_1025)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1021 Int)) (or (= 1 (select |#valid| v_idx_1021)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1021) (< v_idx_1021 ULTIMATE.start_main_p2))) (forall ((v_idx_1017 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1017)) (< v_idx_1017 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1017))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:00:45,704 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 15:00:45,704 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 15:00:45,735 WARN L276 ngHoareTripleChecker]: Post: {2147483574#(and (forall ((v_idx_1028 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1028) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1028) (< v_idx_1028 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1032 Int)) (or (= (select |#valid| v_idx_1032) 1) (< v_idx_1032 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1032))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:00:48,059 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:48,060 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:48,060 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:48,060 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:48,060 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(forall ((v_idx_1038 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_1042 Int) (v_idx_1041 Int) (v_idx_1040 Int) (v_idx_1039 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (or (< v_idx_1047 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1047) (= (select |c_#memory_int| v_idx_1047) 0)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1039) (< v_idx_1039 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1039))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_1044) v_v_24_5) (< v_idx_1044 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_1045) v_v_4_5) (or (= (select |c_#memory_int| v_idx_1046) v_v_28_5) (<= c_ULTIMATE.start_main_p2 v_idx_1046)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1038) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1038)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_1042) (= (select |c_#valid| v_idx_1042) v_v_22_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1040) v_v_18_5) (< v_idx_1040 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_1048 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1048) v_v_30_5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1043) (< v_idx_1043 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_1043))) (= v_v_2_5 (select |c_old(#valid)| v_idx_1041)))))} [2019-01-18 15:00:48,060 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:00:48,061 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 15:00:48,061 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(forall ((v_idx_1049 Int) (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_1053 Int) (v_idx_1052 Int) (v_idx_1051 Int) (v_idx_1050 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1053) (= v_v_22_5 (select |c_#valid| v_idx_1053))) (or (= (- 1) (select |c_#memory_int| v_idx_1058)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1058) (< v_idx_1058 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1049) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1049) v_v_16_5)) (or (< v_idx_1051 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1051) v_v_18_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1055 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_24_5 (select |c_#valid| v_idx_1055))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_1052) v_v_2_5) (or (< v_idx_1050 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1050) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1050) 0)) (or (< v_idx_1054 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1054) (= (select |c_#valid| v_idx_1054) 1)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1056)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_1059) v_v_30_5) (< v_idx_1059 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_1057) v_v_28_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1057)))))} [2019-01-18 15:00:48,061 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:48,479 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:48,479 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:48,682 WARN L270 ngHoareTripleChecker]: Pre: {2147483573#(and (forall ((v_idx_1047 Int)) (or (< v_idx_1047 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1047) (= (select |#memory_int| v_idx_1047) 0))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1039 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1039) (< v_idx_1039 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1039)))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_1043 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1043) (< v_idx_1043 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_1043)))))} [2019-01-18 15:00:48,683 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:00:48,683 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 15:00:48,714 WARN L276 ngHoareTripleChecker]: Post: {2147483572#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1058 Int)) (or (= (- 1) (select |#memory_int| v_idx_1058)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1058) (< v_idx_1058 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1054 Int)) (or (< v_idx_1054 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1054) (= (select |#valid| v_idx_1054) 1))) (forall ((v_idx_1050 Int)) (or (< v_idx_1050 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1050) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1050) 0))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:00:51,326 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:51,326 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:51,326 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:51,327 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:51,327 WARN L224 ngHoareTripleChecker]: Pre: {2147483571#(forall ((v_idx_1069 Int) (v_idx_1068 Int) (v_idx_1067 Int) (v_idx_1066 Int) (v_idx_1065 Int) (v_idx_1064 Int) (v_idx_1063 Int) (v_idx_1062 Int) (v_idx_1061 Int) (v_idx_1060 Int) (v_idx_1070 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= (select |c_old(#valid)| v_idx_1063) v_v_2_5) (= (select |c_old(#memory_int)| v_idx_1067) v_v_4_5) (or (= (select |c_#valid| v_idx_1064) v_v_22_5) (<= c_ULTIMATE.start_main_p2 v_idx_1064)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1065 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_1065)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1065)) (or (= (select |c_#valid| v_idx_1066) v_v_24_5) (< v_idx_1066 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1060) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1060)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1068) (= (select |c_#memory_int| v_idx_1068) v_v_28_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1062 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1062) v_v_18_5)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1061) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1061)) (< v_idx_1061 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_1070 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1070) v_v_30_5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_1069) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1069) (< v_idx_1069 c_ULTIMATE.start_main_p2)))))} [2019-01-18 15:00:51,327 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:00:51,327 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:00:51,327 WARN L230 ngHoareTripleChecker]: Post: {2147483570#(forall ((v_idx_1079 Int) (v_idx_1078 Int) (v_idx_1077 Int) (v_idx_1076 Int) (v_idx_1075 Int) (v_idx_1074 Int) (v_idx_1073 Int) (v_idx_1072 Int) (v_idx_1071 Int) (v_idx_1081 Int) (v_idx_1080 Int)) (exists ((v_v_4_5 Int) (v_v_70_5 Int) (v_v_72_5 Int) (v_v_71_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= v_v_2_5 (select |c_old(#valid)| v_idx_1074)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1075) (= (select |c_#valid| v_idx_1075) v_v_22_5)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1076) (< v_idx_1076 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_1076) 1)) (or (< v_idx_1073 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1073) v_v_18_5)) (or (< v_idx_1077 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_1077) v_v_24_5)) (or (= (select |c_#memory_int| v_idx_1081) v_v_72_5) (< v_idx_1081 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_1078) v_v_4_5) (<= 0 v_v_71_5) (or (< v_idx_1072 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1072) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1072) 0)) (or (= (select |c_#memory_int| v_idx_1079) v_v_70_5) (<= c_ULTIMATE.start_main_p1 v_idx_1079)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1080) (< v_idx_1080 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1080) v_v_71_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= v_v_16_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1071)) (<= c_ULTIMATE.start_main_p2 v_idx_1071)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (<= (- (- v_v_71_5) v_v_71_5) 0))))} [2019-01-18 15:00:51,327 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:51,740 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:51,740 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:00:51,924 WARN L270 ngHoareTripleChecker]: Pre: {2147483571#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1069 Int)) (or (= (select |#memory_int| v_idx_1069) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1069) (< v_idx_1069 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_1061 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1061) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1061)) (< v_idx_1061 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_1065 Int)) (or (< v_idx_1065 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_1065)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1065))))} [2019-01-18 15:00:51,924 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:00:51,924 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:00:51,971 WARN L276 ngHoareTripleChecker]: Post: {2147483570#(and (forall ((v_idx_1076 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1076) (< v_idx_1076 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_1076) 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1080 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1080) (< v_idx_1080 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_1080))))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_prenex_31 Int)) (or (< v_prenex_31 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_31) (<= 0 (select |#memory_int| v_prenex_31)))) (forall ((v_idx_1072 Int)) (or (< v_idx_1072 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1072) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1072) 0))))} [2019-01-18 15:00:54,376 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:00:54,376 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:00:54,377 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:00:54,377 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:00:54,377 WARN L224 ngHoareTripleChecker]: Pre: {2147483569#(or (forall ((v_idx_1103 Int) (v_idx_1102 Int) (v_idx_1101 Int) (v_idx_1100 Int) (v_idx_1099 Int) (v_idx_1098 Int) (v_idx_1097 Int) (v_idx_1096 Int) (v_idx_1095 Int) (v_idx_1094 Int) (v_idx_1093 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (or (<= c_ULTIMATE.start_main_p2 v_idx_1093) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1093) v_v_16_5)) (= (select |c_old(#memory_int)| v_idx_1100) v_v_4_5) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_1097) v_v_22_5) (<= c_ULTIMATE.start_main_p2 v_idx_1097)) (= v_v_2_5 (select |c_old(#valid)| v_idx_1096)) (or (< v_idx_1095 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1095) v_v_18_5)) (or (< v_idx_1094 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1094) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1094) 0)) (or (= (select |c_#valid| v_idx_1099) v_v_24_5) (< v_idx_1099 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_1101) v_v_31_5) (<= c_ULTIMATE.start_main_p1 v_idx_1101)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1098) (= (select |c_#valid| v_idx_1098) 1) (< v_idx_1098 c_ULTIMATE.start_main_p2)) (or (< v_idx_1103 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_1103) v_v_33_5)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1102) (< v_idx_1102 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1102) v_v_32_5))))) (forall ((v_idx_1089 Int) (v_idx_1088 Int) (v_idx_1087 Int) (v_idx_1086 Int) (v_idx_1085 Int) (v_idx_1084 Int) (v_idx_1083 Int) (v_idx_1082 Int) (v_idx_1092 Int) (v_idx_1091 Int) (v_idx_1090 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_2_5 Int) (v_v_22_5 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1082) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1082)) (or (< v_idx_1084 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1084) v_v_18_5)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1090) (= (select |c_#memory_int| v_idx_1090) v_v_28_5)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1091) (< v_idx_1091 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_1091) 0)) (= (select |c_old(#memory_int)| v_idx_1089) v_v_4_5) (= (select |c_old(#valid)| v_idx_1085) v_v_2_5) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1083) (< v_idx_1083 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1083))) (or (< v_idx_1092 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1092) v_v_30_5)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_1088) v_v_24_5) (< v_idx_1088 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_main_p2 v_idx_1086) (= v_v_22_5 (select |c_#valid| v_idx_1086))) (or (= (select |c_#valid| v_idx_1087) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1087) (< v_idx_1087 c_ULTIMATE.start_main_p2))))))} [2019-01-18 15:00:54,377 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 15:00:54,377 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 15:00:54,377 WARN L230 ngHoareTripleChecker]: Post: {2147483568#(forall ((v_idx_1104 Int) (v_idx_1114 Int) (v_idx_1113 Int) (v_idx_1112 Int) (v_idx_1111 Int) (v_idx_1110 Int) (v_idx_1109 Int) (v_idx_1108 Int) (v_idx_1107 Int) (v_idx_1106 Int) (v_idx_1105 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_73_5 Int) (v_v_75_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (or (= (select |c_#valid| v_idx_1110) v_v_24_5) (< v_idx_1110 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#memory_int| v_idx_1114) v_v_75_5) (< v_idx_1114 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_1108) v_v_22_5) (<= c_ULTIMATE.start_main_p2 v_idx_1108)) (or (< v_idx_1109 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1109) (= (select |c_#valid| v_idx_1109) 1)) (= (select |c_old(#valid)| v_idx_1107) v_v_2_5) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1113) (< v_idx_1113 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1113) v_v_74_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_1112) v_v_73_5) (<= c_ULTIMATE.start_main_p1 v_idx_1112)) (= (select |c_old(#memory_int)| v_idx_1111) v_v_4_5) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1104) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1104)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1106) v_v_18_5) (< v_idx_1106 (+ c_ULTIMATE.start_main_p2 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1105)) (< v_idx_1105 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1105)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 15:00:54,377 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:00:54,785 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:00:54,785 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:01:02,665 WARN L181 SmtUtils]: Spent 7.88 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 15:01:02,666 WARN L270 ngHoareTripleChecker]: Pre: {2147483569#(or (forall ((v_idx_1103 Int) (v_idx_1102 Int) (v_idx_1101 Int) (v_idx_1100 Int) (v_idx_1099 Int) (v_idx_1098 Int) (v_idx_1097 Int) (v_idx_1096 Int) (v_idx_1095 Int) (v_idx_1094 Int) (v_idx_1093 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (or (<= ULTIMATE.start_main_p2 v_idx_1093) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1093) v_v_16_5)) (= (select |old(#memory_int)| v_idx_1100) v_v_4_5) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_1097) v_v_22_5) (<= ULTIMATE.start_main_p2 v_idx_1097)) (= v_v_2_5 (select |old(#valid)| v_idx_1096)) (or (< v_idx_1095 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1095) v_v_18_5)) (or (< v_idx_1094 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1094) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1094) 0)) (or (= (select |#valid| v_idx_1099) v_v_24_5) (< v_idx_1099 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_1101) v_v_31_5) (<= ULTIMATE.start_main_p1 v_idx_1101)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1098) (= (select |#valid| v_idx_1098) 1) (< v_idx_1098 ULTIMATE.start_main_p2)) (or (< v_idx_1103 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_1103) v_v_33_5)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1102) (< v_idx_1102 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_1102) v_v_32_5))))) (forall ((v_idx_1089 Int) (v_idx_1088 Int) (v_idx_1087 Int) (v_idx_1086 Int) (v_idx_1085 Int) (v_idx_1084 Int) (v_idx_1083 Int) (v_idx_1082 Int) (v_idx_1092 Int) (v_idx_1091 Int) (v_idx_1090 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_2_5 Int) (v_v_22_5 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1082) v_v_16_5) (<= ULTIMATE.start_main_p2 v_idx_1082)) (or (< v_idx_1084 (+ ULTIMATE.start_main_p2 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1084) v_v_18_5)) (or (<= ULTIMATE.start_main_p2 v_idx_1090) (= (select |#memory_int| v_idx_1090) v_v_28_5)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1091) (< v_idx_1091 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_1091) 0)) (= (select |old(#memory_int)| v_idx_1089) v_v_4_5) (= (select |old(#valid)| v_idx_1085) v_v_2_5) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1083) (< v_idx_1083 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1083))) (or (< v_idx_1092 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_1092) v_v_30_5)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_1088) v_v_24_5) (< v_idx_1088 (+ ULTIMATE.start_main_p2 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= ULTIMATE.start_main_p2 v_idx_1086) (= v_v_22_5 (select |#valid| v_idx_1086))) (or (= (select |#valid| v_idx_1087) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1087) (< v_idx_1087 ULTIMATE.start_main_p2))))))} [2019-01-18 15:01:02,666 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 15:01:02,666 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 15:01:02,845 WARN L276 ngHoareTripleChecker]: Post: {2147483568#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1109 Int)) (or (< v_idx_1109 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1109) (= (select |#valid| v_idx_1109) 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_1105 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1105)) (< v_idx_1105 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1105))))} [2019-01-18 15:01:05,912 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:01:05,912 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:01:05,912 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:01:05,912 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:01:05,913 WARN L224 ngHoareTripleChecker]: Pre: {2147483567#(or (forall ((v_idx_1115 Int) (v_idx_1125 Int) (v_idx_1124 Int) (v_idx_1123 Int) (v_idx_1122 Int) (v_idx_1121 Int) (v_idx_1120 Int) (v_idx_1119 Int) (v_idx_1118 Int) (v_idx_1117 Int) (v_idx_1116 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= (select |c_old(#memory_int)| v_idx_1122) v_v_4_5) (or (<= c_ULTIMATE.start_main_p2 v_idx_1119) (= (select |c_#valid| v_idx_1119) v_v_22_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1115) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1115)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1124) (< v_idx_1124 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_1124) 0)) (or (= (select |c_#memory_int| v_idx_1125) v_v_30_5) (< v_idx_1125 (+ c_ULTIMATE.start_main_p2 1))) (or (= 1 (select |c_#valid| v_idx_1120)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1120) (< v_idx_1120 c_ULTIMATE.start_main_p2)) (= (select |c_old(#valid)| v_idx_1118) v_v_2_5) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1116) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1116) (< v_idx_1116 c_ULTIMATE.start_main_p2)) (or (= v_v_18_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1117)) (< v_idx_1117 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_1123) (= (select |c_#memory_int| v_idx_1123) v_v_28_5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_#valid| v_idx_1121) v_v_24_5) (< v_idx_1121 (+ c_ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_1126 Int) (v_idx_1136 Int) (v_idx_1135 Int) (v_idx_1134 Int) (v_idx_1133 Int) (v_idx_1132 Int) (v_idx_1131 Int) (v_idx_1130 Int) (v_idx_1129 Int) (v_idx_1128 Int) (v_idx_1127 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1133)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1130) (= (select |c_#valid| v_idx_1130) v_v_22_5)) (or (< v_idx_1136 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_33_5 (select |c_#memory_int| v_idx_1136))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1131) (< v_idx_1131 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_1131))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1127) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1127) (< v_idx_1127 c_ULTIMATE.start_main_p2)) (= v_v_2_5 (select |c_old(#valid)| v_idx_1129)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_1126) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1126) v_v_16_5)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1135) (= (select |c_#memory_int| v_idx_1135) v_v_32_5) (< v_idx_1135 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1128) v_v_18_5) (< v_idx_1128 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_1134) (= (select |c_#memory_int| v_idx_1134) v_v_31_5)) (or (< v_idx_1132 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_1132) v_v_24_5))))))} [2019-01-18 15:01:05,913 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:01:05,913 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 15:01:05,913 WARN L230 ngHoareTripleChecker]: Post: {2147483566#(forall ((v_idx_1137 Int) (v_idx_1147 Int) (v_idx_1146 Int) (v_idx_1145 Int) (v_idx_1144 Int) (v_idx_1143 Int) (v_idx_1142 Int) (v_idx_1141 Int) (v_idx_1140 Int) (v_idx_1139 Int) (v_idx_1138 Int)) (exists ((v_v_4_5 Int) (v_v_18_5 Int) (v_v_121_5 Int) (v_v_122_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_120_5 Int) (v_v_2_5 Int) (v_v_22_5 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1142) (= 1 (select |c_#valid| v_idx_1142)) (< v_idx_1142 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_122_5 (select |c_#memory_int| v_idx_1147)) (< v_idx_1147 (+ c_ULTIMATE.start_main_p2 1))) (= (select |c_old(#valid)| v_idx_1140) v_v_2_5) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1137) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1137) v_v_16_5)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1146) (= (select |c_#memory_int| v_idx_1146) v_v_121_5) (< v_idx_1146 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_1141) v_v_22_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1141)) (or (= v_v_120_5 (select |c_#memory_int| v_idx_1145)) (<= c_ULTIMATE.start_malloc_ptr v_idx_1145)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1139) v_v_18_5) (< v_idx_1139 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1144)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1138) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1138)) (< v_idx_1138 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_1143 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_1143) v_v_24_5)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2))))} [2019-01-18 15:01:05,913 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:01:06,315 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:01:06,315 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:01:14,160 WARN L181 SmtUtils]: Spent 7.84 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 15:01:14,160 WARN L270 ngHoareTripleChecker]: Pre: {2147483567#(or (forall ((v_idx_1115 Int) (v_idx_1125 Int) (v_idx_1124 Int) (v_idx_1123 Int) (v_idx_1122 Int) (v_idx_1121 Int) (v_idx_1120 Int) (v_idx_1119 Int) (v_idx_1118 Int) (v_idx_1117 Int) (v_idx_1116 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= (select |old(#memory_int)| v_idx_1122) v_v_4_5) (or (<= ULTIMATE.start_main_p2 v_idx_1119) (= (select |#valid| v_idx_1119) v_v_22_5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1115) v_v_16_5) (<= ULTIMATE.start_main_p2 v_idx_1115)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1124) (< v_idx_1124 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_1124) 0)) (or (= (select |#memory_int| v_idx_1125) v_v_30_5) (< v_idx_1125 (+ ULTIMATE.start_main_p2 1))) (or (= 1 (select |#valid| v_idx_1120)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1120) (< v_idx_1120 ULTIMATE.start_main_p2)) (= (select |old(#valid)| v_idx_1118) v_v_2_5) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1116) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1116) (< v_idx_1116 ULTIMATE.start_main_p2)) (or (= v_v_18_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1117)) (< v_idx_1117 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_1123) (= (select |#memory_int| v_idx_1123) v_v_28_5)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |#valid| v_idx_1121) v_v_24_5) (< v_idx_1121 (+ ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_1126 Int) (v_idx_1136 Int) (v_idx_1135 Int) (v_idx_1134 Int) (v_idx_1133 Int) (v_idx_1132 Int) (v_idx_1131 Int) (v_idx_1130 Int) (v_idx_1129 Int) (v_idx_1128 Int) (v_idx_1127 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (= v_v_4_5 (select |old(#memory_int)| v_idx_1133)) (or (<= ULTIMATE.start_main_p2 v_idx_1130) (= (select |#valid| v_idx_1130) v_v_22_5)) (or (< v_idx_1136 (+ ULTIMATE.start_main_p1 1)) (= v_v_33_5 (select |#memory_int| v_idx_1136))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1131) (< v_idx_1131 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_1131))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1127) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1127) (< v_idx_1127 ULTIMATE.start_main_p2)) (= v_v_2_5 (select |old(#valid)| v_idx_1129)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p2 v_idx_1126) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1126) v_v_16_5)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1135) (= (select |#memory_int| v_idx_1135) v_v_32_5) (< v_idx_1135 ULTIMATE.start_main_p1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1128) v_v_18_5) (< v_idx_1128 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p1 v_idx_1134) (= (select |#memory_int| v_idx_1134) v_v_31_5)) (or (< v_idx_1132 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_1132) v_v_24_5))))))} [2019-01-18 15:01:14,160 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 15:01:14,160 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 15:01:14,338 WARN L276 ngHoareTripleChecker]: Post: {2147483566#(and (forall ((v_idx_1142 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1142) (= 1 (select |#valid| v_idx_1142)) (< v_idx_1142 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_1138 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1138) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1138)) (< v_idx_1138 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:01:17,242 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:01:17,242 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:01:17,242 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:01:17,243 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:01:17,243 WARN L224 ngHoareTripleChecker]: Pre: {2147483565#(or (forall ((v_idx_1148 Int) (v_idx_1158 Int) (v_idx_1157 Int) (v_idx_1156 Int) (v_idx_1155 Int) (v_idx_1154 Int) (v_idx_1153 Int) (v_idx_1152 Int) (v_idx_1151 Int) (v_idx_1150 Int) (v_idx_1149 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1155)) (or (< v_idx_1157 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1157) (= 0 (select |c_#memory_int| v_idx_1157))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1150) v_v_18_5) (< v_idx_1150 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_1154) v_v_24_5) (< v_idx_1154 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_1148) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1148) v_v_16_5)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1152) (= (select |c_#valid| v_idx_1152) v_v_22_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_1151)) (or (< v_idx_1158 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1158) v_v_30_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1153 c_ULTIMATE.start_main_p2) (= (select |c_#valid| v_idx_1153) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1153)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1156) v_v_28_5) (<= c_ULTIMATE.start_main_p2 v_idx_1156)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1149) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1149) 0) (< v_idx_1149 c_ULTIMATE.start_main_p2))))) (forall ((v_idx_1159 Int) (v_idx_1169 Int) (v_idx_1168 Int) (v_idx_1167 Int) (v_idx_1166 Int) (v_idx_1165 Int) (v_idx_1164 Int) (v_idx_1163 Int) (v_idx_1162 Int) (v_idx_1161 Int) (v_idx_1160 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (or (< v_idx_1160 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1160) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1160) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1161) v_v_18_5) (< v_idx_1161 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1168) (= (select |c_#memory_int| v_idx_1168) v_v_32_5) (< v_idx_1168 c_ULTIMATE.start_main_p1)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1164) (= (select |c_#valid| v_idx_1164) 1) (< v_idx_1164 c_ULTIMATE.start_main_p2)) (or (= (select |c_#valid| v_idx_1163) v_v_22_5) (<= c_ULTIMATE.start_main_p2 v_idx_1163)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1165 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#valid| v_idx_1165) v_v_24_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_1162)) (or (<= c_ULTIMATE.start_main_p2 v_idx_1159) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1159) v_v_16_5)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1167) v_v_31_5) (<= c_ULTIMATE.start_main_p1 v_idx_1167)) (or (= (select |c_#memory_int| v_idx_1169) v_v_33_5) (< v_idx_1169 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_1166) v_v_4_5)))))} [2019-01-18 15:01:17,243 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:01:17,243 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:01:17,243 WARN L230 ngHoareTripleChecker]: Post: {2147483564#(forall ((v_idx_1179 Int) (v_idx_1178 Int) (v_idx_1177 Int) (v_idx_1176 Int) (v_idx_1175 Int) (v_idx_1174 Int) (v_idx_1173 Int) (v_idx_1172 Int) (v_idx_1171 Int) (v_idx_1170 Int) (v_idx_1180 Int)) (exists ((v_v_4_5 Int) (v_v_166_4 Int) (v_v_18_5 Int) (v_v_167_4 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_165_4 Int)) (and (= (select |c_old(#valid)| v_idx_1173) v_v_2_5) (or (= (select |c_#valid| v_idx_1174) v_v_22_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1174)) (<= 0 v_v_166_4) (<= (- (- v_v_166_4) v_v_166_4) 0) (or (= (select |c_#valid| v_idx_1176) v_v_24_5) (< v_idx_1176 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1172 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1172) v_v_18_5)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1179) (< v_idx_1179 c_ULTIMATE.start_main_p1) (= v_v_166_4 (select |c_#memory_int| v_idx_1179))) (or (= (select |c_#memory_int| v_idx_1178) v_v_165_4) (<= c_ULTIMATE.start_main_p1 v_idx_1178)) (or (< v_idx_1171 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1171) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1171))) (or (= v_v_167_4 (select |c_#memory_int| v_idx_1180)) (< v_idx_1180 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#valid| v_idx_1175) 1) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1175) (< v_idx_1175 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1177)) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1170) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1170) v_v_16_5)))))} [2019-01-18 15:01:17,243 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:01:17,743 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:01:17,743 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:01:25,595 WARN L181 SmtUtils]: Spent 7.85 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 15:01:25,595 WARN L270 ngHoareTripleChecker]: Pre: {2147483565#(or (forall ((v_idx_1148 Int) (v_idx_1158 Int) (v_idx_1157 Int) (v_idx_1156 Int) (v_idx_1155 Int) (v_idx_1154 Int) (v_idx_1153 Int) (v_idx_1152 Int) (v_idx_1151 Int) (v_idx_1150 Int) (v_idx_1149 Int)) (exists ((v_v_4_5 Int) (v_v_30_5 Int) (v_v_28_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (= v_v_4_5 (select |old(#memory_int)| v_idx_1155)) (or (< v_idx_1157 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1157) (= 0 (select |#memory_int| v_idx_1157))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1150) v_v_18_5) (< v_idx_1150 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#valid| v_idx_1154) v_v_24_5) (< v_idx_1154 (+ ULTIMATE.start_main_p2 1))) (or (<= ULTIMATE.start_main_p2 v_idx_1148) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1148) v_v_16_5)) (or (<= ULTIMATE.start_main_p2 v_idx_1152) (= (select |#valid| v_idx_1152) v_v_22_5)) (= v_v_2_5 (select |old(#valid)| v_idx_1151)) (or (< v_idx_1158 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_1158) v_v_30_5)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (or (< v_idx_1153 ULTIMATE.start_main_p2) (= (select |#valid| v_idx_1153) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1153)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_1156) v_v_28_5) (<= ULTIMATE.start_main_p2 v_idx_1156)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1149) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1149) 0) (< v_idx_1149 ULTIMATE.start_main_p2))))) (forall ((v_idx_1159 Int) (v_idx_1169 Int) (v_idx_1168 Int) (v_idx_1167 Int) (v_idx_1166 Int) (v_idx_1165 Int) (v_idx_1164 Int) (v_idx_1163 Int) (v_idx_1162 Int) (v_idx_1161 Int) (v_idx_1160 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_31_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int) (v_v_33_5 Int)) (and (or (< v_idx_1160 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1160) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1160) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1161) v_v_18_5) (< v_idx_1161 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1168) (= (select |#memory_int| v_idx_1168) v_v_32_5) (< v_idx_1168 ULTIMATE.start_main_p1)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1164) (= (select |#valid| v_idx_1164) 1) (< v_idx_1164 ULTIMATE.start_main_p2)) (or (= (select |#valid| v_idx_1163) v_v_22_5) (<= ULTIMATE.start_main_p2 v_idx_1163)) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1165 (+ ULTIMATE.start_main_p2 1)) (= (select |#valid| v_idx_1165) v_v_24_5)) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |old(#valid)| v_idx_1162)) (or (<= ULTIMATE.start_main_p2 v_idx_1159) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1159) v_v_16_5)) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_1167) v_v_31_5) (<= ULTIMATE.start_main_p1 v_idx_1167)) (or (= (select |#memory_int| v_idx_1169) v_v_33_5) (< v_idx_1169 (+ ULTIMATE.start_main_p1 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (= (select |old(#memory_int)| v_idx_1166) v_v_4_5)))))} [2019-01-18 15:01:25,595 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 15:01:25,596 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 15:01:25,804 WARN L276 ngHoareTripleChecker]: Post: {2147483564#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_32 Int)) (or (<= 0 (select |#memory_int| v_prenex_32)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_32) (< v_prenex_32 ULTIMATE.start_main_p1))) (forall ((v_idx_1179 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1179) (< v_idx_1179 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_1179))))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1175 Int)) (or (= (select |#valid| v_idx_1175) 1) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1175) (< v_idx_1175 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_1171 Int)) (or (< v_idx_1171 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1171) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1171)))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:01:28,107 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 15:01:28,107 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 15:01:28,108 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 15:01:28,108 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 15:01:28,108 WARN L224 ngHoareTripleChecker]: Pre: {2147483563#(forall ((v_idx_1189 Int) (v_idx_1188 Int) (v_idx_1187 Int) (v_idx_1186 Int) (v_idx_1185 Int) (v_idx_1184 Int) (v_idx_1183 Int) (v_idx_1182 Int) (v_idx_1181 Int) (v_idx_1191 Int) (v_idx_1190 Int)) (exists ((v_v_4_5 Int) (v_v_70_5 Int) (v_v_72_5 Int) (v_v_71_5 Int) (v_v_18_5 Int) (v_v_16_5 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 0 v_v_71_5) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1181) v_v_16_5) (<= c_ULTIMATE.start_main_p2 v_idx_1181)) (or (< v_idx_1182 c_ULTIMATE.start_main_p2) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1182)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1182)) (or (< v_idx_1190 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1190) (= (select |c_#memory_int| v_idx_1190) v_v_71_5)) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1191) v_v_72_5) (< v_idx_1191 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1183) v_v_18_5) (< v_idx_1183 (+ c_ULTIMATE.start_main_p2 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_1185) (= (select |c_#valid| v_idx_1185) v_v_22_5)) (= (select |c_old(#memory_int)| v_idx_1188) v_v_4_5) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1186) (< v_idx_1186 c_ULTIMATE.start_main_p2) (= 1 (select |c_#valid| v_idx_1186))) (<= (- (- v_v_71_5) v_v_71_5) 0) (= v_v_2_5 (select |c_old(#valid)| v_idx_1184)) (or (<= c_ULTIMATE.start_main_p1 v_idx_1189) (= (select |c_#memory_int| v_idx_1189) v_v_70_5)) (or (= (select |c_#valid| v_idx_1187) v_v_24_5) (< v_idx_1187 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 15:01:28,108 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 15:01:28,108 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 15:01:28,108 WARN L230 ngHoareTripleChecker]: Post: {2147483562#(forall ((v_idx_1202 Int) (v_idx_1201 Int) (v_idx_1200 Int) (v_idx_1199 Int) (v_idx_1198 Int) (v_idx_1197 Int) (v_idx_1196 Int) (v_idx_1195 Int) (v_idx_1194 Int) (v_idx_1193 Int) (v_idx_1192 Int)) (exists ((v_v_4_5 Int) (v_v_18_5 Int) (v_v_206_3 Int) (v_v_205_3 Int) (v_v_16_5 Int) (v_v_204_3 Int) (v_v_24_5 Int) (v_v_22_5 Int) (v_v_2_5 Int)) (and (<= (- (- v_v_205_3) v_v_205_3) (- 2)) (or (= (select |c_#valid| v_idx_1196) v_v_22_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1196)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1192) (= v_v_16_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1192))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1200) (= v_v_204_3 (select |c_#memory_int| v_idx_1200))) (or (< v_idx_1193 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1193) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1193)) (or (= (select |c_#valid| v_idx_1197) 1) (< v_idx_1197 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1197)) (<= (- (- c_ULTIMATE.start_main_p2) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 1 v_v_205_3) (<= c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1194) v_v_18_5) (< v_idx_1194 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p2 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_1201 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1201) (= (select |c_#memory_int| v_idx_1201) v_v_205_3)) (= (select |c_old(#valid)| v_idx_1195) v_v_2_5) (or (= (select |c_#valid| v_idx_1198) v_v_24_5) (< v_idx_1198 (+ c_ULTIMATE.start_main_p2 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p2) (= (select |c_old(#memory_int)| v_idx_1199) v_v_4_5) (or (= (select |c_#memory_int| v_idx_1202) v_v_206_3) (< v_idx_1202 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-18 15:01:28,109 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 15:01:28,609 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 15:01:28,609 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 15:01:28,801 WARN L270 ngHoareTripleChecker]: Pre: {2147483563#(and (forall ((v_prenex_33 Int)) (or (<= 0 (select |#memory_int| v_prenex_33)) (< v_prenex_33 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_33))) (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1186 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1186) (< v_idx_1186 ULTIMATE.start_main_p2) (= 1 (select |#valid| v_idx_1186)))) (forall ((v_idx_1182 Int)) (or (< v_idx_1182 ULTIMATE.start_main_p2) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1182)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1182))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2) (forall ((v_idx_1190 Int)) (or (< v_idx_1190 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1190) (<= 0 (* 2 (select |#memory_int| v_idx_1190))))))} [2019-01-18 15:01:28,801 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 15:01:28,801 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 15:01:28,837 WARN L276 ngHoareTripleChecker]: Post: {2147483562#(and (<= ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1193 Int)) (or (< v_idx_1193 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1193) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1193))) (<= (- ULTIMATE.start_main_p2 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1201 Int)) (or (< v_idx_1201 ULTIMATE.start_malloc_ptr) (<= 1 (select |#memory_int| v_idx_1201)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1201))) (<= (- (- ULTIMATE.start_main_p2) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_34 Int)) (or (< v_prenex_34 ULTIMATE.start_malloc_ptr) (<= 2 (* 2 (select |#memory_int| v_prenex_34))) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_34))) (forall ((v_idx_1197 Int)) (or (= (select |#valid| v_idx_1197) 1) (< v_idx_1197 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1197))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p2))} [2019-01-18 15:01:28,837 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 15:01:28,837 INFO L272 AbstractInterpreter]: Visited 5 different actions 8 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 15:01:28,838 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 15:01:28,838 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 15:01:28,838 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 15:01:28,839 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 15:01:28,857 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 15:01:28,857 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 15:01:28,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:01:28,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 15:01:28,869 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 15:01:28,890 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 5 treesize of output 1 [2019-01-18 15:01:28,892 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,899 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 9 treesize of output 12 [2019-01-18 15:01:28,905 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 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 15:01:28,906 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,912 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,918 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,918 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:18, output treesize:15 [2019-01-18 15:01:28,921 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 15:01:28,922 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_26|, |v_#valid_6|]. (and (= |#memory_int| (store (store |v_#memory_int_26| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0)) (= 0 (select (store |v_#valid_6| ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))) [2019-01-18 15:01:28,922 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 15:01:28,957 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:01:28,958 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 21 [2019-01-18 15:01:28,974 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,981 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 15:01:28,981 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:25, output treesize:11 [2019-01-18 15:01:28,992 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 15:01:28,993 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_27|]. (let ((.cse0 (select |v_#memory_int_27| ULTIMATE.start_main_p2))) (and (= 0 .cse0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_27| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= (select |v_#memory_int_27| ULTIMATE.start_main_p1) 0))) [2019-01-18 15:01:28,993 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2))) [2019-01-18 15:01:29,012 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:01:29,013 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:01:29,014 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:01:29,015 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 15:01:29,016 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 29 [2019-01-18 15:01:29,018 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 15:01:29,028 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 15:01:29,028 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:23, output treesize:13 [2019-01-18 15:01:30,135 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 15:01:30,136 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, ULTIMATE.start_main_p1]. (let ((.cse0 (select |v_#memory_int_28| ULTIMATE.start_main_p1))) (and (= (store |v_#memory_int_28| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (= .cse0 0) (= 0 (+ (select |v_#memory_int_28| ULTIMATE.start_main_p2) 1)))) [2019-01-18 15:01:30,136 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) [2019-01-18 15:01:30,156 INFO L273 TraceCheckUtils]: 0: Hoare triple {438#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {446#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 15:01:30,158 INFO L273 TraceCheckUtils]: 1: Hoare triple {446#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {450#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1)))} is VALID [2019-01-18 15:01:30,159 INFO L273 TraceCheckUtils]: 2: Hoare triple {450#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {454#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0))} is VALID [2019-01-18 15:01:30,160 INFO L273 TraceCheckUtils]: 3: Hoare triple {454#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0))} assume #memory_int[main_p1] >= 0; {454#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0))} is VALID [2019-01-18 15:01:30,161 INFO L273 TraceCheckUtils]: 4: Hoare triple {454#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0))} assume !(#memory_int[main_p2] <= 0); {439#false} is VALID [2019-01-18 15:01:30,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 15:01:30,161 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 15:01:30,200 INFO L273 TraceCheckUtils]: 4: Hoare triple {461#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {439#false} is VALID [2019-01-18 15:01:30,201 INFO L273 TraceCheckUtils]: 3: Hoare triple {461#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {461#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:01:30,202 INFO L273 TraceCheckUtils]: 2: Hoare triple {468#(<= (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {461#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:01:30,203 INFO L273 TraceCheckUtils]: 1: Hoare triple {472#(<= (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {468#(<= (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:01:30,205 INFO L273 TraceCheckUtils]: 0: Hoare triple {438#true} havoc main_p1, main_p2;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;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {472#(<= (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 15:01:30,206 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 15:01:30,224 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 15:01:30,224 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 15:01:30,224 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 15:01:30,224 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 5 [2019-01-18 15:01:30,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 15:01:30,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 15:01:30,237 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:01:30,237 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 15:01:30,238 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 15:01:30,238 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2019-01-18 15:01:30,238 INFO L87 Difference]: Start difference. First operand 9 states and 16 transitions. Second operand 8 states. [2019-01-18 15:01:30,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:01:30,466 INFO L93 Difference]: Finished difference Result 12 states and 22 transitions. [2019-01-18 15:01:30,467 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-18 15:01:30,467 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 5 [2019-01-18 15:01:30,467 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 15:01:30,467 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 15:01:30,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 15 transitions. [2019-01-18 15:01:30,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 15:01:30,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 15 transitions. [2019-01-18 15:01:30,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 15 transitions. [2019-01-18 15:01:30,491 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 15:01:30,492 INFO L225 Difference]: With dead ends: 12 [2019-01-18 15:01:30,492 INFO L226 Difference]: Without dead ends: 0 [2019-01-18 15:01:30,492 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=53, Invalid=79, Unknown=0, NotChecked=0, Total=132 [2019-01-18 15:01:30,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2019-01-18 15:01:30,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2019-01-18 15:01:30,493 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 15:01:30,493 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2019-01-18 15:01:30,493 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-18 15:01:30,494 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-18 15:01:30,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:01:30,494 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-18 15:01:30,494 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-18 15:01:30,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:01:30,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:01:30,495 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-18 15:01:30,495 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-18 15:01:30,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 15:01:30,495 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-18 15:01:30,495 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-18 15:01:30,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:01:30,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 15:01:30,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 15:01:30,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 15:01:30,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2019-01-18 15:01:30,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2019-01-18 15:01:30,496 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 5 [2019-01-18 15:01:30,496 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 15:01:30,496 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2019-01-18 15:01:30,497 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 15:01:30,497 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-18 15:01:30,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 15:01:30,501 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2019-01-18 15:01:30,691 WARN L181 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 49 DAG size of output: 28 [2019-01-18 15:01:30,696 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(lines 7 9) no Hoare annotation was computed. [2019-01-18 15:01:30,696 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startErr0ASSERT_VIOLATIONASSERT(line 31) no Hoare annotation was computed. [2019-01-18 15:01:30,696 INFO L448 ceAbstractionStarter]: For program point L32(line 32) no Hoare annotation was computed. [2019-01-18 15:01:30,696 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startENTRY(lines 7 9) no Hoare annotation was computed. [2019-01-18 15:01:30,697 INFO L444 ceAbstractionStarter]: At program point L24-1(lines 23 29) the Hoare annotation is: (let ((.cse2 (select |#memory_int| ULTIMATE.start_main_p1))) (let ((.cse0 (let ((.cse3 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))) (or (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= 1 .cse3)) (and (= .cse2 0) (= 0 .cse3))))) (.cse1 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ .cse2 1)) ULTIMATE.start_main_p2))) (or (and .cse0 (= 0 .cse1)) (and .cse0 (<= (+ .cse1 1) 0))))) [2019-01-18 15:01:30,697 INFO L448 ceAbstractionStarter]: For program point L14(lines 7 34) no Hoare annotation was computed. [2019-01-18 15:01:30,697 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startErr1ASSERT_VIOLATIONASSERT(line 32) no Hoare annotation was computed. [2019-01-18 15:01:30,699 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2019-01-18 15:01:30,699 WARN L170 areAnnotationChecker]: ULTIMATE.startErr0ASSERT_VIOLATIONASSERT has no Hoare annotation [2019-01-18 15:01:30,699 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2019-01-18 15:01:30,703 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2019-01-18 15:01:30,703 WARN L170 areAnnotationChecker]: L32 has no Hoare annotation [2019-01-18 15:01:30,703 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2019-01-18 15:01:30,703 INFO L163 areAnnotationChecker]: CFG has 2 edges. 2 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2019-01-18 15:01:30,710 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-2-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 18.01 03:01:30 BoogieIcfgContainer [2019-01-18 15:01:30,710 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2019-01-18 15:01:30,711 INFO L168 Benchmark]: Toolchain (without parser) took 690138.68 ms. Allocated memory was 133.7 MB in the beginning and 270.5 MB in the end (delta: 136.8 MB). Free memory was 109.0 MB in the beginning and 75.4 MB in the end (delta: 33.6 MB). Peak memory consumption was 170.4 MB. Max. memory is 7.1 GB. [2019-01-18 15:01:30,712 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.19 ms. Allocated memory is still 133.7 MB. Free memory is still 110.2 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-18 15:01:30,713 INFO L168 Benchmark]: Boogie Procedure Inliner took 52.16 ms. Allocated memory is still 133.7 MB. Free memory was 108.8 MB in the beginning and 106.6 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. [2019-01-18 15:01:30,713 INFO L168 Benchmark]: Boogie Preprocessor took 20.97 ms. Allocated memory is still 133.7 MB. Free memory was 106.6 MB in the beginning and 105.3 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. [2019-01-18 15:01:30,714 INFO L168 Benchmark]: RCFGBuilder took 457.32 ms. Allocated memory is still 133.7 MB. Free memory was 105.3 MB in the beginning and 94.2 MB in the end (delta: 11.2 MB). Peak memory consumption was 11.2 MB. Max. memory is 7.1 GB. [2019-01-18 15:01:30,715 INFO L168 Benchmark]: TraceAbstraction took 689604.01 ms. Allocated memory was 133.7 MB in the beginning and 270.5 MB in the end (delta: 136.8 MB). Free memory was 93.9 MB in the beginning and 75.4 MB in the end (delta: 18.6 MB). Peak memory consumption was 155.4 MB. Max. memory is 7.1 GB. [2019-01-18 15:01:30,718 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.19 ms. Allocated memory is still 133.7 MB. Free memory is still 110.2 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 52.16 ms. Allocated memory is still 133.7 MB. Free memory was 108.8 MB in the beginning and 106.6 MB in the end (delta: 2.2 MB). Peak memory consumption was 2.2 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 20.97 ms. Allocated memory is still 133.7 MB. Free memory was 106.6 MB in the beginning and 105.3 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. * RCFGBuilder took 457.32 ms. Allocated memory is still 133.7 MB. Free memory was 105.3 MB in the beginning and 94.2 MB in the end (delta: 11.2 MB). Peak memory consumption was 11.2 MB. Max. memory is 7.1 GB. * TraceAbstraction took 689604.01 ms. Allocated memory was 133.7 MB in the beginning and 270.5 MB in the end (delta: 136.8 MB). Free memory was 93.9 MB in the beginning and 75.4 MB in the end (delta: 18.6 MB). Peak memory consumption was 155.4 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 31]: assertion always holds For all program executions holds that assertion always holds at this location - PositiveResult [Line: 32]: assertion always holds For all program executions holds that assertion always holds at this location - AllSpecificationsHoldResult: All specifications hold 2 specifications checked. All of them hold - InvariantResult [Line: 23]: Loop Invariant Derived loop invariant: (((!(p1 == p2) && 1 <= #memory_int[p2 := #memory_int[p2] + -1][p1]) || (#memory_int[p1] == 0 && 0 == #memory_int[p2 := #memory_int[p2] + -1][p1])) && 0 == #memory_int[p1 := #memory_int[p1] + 1][p2]) || (((!(p1 == p2) && 1 <= #memory_int[p2 := #memory_int[p2] + -1][p1]) || (#memory_int[p1] == 0 && 0 == #memory_int[p2 := #memory_int[p2] + -1][p1])) && #memory_int[p1 := #memory_int[p1] + 1][p2] + 1 <= 0) - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 7 locations, 2 error locations. SAFE Result, 689.5s OverallTime, 7 OverallIterations, 2 TraceHistogramMax, 1.3s AutomataDifference, 0.0s DeadEndRemovalTime, 0.1s HoareAnnotationTime, HoareTripleCheckerStatistics: 13 SDtfs, 32 SDslu, 1 SDs, 0 SdLazy, 155 SolverSat, 35 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.3s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 48 GetRequests, 6 SyntacticMatches, 3 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 1.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=10occurred in iteration=3, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 679.2s AbstIntTime, 5 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.4s AutomataMinimizationTime, 7 MinimizatonAttempts, 19 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 1 LocationsWithAnnotation, 1 PreInvPairs, 8 NumberOfFragments, 101 HoareAnnotationTreeSize, 1 FomulaSimplifications, 594 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 1 FomulaSimplificationsInter, 561 FormulaSimplificationTreeSizeReductionInter, 0.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 7.6s InterpolantComputationTime, 45 NumberOfCodeBlocks, 45 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 47 ConstructedInterpolants, 4 QuantifiedInterpolants, 1521 SizeOfPredicates, 11 NumberOfNonLiveVariables, 69 ConjunctsInSsa, 32 ConjunctsInUnsatCore, 17 InterpolantComputations, 4 PerfectInterpolantSequences, 9/30 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...