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-3-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-f57a05f [2019-01-07 18:51:53,432 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-07 18:51:53,434 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-07 18:51:53,448 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-07 18:51:53,449 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-07 18:51:53,450 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-07 18:51:53,451 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-07 18:51:53,452 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-07 18:51:53,454 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-07 18:51:53,455 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-07 18:51:53,456 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-07 18:51:53,456 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-07 18:51:53,457 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-07 18:51:53,458 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-07 18:51:53,460 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-07 18:51:53,460 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-07 18:51:53,461 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-07 18:51:53,463 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-07 18:51:53,466 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-07 18:51:53,467 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-07 18:51:53,469 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-07 18:51:53,470 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-07 18:51:53,473 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-07 18:51:53,473 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-07 18:51:53,473 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-07 18:51:53,474 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-07 18:51:53,475 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-07 18:51:53,476 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-07 18:51:53,477 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-07 18:51:53,478 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-07 18:51:53,478 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-07 18:51:53,479 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-07 18:51:53,480 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-07 18:51:53,480 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-07 18:51:53,481 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-07 18:51:53,482 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-07 18:51:53,482 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-07 18:51:53,501 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-07 18:51:53,502 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-07 18:51:53,502 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-07 18:51:53,503 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-07 18:51:53,503 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-07 18:51:53,503 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-07 18:51:53,503 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-07 18:51:53,503 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-07 18:51:53,504 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-07 18:51:53,504 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-07 18:51:53,504 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-07 18:51:53,504 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-07 18:51:53,504 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-07 18:51:53,506 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-07 18:51:53,507 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-07 18:51:53,507 INFO L133 SettingsManager]: * Use SBE=true [2019-01-07 18:51:53,507 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-07 18:51:53,507 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-07 18:51:53,509 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-07 18:51:53,510 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-07 18:51:53,511 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-07 18:51:53,511 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-07 18:51:53,512 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-07 18:51:53,512 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-07 18:51:53,512 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-07 18:51:53,512 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-07 18:51:53,513 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-07 18:51:53,513 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-07 18:51:53,513 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-07 18:51:53,513 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-07 18:51:53,513 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-07 18:51:53,513 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-07 18:51:53,514 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-07 18:51:53,514 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-07 18:51:53,544 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-07 18:51:53,556 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-07 18:51:53,560 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-07 18:51:53,562 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-07 18:51:53,563 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-07 18:51:53,563 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-3-unlimited.bpl [2019-01-07 18:51:53,564 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-3-unlimited.bpl' [2019-01-07 18:51:53,607 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-07 18:51:53,609 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-07 18:51:53,610 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-07 18:51:53,610 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-07 18:51:53,610 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-07 18:51:53,629 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,643 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,680 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-07 18:51:53,681 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-07 18:51:53,681 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-07 18:51:53,682 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-07 18:51:53,695 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,695 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,696 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,697 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,700 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,709 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,710 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/1) ... [2019-01-07 18:51:53,712 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-07 18:51:53,713 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-07 18:51:53,713 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-07 18:51:53,713 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-07 18:51:53,715 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (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-07 18:51:53,790 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-07 18:51:53,790 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-07 18:51:54,371 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-07 18:51:54,371 INFO L286 CfgBuilder]: Removed 9 assue(true) statements. [2019-01-07 18:51:54,373 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.01 06:51:54 BoogieIcfgContainer [2019-01-07 18:51:54,373 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-07 18:51:54,375 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-07 18:51:54,375 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-07 18:51:54,379 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-07 18:51:54,379 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:53" (1/2) ... [2019-01-07 18:51:54,380 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7372b17 and model type speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.01 06:51:54, skipping insertion in model container [2019-01-07 18:51:54,381 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.01 06:51:54" (2/2) ... [2019-01-07 18:51:54,383 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-3-unlimited.bpl [2019-01-07 18:51:54,394 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-07 18:51:54,403 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 3 error locations. [2019-01-07 18:51:54,420 INFO L257 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2019-01-07 18:51:54,454 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-07 18:51:54,454 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-07 18:51:54,454 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-07 18:51:54,454 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-07 18:51:54,454 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-07 18:51:54,455 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-07 18:51:54,455 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-07 18:51:54,455 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-07 18:51:54,470 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states. [2019-01-07 18:51:54,477 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-07 18:51:54,477 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:51:54,478 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-07 18:51:54,480 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:51:54,486 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:51:54,486 INFO L82 PathProgramCache]: Analyzing trace with hash 976, now seen corresponding path program 1 times [2019-01-07 18:51:54,488 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:51:54,539 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:54,539 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:51:54,539 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:54,539 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:51:54,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:51:54,698 INFO L273 TraceCheckUtils]: 0: Hoare triple {12#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {14#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:51:54,710 INFO L273 TraceCheckUtils]: 1: Hoare triple {14#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {13#false} is VALID [2019-01-07 18:51:54,712 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-07 18:51:54,715 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-07 18:51:54,715 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-07 18:51:54,715 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:51:54,721 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-07 18:51:54,723 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:51:54,727 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-07 18:51:54,758 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-07 18:51:54,759 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-07 18:51:54,769 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-07 18:51:54,769 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:51:54,771 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 3 states. [2019-01-07 18:51:55,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,030 INFO L93 Difference]: Finished difference Result 17 states and 21 transitions. [2019-01-07 18:51:55,030 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 18:51:55,030 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-07 18:51:55,030 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:51:55,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:51:55,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2019-01-07 18:51:55,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:51:55,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2019-01-07 18:51:55,038 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 21 transitions. [2019-01-07 18:51:55,177 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-07 18:51:55,189 INFO L225 Difference]: With dead ends: 17 [2019-01-07 18:51:55,190 INFO L226 Difference]: Without dead ends: 12 [2019-01-07 18:51:55,193 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:51:55,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-07 18:51:55,260 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 8. [2019-01-07 18:51:55,260 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:51:55,261 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 8 states. [2019-01-07 18:51:55,262 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 8 states. [2019-01-07 18:51:55,262 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 8 states. [2019-01-07 18:51:55,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,266 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-07 18:51:55,266 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 16 transitions. [2019-01-07 18:51:55,267 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:51:55,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:51:55,267 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 12 states. [2019-01-07 18:51:55,268 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 12 states. [2019-01-07 18:51:55,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,271 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-07 18:51:55,271 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 16 transitions. [2019-01-07 18:51:55,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:51:55,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:51:55,272 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:51:55,272 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:51:55,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-07 18:51:55,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 13 transitions. [2019-01-07 18:51:55,277 INFO L78 Accepts]: Start accepts. Automaton has 8 states and 13 transitions. Word has length 2 [2019-01-07 18:51:55,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:51:55,277 INFO L480 AbstractCegarLoop]: Abstraction has 8 states and 13 transitions. [2019-01-07 18:51:55,277 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-07 18:51:55,278 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 13 transitions. [2019-01-07 18:51:55,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:51:55,278 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:51:55,278 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:51:55,279 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:51:55,279 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:51:55,280 INFO L82 PathProgramCache]: Analyzing trace with hash 30304, now seen corresponding path program 1 times [2019-01-07 18:51:55,280 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:51:55,281 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:55,281 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:51:55,282 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:55,282 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:51:55,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:51:55,428 INFO L273 TraceCheckUtils]: 0: Hoare triple {70#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:51:55,434 INFO L273 TraceCheckUtils]: 1: Hoare triple {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:51:55,436 INFO L273 TraceCheckUtils]: 2: Hoare triple {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {71#false} is VALID [2019-01-07 18:51:55,436 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-07 18:51:55,437 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-07 18:51:55,437 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-07 18:51:55,437 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:51:55,439 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-07 18:51:55,440 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:51:55,440 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-07 18:51:55,474 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-07 18:51:55,475 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-07 18:51:55,475 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-07 18:51:55,475 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:51:55,475 INFO L87 Difference]: Start difference. First operand 8 states and 13 transitions. Second operand 3 states. [2019-01-07 18:51:55,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,544 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-07 18:51:55,544 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 18:51:55,544 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-07 18:51:55,544 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:51:55,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:51:55,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 16 transitions. [2019-01-07 18:51:55,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:51:55,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 16 transitions. [2019-01-07 18:51:55,548 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 16 transitions. [2019-01-07 18:51:55,584 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:51:55,585 INFO L225 Difference]: With dead ends: 12 [2019-01-07 18:51:55,586 INFO L226 Difference]: Without dead ends: 11 [2019-01-07 18:51:55,587 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:51:55,588 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 11 states. [2019-01-07 18:51:55,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 11 to 9. [2019-01-07 18:51:55,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:51:55,601 INFO L82 GeneralOperation]: Start isEquivalent. First operand 11 states. Second operand 9 states. [2019-01-07 18:51:55,601 INFO L74 IsIncluded]: Start isIncluded. First operand 11 states. Second operand 9 states. [2019-01-07 18:51:55,602 INFO L87 Difference]: Start difference. First operand 11 states. Second operand 9 states. [2019-01-07 18:51:55,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,604 INFO L93 Difference]: Finished difference Result 11 states and 15 transitions. [2019-01-07 18:51:55,604 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 15 transitions. [2019-01-07 18:51:55,605 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:51:55,605 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:51:55,605 INFO L74 IsIncluded]: Start isIncluded. First operand 9 states. Second operand 11 states. [2019-01-07 18:51:55,605 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 11 states. [2019-01-07 18:51:55,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:51:55,608 INFO L93 Difference]: Finished difference Result 11 states and 15 transitions. [2019-01-07 18:51:55,608 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 15 transitions. [2019-01-07 18:51:55,608 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:51:55,609 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:51:55,609 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:51:55,609 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:51:55,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-01-07 18:51:55,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 14 transitions. [2019-01-07 18:51:55,611 INFO L78 Accepts]: Start accepts. Automaton has 9 states and 14 transitions. Word has length 3 [2019-01-07 18:51:55,611 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:51:55,611 INFO L480 AbstractCegarLoop]: Abstraction has 9 states and 14 transitions. [2019-01-07 18:51:55,611 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-07 18:51:55,612 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 14 transitions. [2019-01-07 18:51:55,612 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:51:55,612 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:51:55,612 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:51:55,613 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:51:55,613 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:51:55,613 INFO L82 PathProgramCache]: Analyzing trace with hash 29992, now seen corresponding path program 1 times [2019-01-07 18:51:55,614 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:51:55,615 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:55,615 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:51:55,615 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:51:55,615 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:51:55,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:51:55,738 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {124#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:51:55,756 INFO L273 TraceCheckUtils]: 1: Hoare triple {124#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:51:55,774 INFO L273 TraceCheckUtils]: 2: Hoare triple {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-07 18:51:55,775 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-07 18:51:55,775 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:51:55,775 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:51:55,776 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-07 18:51:55,781 INFO L207 CegarAbsIntRunner]: [0], [6], [15] [2019-01-07 18:51:55,856 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:51:55,856 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:52:00,037 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:00,037 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:00,038 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:00,039 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:00,039 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_34_1 Int) (v_v_43_1 Int) (v_v_32_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_20 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_20) v_v_43_1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_23) v_v_28_1) (< v_idx_23 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_22)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_22) (< v_idx_22 c_ULTIMATE.start_main_p3)) (or (= (select |c_#valid| v_idx_27) v_v_34_1) (< v_idx_27 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_18) v_v_41_1) (<= c_ULTIMATE.start_main_p3 v_idx_18)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_24)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_25) (= (select |c_#valid| v_idx_25) v_v_32_1)) (= (select |c_old(#memory_int)| v_idx_17) v_v_4_1) (or (= 0 (select |c_#memory_int| v_idx_19)) (< v_idx_19 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_19)) (or (<= c_ULTIMATE.start_main_p3 v_idx_21) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_21) v_v_26_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_26) (< v_idx_26 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_26) 1)))))} [2019-01-07 18:52:00,039 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:52:00,040 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-07 18:52:00,040 WARN L230 ngHoareTripleChecker]: Post: {2147483644#(forall ((v_idx_36 Int) (v_idx_37 Int) (v_idx_34 Int) (v_idx_35 Int) (v_idx_32 Int) (v_idx_33 Int) (v_idx_30 Int) (v_idx_31 Int) (v_idx_29 Int) (v_idx_38 Int) (v_idx_28 Int)) (exists ((v_v_46_1 Int) (v_v_45_1 Int) (v_v_34_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (= v_v_2_1 (select |c_old(#valid)| v_idx_35)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_36) v_v_32_1) (<= c_ULTIMATE.start_main_p3 v_idx_36)) (or (= (select |c_#memory_int| v_idx_29) v_v_44_1) (<= c_ULTIMATE.start_main_p1 v_idx_29)) (= (select |c_old(#memory_int)| v_idx_28) v_v_4_1) (or (< v_idx_33 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_33))) (or (< v_idx_30 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_30) v_v_45_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_30)) (or (< v_idx_31 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_31) v_v_46_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#valid| v_idx_38) v_v_34_1) (< v_idx_38 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_32) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_32) v_v_26_1)) (or (< v_idx_34 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_34))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_37) (< v_idx_37 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_37) 1)))))} [2019-01-07 18:52:00,041 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:00,360 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:00,360 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:00,719 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_22 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_22)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_22) (< v_idx_22 ULTIMATE.start_main_p3))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_19 Int)) (or (= 0 (select |#memory_int| v_idx_19)) (< v_idx_19 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_19))) (forall ((v_idx_26 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_26) (< v_idx_26 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_26) 1))))} [2019-01-07 18:52:00,720 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:52:00,721 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-07 18:52:01,002 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_33 Int)) (or (< v_idx_33 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_33)))) (forall ((v_idx_37 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_37) (< v_idx_37 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_37) 1))))} [2019-01-07 18:52:04,113 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:04,113 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:04,114 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:04,114 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:04,114 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_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (= v_v_4_1 (select |c_old(#memory_int)| v_idx_39)) (or (= 0 (select |c_#memory_int| v_idx_41)) (< v_idx_41 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_41)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_47) v_v_32_1) (<= c_ULTIMATE.start_main_p3 v_idx_47)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_45) v_v_28_1) (< v_idx_45 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_46)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_48) (< v_idx_48 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_48))) (or (= (select |c_#memory_int| v_idx_40) v_v_41_1) (<= c_ULTIMATE.start_main_p3 v_idx_40)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_43) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_43) v_v_26_1)) (or (< v_idx_44 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_44)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_44)) (or (= (select |c_#valid| v_idx_49) v_v_34_1) (< v_idx_49 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_42 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_42) v_v_43_1)))))} [2019-01-07 18:52:04,115 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:04,115 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:04,115 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_34_1 Int) (v_v_58_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_60_1 Int) (v_v_59_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_57)) (or (< v_idx_60 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_60) v_v_34_1)) (or (= v_v_26_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_54)) (<= c_ULTIMATE.start_main_p3 v_idx_54)) (or (= (select |c_#memory_int| v_idx_53) v_v_60_1) (< v_idx_53 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_32_1 (select |c_#valid| v_idx_58)) (<= c_ULTIMATE.start_main_p3 v_idx_58)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_52) (< v_idx_52 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_52) v_v_59_1)) (<= (- v_v_59_1 (- v_v_59_1)) (- 2)) (= (select |c_old(#memory_int)| v_idx_50) v_v_4_1) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p1 v_idx_51) (= (select |c_#memory_int| v_idx_51) v_v_58_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_56)) (< v_idx_56 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_55)) (< v_idx_55 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_55)) (or (< v_idx_59 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_59)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_59)) (<= (+ v_v_59_1 1) 0))))} [2019-01-07 18:52:04,115 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:04,757 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:04,758 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:05,050 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_44 Int)) (or (< v_idx_44 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_44)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_44))) (forall ((v_idx_48 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_48) (< v_idx_48 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_48)))) (forall ((v_idx_41 Int)) (or (= 0 (select |#memory_int| v_idx_41)) (< v_idx_41 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_41))))} [2019-01-07 18:52:05,051 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:05,051 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:05,156 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_1 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_1)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_1) (< v_prenex_1 ULTIMATE.start_main_p1))) (forall ((v_idx_59 Int)) (or (< v_idx_59 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_59)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_59))) (forall ((v_idx_52 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_52) (<= (+ (select |#memory_int| v_idx_52) 1) 0) (< v_idx_52 ULTIMATE.start_main_p1))) (forall ((v_idx_55 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_55)) (< v_idx_55 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_55))))} [2019-01-07 18:52:08,295 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:08,295 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:08,296 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:08,296 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:08,297 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_69) v_v_32_1) (<= c_ULTIMATE.start_main_p3 v_idx_69)) (or (= (select |c_#memory_int| v_idx_64) v_v_43_1) (< v_idx_64 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_70 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_70) (= (select |c_#valid| v_idx_70) 1)) (or (= (select |c_#valid| v_idx_71) v_v_34_1) (< v_idx_71 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_68)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_65) v_v_26_1) (<= c_ULTIMATE.start_main_p3 v_idx_65)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_61)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_63 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_63) (= (select |c_#memory_int| v_idx_63) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_62) (= v_v_41_1 (select |c_#memory_int| v_idx_62))) (or (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_67)) (< v_idx_67 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_66 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_66) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_66) 0))))) (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_45_1 Int) (v_v_34_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_79)) (or (<= c_ULTIMATE.start_main_p3 v_idx_76) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_76) v_v_26_1)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_74) (< v_idx_74 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_74) v_v_45_1)) (or (= (select |c_#memory_int| v_idx_75) v_v_46_1) (< v_idx_75 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_78 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_78))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_81) (= (select |c_#valid| v_idx_81) 1) (< v_idx_81 c_ULTIMATE.start_main_p3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_72)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_82 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_82) v_v_34_1)) (or (<= c_ULTIMATE.start_main_p3 v_idx_80) (= (select |c_#valid| v_idx_80) v_v_32_1)) (or (= (select |c_#memory_int| v_idx_73) v_v_44_1) (<= c_ULTIMATE.start_main_p1 v_idx_73)) (or (< v_idx_77 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_77) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_77))))))} [2019-01-07 18:52:08,297 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:52:08,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-07 18:52:08,297 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_34_1 Int) (v_v_32_1 Int) (v_v_62_1 Int) (v_v_63_1 Int) (v_v_2_1 Int) (v_v_61_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_93) v_v_34_1) (< v_idx_93 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_91) v_v_32_1) (<= c_ULTIMATE.start_main_p3 v_idx_91)) (or (= (select |c_#memory_int| v_idx_84) v_v_61_1) (<= c_ULTIMATE.start_main_p1 v_idx_84)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_85) (< v_idx_85 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_85) v_v_62_1)) (or (< v_idx_89 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_89))) (or (< v_idx_92 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_92) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_92)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_90) v_v_2_1) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_88)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_88) (< v_idx_88 c_ULTIMATE.start_main_p3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_87) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_87) v_v_26_1)) (or (< v_idx_86 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_86) v_v_63_1)) (= (select |c_old(#memory_int)| v_idx_83) v_v_4_1))))} [2019-01-07 18:52:08,297 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:08,771 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:08,771 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:16,916 WARN L181 SmtUtils]: Spent 8.14 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:52:16,917 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_69) v_v_32_1) (<= ULTIMATE.start_main_p3 v_idx_69)) (or (= (select |#memory_int| v_idx_64) v_v_43_1) (< v_idx_64 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_70 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_70) (= (select |#valid| v_idx_70) 1)) (or (= (select |#valid| v_idx_71) v_v_34_1) (< v_idx_71 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_1 (select |old(#valid)| v_idx_68)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_65) v_v_26_1) (<= ULTIMATE.start_main_p3 v_idx_65)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_1 (select |old(#memory_int)| v_idx_61)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_63 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_63) (= (select |#memory_int| v_idx_63) 0)) (or (<= ULTIMATE.start_main_p3 v_idx_62) (= v_v_41_1 (select |#memory_int| v_idx_62))) (or (= v_v_28_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_67)) (< v_idx_67 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_66 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_66) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_66) 0))))) (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_45_1 Int) (v_v_34_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |old(#valid)| v_idx_79)) (or (<= ULTIMATE.start_main_p3 v_idx_76) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_76) v_v_26_1)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_74) (< v_idx_74 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_74) v_v_45_1)) (or (= (select |#memory_int| v_idx_75) v_v_46_1) (< v_idx_75 (+ ULTIMATE.start_main_p1 1))) (or (< v_idx_78 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_28_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_78))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_81) (= (select |#valid| v_idx_81) 1) (< v_idx_81 ULTIMATE.start_main_p3)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= v_v_4_1 (select |old(#memory_int)| v_idx_72)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_82 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_82) v_v_34_1)) (or (<= ULTIMATE.start_main_p3 v_idx_80) (= (select |#valid| v_idx_80) v_v_32_1)) (or (= (select |#memory_int| v_idx_73) v_v_44_1) (<= ULTIMATE.start_main_p1 v_idx_73)) (or (< v_idx_77 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_77) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_77))))))} [2019-01-07 18:52:16,917 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:52:16,918 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-07 18:52:16,987 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_88 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_88)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_88) (< v_idx_88 ULTIMATE.start_main_p3))) (forall ((v_idx_92 Int)) (or (< v_idx_92 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_92) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_92))))} [2019-01-07 18:52:21,012 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:21,012 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:21,013 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:21,013 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:21,013 WARN L224 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_98) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_98) v_v_26_1)) (= (select |c_old(#valid)| v_idx_101) v_v_2_1) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_96) (< v_idx_96 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_96) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_100) v_v_28_1) (< v_idx_100 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_103 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_103)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_103)) (or (<= c_ULTIMATE.start_main_p3 v_idx_102) (= v_v_32_1 (select |c_#valid| v_idx_102))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_99)) (< v_idx_99 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_99)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_94) v_v_4_1) (or (< v_idx_97 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_43_1 (select |c_#memory_int| v_idx_97))) (or (<= c_ULTIMATE.start_main_p3 v_idx_95) (= (select |c_#memory_int| v_idx_95) v_v_41_1)) (or (< v_idx_104 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_1 (select |c_#valid| v_idx_104)))))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_45_1 Int) (v_v_34_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (or (= (select |c_#memory_int| v_idx_108) v_v_46_1) (< v_idx_108 (+ c_ULTIMATE.start_main_p1 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_109) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_109) v_v_26_1)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_113) (= v_v_32_1 (select |c_#valid| v_idx_113))) (or (< v_idx_114 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_114)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_114)) (or (< v_idx_111 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_111) v_v_28_1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_110) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_110) (< v_idx_110 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p1 v_idx_106) (= (select |c_#memory_int| v_idx_106) v_v_44_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_107) (< v_idx_107 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_107) v_v_45_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_115 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_1 (select |c_#valid| v_idx_115))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_105)) (= v_v_2_1 (select |c_old(#valid)| v_idx_112))))))} [2019-01-07 18:52:21,013 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:21,014 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:21,014 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_34_1 Int) (v_v_32_1 Int) (v_v_106_1 Int) (v_v_105_1 Int) (v_v_107_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (= (select |c_old(#valid)| v_idx_123) v_v_2_1) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_125 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_125) (= 1 (select |c_#valid| v_idx_125))) (or (= (select |c_#memory_int| v_idx_118) v_v_106_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_118) (< v_idx_118 c_ULTIMATE.start_main_p1)) (or (= v_v_34_1 (select |c_#valid| v_idx_126)) (< v_idx_126 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_106_1 1) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_122) v_v_28_1) (< v_idx_122 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_106_1 (- v_v_106_1)) (- 2)) (or (< v_idx_119 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_119) v_v_107_1)) (or (= (select |c_#memory_int| v_idx_117) v_v_105_1) (<= c_ULTIMATE.start_main_p1 v_idx_117)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_120)) (<= c_ULTIMATE.start_main_p3 v_idx_120)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_116)) (or (< v_idx_121 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_121)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_121)) (or (<= c_ULTIMATE.start_main_p3 v_idx_124) (= v_v_32_1 (select |c_#valid| v_idx_124))))))} [2019-01-07 18:52:21,014 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:21,445 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:21,445 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:29,572 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:52:29,573 WARN L270 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p3 v_idx_98) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_98) v_v_26_1)) (= (select |old(#valid)| v_idx_101) v_v_2_1) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_96) (< v_idx_96 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_96) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_100) v_v_28_1) (< v_idx_100 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_103 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_103)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_103)) (or (<= ULTIMATE.start_main_p3 v_idx_102) (= v_v_32_1 (select |#valid| v_idx_102))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_99)) (< v_idx_99 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_99)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#memory_int)| v_idx_94) v_v_4_1) (or (< v_idx_97 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_43_1 (select |#memory_int| v_idx_97))) (or (<= ULTIMATE.start_main_p3 v_idx_95) (= (select |#memory_int| v_idx_95) v_v_41_1)) (or (< v_idx_104 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_1 (select |#valid| v_idx_104)))))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_45_1 Int) (v_v_34_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (or (= (select |#memory_int| v_idx_108) v_v_46_1) (< v_idx_108 (+ ULTIMATE.start_main_p1 1))) (or (<= ULTIMATE.start_main_p3 v_idx_109) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_109) v_v_26_1)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p3 v_idx_113) (= v_v_32_1 (select |#valid| v_idx_113))) (or (< v_idx_114 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_114)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_114)) (or (< v_idx_111 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_111) v_v_28_1)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_110) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_110) (< v_idx_110 ULTIMATE.start_main_p3)) (or (<= ULTIMATE.start_main_p1 v_idx_106) (= (select |#memory_int| v_idx_106) v_v_44_1)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_107) (< v_idx_107 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_107) v_v_45_1)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_115 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_1 (select |#valid| v_idx_115))) (= v_v_4_1 (select |old(#memory_int)| v_idx_105)) (= v_v_2_1 (select |old(#valid)| v_idx_112))))))} [2019-01-07 18:52:29,573 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:29,573 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:29,770 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_121 Int)) (or (< v_idx_121 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_121)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_121))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_118 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_118)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_118) (< v_idx_118 ULTIMATE.start_main_p1))) (forall ((v_idx_125 Int)) (or (< v_idx_125 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_125) (= 1 (select |#valid| v_idx_125)))) (forall ((v_prenex_2 Int)) (or (<= (+ (select |#memory_int| v_prenex_2) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))))} [2019-01-07 18:52:30,053 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:52:30,054 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-07 18:52:30,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:52:30,061 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:52:30,061 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:52:30,062 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-07 18:52:30,086 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:52:30,086 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:52:30,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:52:30,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:52:30,135 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:52:30,293 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:52:30,298 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-07 18:52:30,350 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:52:30,351 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:52:30,353 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-07 18:52:30,355 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,362 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,383 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-07 18:52:30,390 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-07 18:52:30,443 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-07 18:52:30,446 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,459 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,468 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,578 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 2 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:52:30,579 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:32, output treesize:28 [2019-01-07 18:52:30,584 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:52:30,584 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_17|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, |v_#valid_5|]. (let ((.cse0 (store |v_#valid_5| ULTIMATE.start_main_p1 1))) (and (= 0 (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3)) (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (store (store (store |v_#memory_int_17| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|))) [2019-01-07 18:52:30,585 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:52:30,656 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:52:30,658 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-07 18:52:30,662 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:52:30,680 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:52:30,681 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-07 18:52:30,686 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:52:30,686 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_18|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_18| ULTIMATE.start_main_p1))) (and (= |#memory_int| (store |v_#memory_int_18| ULTIMATE.start_main_p1 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_18| ULTIMATE.start_main_p3) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_18| ULTIMATE.start_main_p2) 0))) [2019-01-07 18:52:30,687 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:52:30,765 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {129#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-07 18:52:30,769 INFO L273 TraceCheckUtils]: 1: Hoare triple {129#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {133#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-07 18:52:30,770 INFO L273 TraceCheckUtils]: 2: Hoare triple {133#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-07 18:52:30,770 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-07 18:52:30,770 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:52:30,794 INFO L273 TraceCheckUtils]: 2: Hoare triple {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-07 18:52:30,796 INFO L273 TraceCheckUtils]: 1: Hoare triple {140#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:52:30,798 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {140#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-07 18:52:30,798 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-07 18:52:30,821 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-07 18:52:30,821 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-07 18:52:30,822 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:52:30,822 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-07 18:52:30,822 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:52:30,823 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-07 18:52:30,830 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-07 18:52:30,830 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-07 18:52:30,830 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-07 18:52:30,830 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-07 18:52:30,831 INFO L87 Difference]: Start difference. First operand 9 states and 14 transitions. Second operand 4 states. [2019-01-07 18:52:30,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:30,930 INFO L93 Difference]: Finished difference Result 13 states and 24 transitions. [2019-01-07 18:52:30,930 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-07 18:52:30,930 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-07 18:52:30,931 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:52:30,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:52:30,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 19 transitions. [2019-01-07 18:52:30,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:52:30,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 19 transitions. [2019-01-07 18:52:30,933 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 19 transitions. [2019-01-07 18:52:30,972 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:52:30,973 INFO L225 Difference]: With dead ends: 13 [2019-01-07 18:52:30,974 INFO L226 Difference]: Without dead ends: 12 [2019-01-07 18:52:30,975 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-07 18:52:30,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-07 18:52:30,988 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 11. [2019-01-07 18:52:30,988 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:52:30,988 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 11 states. [2019-01-07 18:52:30,988 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 11 states. [2019-01-07 18:52:30,988 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 11 states. [2019-01-07 18:52:30,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:30,990 INFO L93 Difference]: Finished difference Result 12 states and 23 transitions. [2019-01-07 18:52:30,990 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 23 transitions. [2019-01-07 18:52:30,991 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:52:30,991 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:52:30,991 INFO L74 IsIncluded]: Start isIncluded. First operand 11 states. Second operand 12 states. [2019-01-07 18:52:30,991 INFO L87 Difference]: Start difference. First operand 11 states. Second operand 12 states. [2019-01-07 18:52:30,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:30,993 INFO L93 Difference]: Finished difference Result 12 states and 23 transitions. [2019-01-07 18:52:30,993 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 23 transitions. [2019-01-07 18:52:30,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:52:30,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:52:30,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:52:30,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:52:30,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-01-07 18:52:30,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 23 transitions. [2019-01-07 18:52:30,996 INFO L78 Accepts]: Start accepts. Automaton has 11 states and 23 transitions. Word has length 3 [2019-01-07 18:52:30,996 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:52:30,996 INFO L480 AbstractCegarLoop]: Abstraction has 11 states and 23 transitions. [2019-01-07 18:52:30,996 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-07 18:52:30,997 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 23 transitions. [2019-01-07 18:52:30,997 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:52:30,997 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:52:30,997 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:52:30,997 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:52:30,998 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:52:30,998 INFO L82 PathProgramCache]: Analyzing trace with hash 30116, now seen corresponding path program 1 times [2019-01-07 18:52:30,998 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:52:30,999 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:30,999 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:52:31,000 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:31,000 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:52:31,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:52:31,117 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {201#(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-07 18:52:31,118 INFO L273 TraceCheckUtils]: 1: Hoare triple {201#(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]; {202#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:52:31,119 INFO L273 TraceCheckUtils]: 2: Hoare triple {202#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {200#false} is VALID [2019-01-07 18:52:31,120 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-07 18:52:31,120 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:52:31,120 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:52:31,121 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-07 18:52:31,121 INFO L207 CegarAbsIntRunner]: [0], [10], [15] [2019-01-07 18:52:31,125 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:52:31,125 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:52:33,616 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:33,617 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:33,617 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:33,617 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:33,617 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_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_143) v_v_4_2) (or (= (select |c_#memory_int| v_idx_146) v_v_43_2) (< v_idx_146 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_34_2 (select |c_#valid| v_idx_153)) (< v_idx_153 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_41_2 (select |c_#memory_int| v_idx_144)) (<= c_ULTIMATE.start_main_p3 v_idx_144)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_145) (= 0 (select |c_#memory_int| v_idx_145)) (< v_idx_145 c_ULTIMATE.start_main_p3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_147) v_v_26_2) (<= c_ULTIMATE.start_main_p3 v_idx_147)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_152) (< v_idx_152 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_152))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_148) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_148) 0) (< v_idx_148 c_ULTIMATE.start_main_p3)) (or (= v_v_32_2 (select |c_#valid| v_idx_151)) (<= c_ULTIMATE.start_main_p3 v_idx_151)) (or (< v_idx_149 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_149) v_v_28_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_150)))))} [2019-01-07 18:52:33,618 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:52:33,618 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-07 18:52:33,618 WARN L230 ngHoareTripleChecker]: Post: {2147483634#(forall ((v_idx_159 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_164 Int) (v_idx_154 Int)) (exists ((v_v_46_2 Int) (v_v_34_2 Int) (v_v_45_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_160 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_160) v_v_28_2)) (or (= 1 (select |c_#valid| v_idx_163)) (< v_idx_163 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_163)) (or (< v_idx_164 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |c_#valid| v_idx_164))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_154)) (= v_v_2_2 (select |c_old(#valid)| v_idx_161)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_159 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_159) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_159)) (or (<= c_ULTIMATE.start_main_p3 v_idx_158) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_158) v_v_26_2)) (or (= v_v_44_2 (select |c_#memory_int| v_idx_155)) (<= c_ULTIMATE.start_main_p2 v_idx_155)) (or (< v_idx_157 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_157) v_v_46_2)) (or (= v_v_32_2 (select |c_#valid| v_idx_162)) (<= c_ULTIMATE.start_main_p3 v_idx_162)) (or (= (select |c_#memory_int| v_idx_156) v_v_45_2) (< v_idx_156 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_156)))))} [2019-01-07 18:52:33,618 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:34,107 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:34,107 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:34,319 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_148 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_148) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_148) 0) (< v_idx_148 ULTIMATE.start_main_p3))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_152 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_152) (< v_idx_152 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_152)))) (forall ((v_idx_145 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_145) (= 0 (select |#memory_int| v_idx_145)) (< v_idx_145 ULTIMATE.start_main_p3))))} [2019-01-07 18:52:34,320 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:52:34,320 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-07 18:52:34,352 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_159 Int)) (or (< v_idx_159 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_159) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_159))) (forall ((v_idx_163 Int)) (or (= 1 (select |#valid| v_idx_163)) (< v_idx_163 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_163))))} [2019-01-07 18:52:36,932 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:36,932 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:36,933 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:36,933 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:36,933 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_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_2 (select |c_old(#valid)| v_idx_172)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_170) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_170)) (< v_idx_170 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_166) (= (select |c_#memory_int| v_idx_166) v_v_41_2)) (or (= (select |c_#memory_int| v_idx_168) v_v_43_2) (< v_idx_168 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_167 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_167) (= (select |c_#memory_int| v_idx_167) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_169) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_169) v_v_26_2)) (or (= v_v_32_2 (select |c_#valid| v_idx_173)) (<= c_ULTIMATE.start_main_p3 v_idx_173)) (or (= v_v_28_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_171)) (< v_idx_171 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_34_2 (select |c_#valid| v_idx_175)) (< v_idx_175 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 1 (select |c_#valid| v_idx_174)) (< v_idx_174 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_174)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_165)))))} [2019-01-07 18:52:36,933 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:36,933 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:36,933 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_34_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_60_2 Int) (v_v_58_2 Int) (v_v_28_2 Int) (v_v_59_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_28_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_182)) (< v_idx_182 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_184) (= v_v_32_2 (select |c_#valid| v_idx_184))) (or (<= c_ULTIMATE.start_main_p1 v_idx_177) (= (select |c_#memory_int| v_idx_177) v_v_58_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_183)) (or (= v_v_34_2 (select |c_#valid| v_idx_186)) (< v_idx_186 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_180) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_180) v_v_26_2)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- v_v_59_2 (- v_v_59_2)) (- 2)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_176)) (or (= (select |c_#memory_int| v_idx_178) v_v_59_2) (< v_idx_178 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_178)) (or (= v_v_60_2 (select |c_#memory_int| v_idx_179)) (< v_idx_179 (+ c_ULTIMATE.start_main_p1 1))) (<= (+ v_v_59_2 1) 0) (or (= 1 (select |c_#valid| v_idx_185)) (< v_idx_185 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_185)) (or (< v_idx_181 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_181) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_181))))))} [2019-01-07 18:52:36,934 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:37,366 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:37,366 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:37,601 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_167 Int)) (or (< v_idx_167 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_167) (= (select |#memory_int| v_idx_167) 0))) (forall ((v_idx_174 Int)) (or (= 1 (select |#valid| v_idx_174)) (< v_idx_174 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_174))) (forall ((v_idx_170 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_170) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_170)) (< v_idx_170 ULTIMATE.start_main_p3))))} [2019-01-07 18:52:37,602 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:37,602 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:37,712 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_3 Int)) (or (<= (+ (select |#memory_int| v_prenex_3) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_181 Int)) (or (< v_idx_181 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_181) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_181)))) (forall ((v_idx_185 Int)) (or (= 1 (select |#valid| v_idx_185)) (< v_idx_185 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_185))) (forall ((v_idx_178 Int)) (or (< v_idx_178 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_178)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_178))))} [2019-01-07 18:52:40,593 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:40,594 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:40,594 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:40,594 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:40,594 WARN L224 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_46_2 Int) (v_v_34_2 Int) (v_v_45_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_199) v_v_44_2) (<= c_ULTIMATE.start_main_p2 v_idx_199)) (or (< v_idx_203 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_203) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_203) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_202) (= v_v_26_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_202))) (or (= (select |c_#memory_int| v_idx_201) v_v_46_2) (< v_idx_201 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_34_2 (select |c_#valid| v_idx_208)) (< v_idx_208 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_204) v_v_28_2) (< v_idx_204 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_200 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_200) v_v_45_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_200)) (or (< v_idx_207 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_207) (= 1 (select |c_#valid| v_idx_207))) (= v_v_2_2 (select |c_old(#valid)| v_idx_205)) (or (<= c_ULTIMATE.start_main_p3 v_idx_206) (= v_v_32_2 (select |c_#valid| v_idx_206))) (= (select |c_old(#memory_int)| v_idx_198) v_v_4_2)))) (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_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_192 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_192) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_192))) (or (= (select |c_#memory_int| v_idx_189) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_189) (< v_idx_189 c_ULTIMATE.start_main_p3)) (or (< v_idx_193 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_193) v_v_28_2)) (or (<= c_ULTIMATE.start_main_p3 v_idx_191) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_191) v_v_26_2)) (or (= (select |c_#memory_int| v_idx_188) v_v_41_2) (<= c_ULTIMATE.start_main_p3 v_idx_188)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_195) (= v_v_32_2 (select |c_#valid| v_idx_195))) (= v_v_2_2 (select |c_old(#valid)| v_idx_194)) (or (= (select |c_#memory_int| v_idx_190) v_v_43_2) (< v_idx_190 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_187)) (or (= v_v_34_2 (select |c_#valid| v_idx_197)) (< v_idx_197 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_196)))))))} [2019-01-07 18:52:40,594 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:52:40,595 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-07 18:52:40,595 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(forall ((v_idx_214 Int) (v_idx_215 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_61_2 Int) (v_v_62_2 Int) (v_v_63_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_214) (< v_idx_214 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_214) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_217) (= v_v_32_2 (select |c_#valid| v_idx_217))) (or (= (select |c_#memory_int| v_idx_211) v_v_62_2) (< v_idx_211 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_211)) (or (= (select |c_#memory_int| v_idx_210) v_v_61_2) (<= c_ULTIMATE.start_main_p2 v_idx_210)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_213) v_v_26_2) (<= c_ULTIMATE.start_main_p3 v_idx_213)) (or (< v_idx_215 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_215) v_v_28_2)) (or (< v_idx_219 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |c_#valid| v_idx_219))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_216) v_v_2_2) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_218) (= 1 (select |c_#valid| v_idx_218)) (< v_idx_218 c_ULTIMATE.start_main_p3)) (or (= v_v_63_2 (select |c_#memory_int| v_idx_212)) (< v_idx_212 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_209)))))} [2019-01-07 18:52:40,595 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:41,055 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:41,055 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:49,181 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:52:49,182 WARN L270 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_46_2 Int) (v_v_34_2 Int) (v_v_45_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_199) v_v_44_2) (<= ULTIMATE.start_main_p2 v_idx_199)) (or (< v_idx_203 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_203) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_203) 0)) (or (<= ULTIMATE.start_main_p3 v_idx_202) (= v_v_26_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_202))) (or (= (select |#memory_int| v_idx_201) v_v_46_2) (< v_idx_201 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_34_2 (select |#valid| v_idx_208)) (< v_idx_208 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_204) v_v_28_2) (< v_idx_204 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_200 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_200) v_v_45_2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_200)) (or (< v_idx_207 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_207) (= 1 (select |#valid| v_idx_207))) (= v_v_2_2 (select |old(#valid)| v_idx_205)) (or (<= ULTIMATE.start_main_p3 v_idx_206) (= v_v_32_2 (select |#valid| v_idx_206))) (= (select |old(#memory_int)| v_idx_198) v_v_4_2)))) (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_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_192 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_192) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_192))) (or (= (select |#memory_int| v_idx_189) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_189) (< v_idx_189 ULTIMATE.start_main_p3)) (or (< v_idx_193 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_193) v_v_28_2)) (or (<= ULTIMATE.start_main_p3 v_idx_191) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_191) v_v_26_2)) (or (= (select |#memory_int| v_idx_188) v_v_41_2) (<= ULTIMATE.start_main_p3 v_idx_188)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p3 v_idx_195) (= v_v_32_2 (select |#valid| v_idx_195))) (= v_v_2_2 (select |old(#valid)| v_idx_194)) (or (= (select |#memory_int| v_idx_190) v_v_43_2) (< v_idx_190 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_2 (select |old(#memory_int)| v_idx_187)) (or (= v_v_34_2 (select |#valid| v_idx_197)) (< v_idx_197 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_196) (< v_idx_196 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_196)))))))} [2019-01-07 18:52:49,182 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:52:49,182 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-07 18:52:49,343 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_214 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_214) (< v_idx_214 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_214) 0))) (forall ((v_idx_218 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_218) (= 1 (select |#valid| v_idx_218)) (< v_idx_218 ULTIMATE.start_main_p3))))} [2019-01-07 18:52:52,916 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:52,916 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:52,916 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:52,916 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:52,917 WARN L224 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_225) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_225) (< v_idx_225 c_ULTIMATE.start_main_p3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_222) (< v_idx_222 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_222) 0)) (= (select |c_old(#memory_int)| v_idx_220) v_v_4_2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_226) v_v_28_2) (< v_idx_226 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_229) (< v_idx_229 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_229))) (or (= v_v_32_2 (select |c_#valid| v_idx_228)) (<= c_ULTIMATE.start_main_p3 v_idx_228)) (or (<= c_ULTIMATE.start_main_p3 v_idx_221) (= (select |c_#memory_int| v_idx_221) v_v_41_2)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_223 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_223) v_v_43_2)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_230 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |c_#valid| v_idx_230))) (or (= v_v_26_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_224)) (<= c_ULTIMATE.start_main_p3 v_idx_224)) (= v_v_2_2 (select |c_old(#valid)| v_idx_227))))) (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_46_2 Int) (v_v_45_2 Int) (v_v_34_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_231)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_237) v_v_28_2) (< v_idx_237 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_236) (< v_idx_236 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_236) 0)) (or (= (select |c_#memory_int| v_idx_233) v_v_45_2) (< v_idx_233 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_233)) (or (= (select |c_#memory_int| v_idx_234) v_v_46_2) (< v_idx_234 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_32_2 (select |c_#valid| v_idx_239)) (<= c_ULTIMATE.start_main_p3 v_idx_239)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_238) v_v_2_2) (or (<= c_ULTIMATE.start_main_p2 v_idx_232) (= (select |c_#memory_int| v_idx_232) v_v_44_2)) (or (< v_idx_241 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |c_#valid| v_idx_241))) (or (= v_v_26_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_235)) (<= c_ULTIMATE.start_main_p3 v_idx_235)) (or (< v_idx_240 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_240)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_240))))))} [2019-01-07 18:52:52,917 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:52,917 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:52,917 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(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_34_2 Int) (v_v_32_2 Int) (v_v_105_2 Int) (v_v_107_2 Int) (v_v_106_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_249) v_v_2_2) (<= (- v_v_106_2 (- v_v_106_2)) (- 2)) (or (< v_idx_248 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_248) v_v_28_2)) (or (< v_idx_252 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |c_#valid| v_idx_252))) (or (<= c_ULTIMATE.start_main_p3 v_idx_250) (= v_v_32_2 (select |c_#valid| v_idx_250))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_242)) (or (= 1 (select |c_#valid| v_idx_251)) (< v_idx_251 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_251)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_246) v_v_26_2) (<= c_ULTIMATE.start_main_p3 v_idx_246)) (<= (+ v_v_106_2 1) 0) (or (= (select |c_#memory_int| v_idx_243) v_v_105_2) (<= c_ULTIMATE.start_main_p1 v_idx_243)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_244 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_244) (= v_v_106_2 (select |c_#memory_int| v_idx_244))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_247) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_247) 0) (< v_idx_247 c_ULTIMATE.start_main_p3)) (or (= v_v_107_2 (select |c_#memory_int| v_idx_245)) (< v_idx_245 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-07 18:52:52,917 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:53,055 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:53,055 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:01,131 WARN L181 SmtUtils]: Spent 8.08 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:53:01,132 WARN L270 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_225) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_225) (< v_idx_225 ULTIMATE.start_main_p3)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_222) (< v_idx_222 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_222) 0)) (= (select |old(#memory_int)| v_idx_220) v_v_4_2) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_226) v_v_28_2) (< v_idx_226 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_229) (< v_idx_229 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_229))) (or (= v_v_32_2 (select |#valid| v_idx_228)) (<= ULTIMATE.start_main_p3 v_idx_228)) (or (<= ULTIMATE.start_main_p3 v_idx_221) (= (select |#memory_int| v_idx_221) v_v_41_2)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_223 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_223) v_v_43_2)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_230 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |#valid| v_idx_230))) (or (= v_v_26_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_224)) (<= ULTIMATE.start_main_p3 v_idx_224)) (= v_v_2_2 (select |old(#valid)| v_idx_227))))) (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_46_2 Int) (v_v_45_2 Int) (v_v_34_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |old(#memory_int)| v_idx_231)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_237) v_v_28_2) (< v_idx_237 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_236) (< v_idx_236 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_236) 0)) (or (= (select |#memory_int| v_idx_233) v_v_45_2) (< v_idx_233 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_233)) (or (= (select |#memory_int| v_idx_234) v_v_46_2) (< v_idx_234 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_32_2 (select |#valid| v_idx_239)) (<= ULTIMATE.start_main_p3 v_idx_239)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_238) v_v_2_2) (or (<= ULTIMATE.start_main_p2 v_idx_232) (= (select |#memory_int| v_idx_232) v_v_44_2)) (or (< v_idx_241 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_2 (select |#valid| v_idx_241))) (or (= v_v_26_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_235)) (<= ULTIMATE.start_main_p3 v_idx_235)) (or (< v_idx_240 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_240)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_240))))))} [2019-01-07 18:53:01,132 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:53:01,132 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:53:01,344 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_4 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_4)) 2) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (forall ((v_idx_244 Int)) (or (< v_idx_244 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_244) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_244))) (forall ((v_idx_247 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_247) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_247) 0) (< v_idx_247 ULTIMATE.start_main_p3))) (forall ((v_idx_251 Int)) (or (= 1 (select |#valid| v_idx_251)) (< v_idx_251 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_251))))} [2019-01-07 18:53:01,536 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:53:01,536 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-07 18:53:01,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:53:01,536 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:53:01,536 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:53:01,536 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-07 18:53:01,545 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:53:01,545 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:53:01,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:01,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:01,552 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:53:01,605 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:01,606 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-07 18:53:01,647 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:01,649 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:01,650 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-07 18:53:01,652 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,658 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,673 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-07 18:53:01,682 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-07 18:53:01,692 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-07 18:53:01,695 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,705 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,714 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,730 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-07 18:53:01,731 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-07 18:53:01,735 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:53:01,736 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_20|, ULTIMATE.start_main_p3, |v_#valid_6|]. (let ((.cse0 (store |v_#valid_6| ULTIMATE.start_main_p1 1))) (and (= (store (store (store |v_#memory_int_20| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0) (= 0 (select .cse0 ULTIMATE.start_main_p2)))) [2019-01-07 18:53:01,736 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:53:01,784 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:01,785 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 34 [2019-01-07 18:53:01,787 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:01,801 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:53:01,801 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-07 18:53:02,203 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:53:02,203 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_21|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_21| ULTIMATE.start_main_p2))) (and (= (select |v_#memory_int_21| ULTIMATE.start_main_p1) 0) (= (store |v_#memory_int_21| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_21| ULTIMATE.start_main_p3) 0))) [2019-01-07 18:53:02,203 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-01-07 18:53:02,295 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {206#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-07 18:53:02,297 INFO L273 TraceCheckUtils]: 1: Hoare triple {206#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (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]; {210#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (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-07 18:53:02,298 INFO L273 TraceCheckUtils]: 2: Hoare triple {210#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (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); {200#false} is VALID [2019-01-07 18:53:02,298 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-07 18:53:02,298 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:53:02,321 INFO L273 TraceCheckUtils]: 2: Hoare triple {214#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {200#false} is VALID [2019-01-07 18:53:02,323 INFO L273 TraceCheckUtils]: 1: Hoare triple {218#(<= 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]; {214#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:53:02,345 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {218#(<= 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-07 18:53:02,346 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-07 18:53:02,375 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:53:02,375 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-07 18:53:02,375 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:53:02,376 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:53:02,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:53:02,376 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-07 18:53:02,413 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-07 18:53:02,414 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-07 18:53:02,414 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-07 18:53:02,414 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:53:02,414 INFO L87 Difference]: Start difference. First operand 11 states and 23 transitions. Second operand 6 states. [2019-01-07 18:53:02,969 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:02,969 INFO L93 Difference]: Finished difference Result 24 states and 40 transitions. [2019-01-07 18:53:02,969 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-07 18:53:02,970 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:53:02,970 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:53:02,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:53:02,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2019-01-07 18:53:02,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:53:02,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2019-01-07 18:53:02,973 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 31 transitions. [2019-01-07 18:53:03,035 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:53:03,037 INFO L225 Difference]: With dead ends: 24 [2019-01-07 18:53:03,037 INFO L226 Difference]: Without dead ends: 23 [2019-01-07 18:53:03,038 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-07 18:53:03,038 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2019-01-07 18:53:03,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 13. [2019-01-07 18:53:03,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:53:03,079 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand 13 states. [2019-01-07 18:53:03,079 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 13 states. [2019-01-07 18:53:03,079 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 13 states. [2019-01-07 18:53:03,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:03,082 INFO L93 Difference]: Finished difference Result 23 states and 38 transitions. [2019-01-07 18:53:03,082 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 38 transitions. [2019-01-07 18:53:03,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:03,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:03,083 INFO L74 IsIncluded]: Start isIncluded. First operand 13 states. Second operand 23 states. [2019-01-07 18:53:03,083 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 23 states. [2019-01-07 18:53:03,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:03,085 INFO L93 Difference]: Finished difference Result 23 states and 38 transitions. [2019-01-07 18:53:03,085 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 38 transitions. [2019-01-07 18:53:03,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:03,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:03,086 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:53:03,086 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:53:03,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-01-07 18:53:03,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 31 transitions. [2019-01-07 18:53:03,087 INFO L78 Accepts]: Start accepts. Automaton has 13 states and 31 transitions. Word has length 3 [2019-01-07 18:53:03,087 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:53:03,087 INFO L480 AbstractCegarLoop]: Abstraction has 13 states and 31 transitions. [2019-01-07 18:53:03,088 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-07 18:53:03,088 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states and 31 transitions. [2019-01-07 18:53:03,088 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:53:03,088 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:53:03,088 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:53:03,089 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:53:03,089 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:53:03,089 INFO L82 PathProgramCache]: Analyzing trace with hash 939474, now seen corresponding path program 1 times [2019-01-07 18:53:03,089 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:53:03,090 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:03,090 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:53:03,090 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:03,090 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:53:03,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:03,117 INFO L273 TraceCheckUtils]: 0: Hoare triple {318#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-07 18:53:03,117 INFO L273 TraceCheckUtils]: 1: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume #memory_int[main_p1] >= 0; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-07 18:53:03,119 INFO L273 TraceCheckUtils]: 2: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume #memory_int[main_p2] <= 0; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-07 18:53:03,119 INFO L273 TraceCheckUtils]: 3: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume !(#memory_int[main_p3] >= 0); {319#false} is VALID [2019-01-07 18:53:03,120 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-07 18:53:03,120 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-07 18:53:03,120 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-07 18:53:03,120 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:53:03,120 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-01-07 18:53:03,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:53:03,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-07 18:53:03,130 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-07 18:53:03,130 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-07 18:53:03,130 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-07 18:53:03,130 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:53:03,131 INFO L87 Difference]: Start difference. First operand 13 states and 31 transitions. Second operand 3 states. [2019-01-07 18:53:03,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:03,214 INFO L93 Difference]: Finished difference Result 15 states and 32 transitions. [2019-01-07 18:53:03,214 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 18:53:03,214 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-01-07 18:53:03,214 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:53:03,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:53:03,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-07 18:53:03,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:53:03,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-07 18:53:03,216 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 15 transitions. [2019-01-07 18:53:03,269 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-07 18:53:03,270 INFO L225 Difference]: With dead ends: 15 [2019-01-07 18:53:03,270 INFO L226 Difference]: Without dead ends: 12 [2019-01-07 18:53:03,274 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:53:03,274 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-07 18:53:03,315 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 12. [2019-01-07 18:53:03,315 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:53:03,315 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 12 states. [2019-01-07 18:53:03,315 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 12 states. [2019-01-07 18:53:03,315 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 12 states. [2019-01-07 18:53:03,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:03,318 INFO L93 Difference]: Finished difference Result 12 states and 29 transitions. [2019-01-07 18:53:03,318 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-07 18:53:03,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:03,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:03,319 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 12 states. [2019-01-07 18:53:03,319 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 12 states. [2019-01-07 18:53:03,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:03,321 INFO L93 Difference]: Finished difference Result 12 states and 29 transitions. [2019-01-07 18:53:03,321 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-07 18:53:03,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:03,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:03,322 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:53:03,322 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:53:03,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-01-07 18:53:03,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 29 transitions. [2019-01-07 18:53:03,323 INFO L78 Accepts]: Start accepts. Automaton has 12 states and 29 transitions. Word has length 4 [2019-01-07 18:53:03,323 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:53:03,324 INFO L480 AbstractCegarLoop]: Abstraction has 12 states and 29 transitions. [2019-01-07 18:53:03,324 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-07 18:53:03,324 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-07 18:53:03,324 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:53:03,324 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:53:03,324 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:53:03,325 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:53:03,325 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:53:03,325 INFO L82 PathProgramCache]: Analyzing trace with hash 929800, now seen corresponding path program 1 times [2019-01-07 18:53:03,325 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:53:03,326 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:03,326 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:53:03,326 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:03,327 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:53:03,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:03,406 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {388#(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-07 18:53:03,407 INFO L273 TraceCheckUtils]: 1: Hoare triple {388#(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]; {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:53:03,409 INFO L273 TraceCheckUtils]: 2: Hoare triple {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:53:03,409 INFO L273 TraceCheckUtils]: 3: Hoare triple {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-07 18:53:03,410 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-07 18:53:03,410 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:53:03,410 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:53:03,410 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:53:03,411 INFO L207 CegarAbsIntRunner]: [0], [6], [16], [17] [2019-01-07 18:53:03,414 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:53:03,414 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:53:05,925 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:05,925 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:05,925 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:05,925 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:05,926 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(forall ((v_idx_269 Int) (v_idx_278 Int) (v_idx_279 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_274 Int) (v_idx_275 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_273) (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_273))) (or (= v_v_34_3 (select |c_#valid| v_idx_279)) (< v_idx_279 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_277) (= v_v_32_3 (select |c_#valid| v_idx_277))) (or (= (select |c_#memory_int| v_idx_272) v_v_43_3) (< v_idx_272 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_275) v_v_28_3) (< v_idx_275 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_278) (< v_idx_278 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_278))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_269)) (= (select |c_old(#valid)| v_idx_276) v_v_2_3) (or (<= c_ULTIMATE.start_main_p3 v_idx_270) (= (select |c_#memory_int| v_idx_270) v_v_41_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_274) 0) (< v_idx_274 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_274)) (or (= (select |c_#memory_int| v_idx_271) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_271) (< v_idx_271 c_ULTIMATE.start_main_p3)))))} [2019-01-07 18:53:05,926 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:53:05,926 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:53:05,926 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_285 Int) (v_idx_286 Int)) (exists ((v_v_45_3 Int) (v_v_34_3 Int) (v_v_44_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (<= (- (- v_v_45_3) v_v_45_3) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_288) (= v_v_32_3 (select |c_#valid| v_idx_288))) (or (< v_idx_283 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_283) v_v_46_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_286) v_v_28_3) (< v_idx_286 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_287)) (<= 0 v_v_45_3) (or (<= c_ULTIMATE.start_main_p1 v_idx_281) (= (select |c_#memory_int| v_idx_281) v_v_44_3)) (or (= (select |c_#memory_int| v_idx_282) v_v_45_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_282) (< v_idx_282 c_ULTIMATE.start_main_p1)) (or (< v_idx_289 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_289)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_289)) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_284)) (<= c_ULTIMATE.start_main_p3 v_idx_284)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_285) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_285) (< v_idx_285 c_ULTIMATE.start_main_p3)) (or (= v_v_34_3 (select |c_#valid| v_idx_290)) (< v_idx_290 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_280) v_v_4_3))))} [2019-01-07 18:53:05,926 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:06,538 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:06,538 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:06,709 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_271 Int)) (or (= (select |#memory_int| v_idx_271) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_271) (< v_idx_271 ULTIMATE.start_main_p3))) (forall ((v_idx_274 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_274) 0) (< v_idx_274 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_274))) (forall ((v_idx_278 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_278) (< v_idx_278 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_278)))))} [2019-01-07 18:53:06,709 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:53:06,709 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:53:06,767 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_289 Int)) (or (< v_idx_289 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_289)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_289))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_285 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_285) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_285) (< v_idx_285 ULTIMATE.start_main_p3))) (forall ((v_idx_282 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_282))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_282) (< v_idx_282 ULTIMATE.start_main_p1))) (forall ((v_prenex_5 Int)) (or (<= 0 (select |#memory_int| v_prenex_5)) (< v_prenex_5 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_5))))} [2019-01-07 18:53:08,933 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:08,933 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:08,934 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:08,934 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:08,934 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(forall ((v_idx_300 Int) (v_idx_301 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_296 Int) (v_idx_297 Int)) (exists ((v_v_34_3 Int) (v_v_43_3 Int) (v_v_32_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_294) v_v_43_3) (< v_idx_294 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_298) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_295) v_v_26_3) (<= c_ULTIMATE.start_main_p3 v_idx_295)) (or (<= c_ULTIMATE.start_main_p3 v_idx_292) (= (select |c_#memory_int| v_idx_292) v_v_41_3)) (or (= 1 (select |c_#valid| v_idx_300)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_300) (< v_idx_300 c_ULTIMATE.start_main_p3)) (or (= v_v_34_3 (select |c_#valid| v_idx_301)) (< v_idx_301 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_296) (< v_idx_296 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_296))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_#memory_int| v_idx_293)) (< v_idx_293 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_293)) (or (< v_idx_297 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_297) v_v_28_3)) (= (select |c_old(#memory_int)| v_idx_291) v_v_4_3) (or (= v_v_32_3 (select |c_#valid| v_idx_299)) (<= c_ULTIMATE.start_main_p3 v_idx_299)))))} [2019-01-07 18:53:08,934 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:08,934 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-07 18:53:08,934 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_49_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_306)) (<= c_ULTIMATE.start_main_p3 v_idx_306)) (or (= v_v_34_3 (select |c_#valid| v_idx_312)) (< v_idx_312 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_305 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_305) v_v_49_3)) (or (< v_idx_308 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) v_v_28_3)) (or (<= c_ULTIMATE.start_main_p1 v_idx_303) (= v_v_47_3 (select |c_#memory_int| v_idx_303))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_3 (select |c_old(#valid)| v_idx_309)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_311)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_311) (< v_idx_311 c_ULTIMATE.start_main_p3)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_307)) (< v_idx_307 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_307)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_304) (< v_idx_304 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_304) v_v_48_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_302)) (or (= v_v_32_3 (select |c_#valid| v_idx_310)) (<= c_ULTIMATE.start_main_p3 v_idx_310)))))} [2019-01-07 18:53:08,935 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:09,398 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:09,398 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:09,595 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_293 Int)) (or (= 0 (select |#memory_int| v_idx_293)) (< v_idx_293 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_293))) (forall ((v_idx_296 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_296) (< v_idx_296 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_296)))) (forall ((v_idx_300 Int)) (or (= 1 (select |#valid| v_idx_300)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_300) (< v_idx_300 ULTIMATE.start_main_p3))))} [2019-01-07 18:53:09,595 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:09,595 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-07 18:53:09,619 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_311 Int)) (or (= 1 (select |#valid| v_idx_311)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_311) (< v_idx_311 ULTIMATE.start_main_p3))) (forall ((v_idx_307 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_307)) (< v_idx_307 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_307))))} [2019-01-07 18:53:12,168 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:12,169 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:12,169 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:12,169 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:12,169 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_45_3 Int) (v_v_34_3 Int) (v_v_44_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_318) (< v_idx_318 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_318))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (<= (- (- v_v_45_3) v_v_45_3) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_320)) (<= 0 v_v_45_3) (or (< v_idx_322 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_322)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_322)) (or (= v_v_34_3 (select |c_#valid| v_idx_323)) (< v_idx_323 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p3 v_idx_317) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_317) v_v_26_3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_313)) (or (< v_idx_316 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_316) v_v_46_3)) (or (<= c_ULTIMATE.start_main_p1 v_idx_314) (= (select |c_#memory_int| v_idx_314) v_v_44_3)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_315) (< v_idx_315 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_315) v_v_45_3)) (or (= v_v_32_3 (select |c_#valid| v_idx_321)) (<= c_ULTIMATE.start_main_p3 v_idx_321)) (or (< v_idx_319 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_319) v_v_28_3)))))} [2019-01-07 18:53:12,169 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:53:12,170 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:53:12,170 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_63_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_#memory_int| v_idx_326) v_v_62_3) (< v_idx_326 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_326)) (or (< v_idx_333 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_333)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_333)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_324)) (or (<= c_ULTIMATE.start_main_p2 v_idx_325) (= (select |c_#memory_int| v_idx_325) v_v_61_3)) (<= 1 v_v_62_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_330) v_v_28_3) (< v_idx_330 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_329) (< v_idx_329 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_329))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_331) v_v_2_3) (or (<= c_ULTIMATE.start_main_p3 v_idx_332) (= v_v_32_3 (select |c_#valid| v_idx_332))) (or (= (select |c_#memory_int| v_idx_327) v_v_63_3) (< v_idx_327 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_328) v_v_26_3) (<= c_ULTIMATE.start_main_p3 v_idx_328)) (<= (- (- v_v_62_3) v_v_62_3) (- 2)) (or (< v_idx_334 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |c_#valid| v_idx_334))))))} [2019-01-07 18:53:12,170 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:12,787 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:12,787 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:12,971 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_6 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_6))) (< v_prenex_6 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_6))) (forall ((v_idx_315 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_315) (< v_idx_315 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_idx_315)))) (forall ((v_idx_322 Int)) (or (< v_idx_322 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_322)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_322))) (forall ((v_idx_318 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_318) (< v_idx_318 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_318)))))} [2019-01-07 18:53:12,971 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:53:12,971 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:53:13,014 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_329 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_329) (< v_idx_329 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_329)))) (forall ((v_idx_326 Int)) (or (<= 2 (* 2 (select |#memory_int| v_idx_326))) (< v_idx_326 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_326))) (forall ((v_prenex_7 Int)) (or (< v_prenex_7 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_7) (<= 1 (select |#memory_int| v_prenex_7)))) (forall ((v_idx_333 Int)) (or (< v_idx_333 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_333)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_333))))} [2019-01-07 18:53:15,700 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:15,700 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:15,700 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:15,700 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:15,701 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_341)) (< v_idx_341 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_340)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_340) (< v_idx_340 c_ULTIMATE.start_main_p3)) (or (= 1 (select |c_#valid| v_idx_344)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_344) (< v_idx_344 c_ULTIMATE.start_main_p3)) (or (= v_v_32_3 (select |c_#valid| v_idx_343)) (<= c_ULTIMATE.start_main_p3 v_idx_343)) (= (select |c_old(#memory_int)| v_idx_335) v_v_4_3) (or (= v_v_34_3 (select |c_#valid| v_idx_345)) (< v_idx_345 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_337 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_337)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_337)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_336) (= (select |c_#memory_int| v_idx_336) v_v_41_3)) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_339)) (<= c_ULTIMATE.start_main_p3 v_idx_339)) (or (= (select |c_#memory_int| v_idx_338) v_v_43_3) (< v_idx_338 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_342) v_v_2_3)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_49_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_347) (= (select |c_#memory_int| v_idx_347) v_v_47_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_346)) (or (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_352)) (< v_idx_352 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_32_3 (select |c_#valid| v_idx_354)) (<= c_ULTIMATE.start_main_p3 v_idx_354)) (or (= (select |c_#memory_int| v_idx_349) v_v_49_3) (< v_idx_349 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_3 (select |c_old(#valid)| v_idx_353)) (or (= (select |c_#memory_int| v_idx_348) v_v_48_3) (< v_idx_348 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_348)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_350) v_v_26_3) (<= c_ULTIMATE.start_main_p3 v_idx_350)) (or (< v_idx_351 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_351)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_351)) (or (< v_idx_355 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_355)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_355)) (or (< v_idx_356 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |c_#valid| v_idx_356)))))))} [2019-01-07 18:53:15,701 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:53:15,701 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:53:15,701 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_64_3 Int) (v_v_34_3 Int) (v_v_65_3 Int) (v_v_66_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_364) v_v_2_3) (or (<= c_ULTIMATE.start_main_p1 v_idx_358) (= (select |c_#memory_int| v_idx_358) v_v_64_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_361) v_v_26_3) (<= c_ULTIMATE.start_main_p3 v_idx_361)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_357)) (or (< v_idx_367 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |c_#valid| v_idx_367))) (<= 0 v_v_65_3) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_366) (< v_idx_366 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_366))) (or (= (select |c_#memory_int| v_idx_359) v_v_65_3) (< v_idx_359 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_359)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_363) v_v_28_3) (< v_idx_363 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- v_v_65_3) v_v_65_3) 0) (or (= (select |c_#memory_int| v_idx_360) v_v_66_3) (< v_idx_360 (+ c_ULTIMATE.start_main_p1 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_362)) (< v_idx_362 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_362)) (or (= v_v_32_3 (select |c_#valid| v_idx_365)) (<= c_ULTIMATE.start_main_p3 v_idx_365)))))} [2019-01-07 18:53:15,701 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:16,303 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:16,303 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:24,551 WARN L181 SmtUtils]: Spent 8.25 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:53:24,552 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= v_v_28_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_341)) (< v_idx_341 (+ ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_340)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_340) (< v_idx_340 ULTIMATE.start_main_p3)) (or (= 1 (select |#valid| v_idx_344)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_344) (< v_idx_344 ULTIMATE.start_main_p3)) (or (= v_v_32_3 (select |#valid| v_idx_343)) (<= ULTIMATE.start_main_p3 v_idx_343)) (= (select |old(#memory_int)| v_idx_335) v_v_4_3) (or (= v_v_34_3 (select |#valid| v_idx_345)) (< v_idx_345 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_337 ULTIMATE.start_main_p3) (= 0 (select |#memory_int| v_idx_337)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_337)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p3 v_idx_336) (= (select |#memory_int| v_idx_336) v_v_41_3)) (or (= v_v_26_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_339)) (<= ULTIMATE.start_main_p3 v_idx_339)) (or (= (select |#memory_int| v_idx_338) v_v_43_3) (< v_idx_338 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_342) v_v_2_3)))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_49_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p1 v_idx_347) (= (select |#memory_int| v_idx_347) v_v_47_3)) (= v_v_4_3 (select |old(#memory_int)| v_idx_346)) (or (= v_v_28_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_352)) (< v_idx_352 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_32_3 (select |#valid| v_idx_354)) (<= ULTIMATE.start_main_p3 v_idx_354)) (or (= (select |#memory_int| v_idx_349) v_v_49_3) (< v_idx_349 (+ ULTIMATE.start_main_p1 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= v_v_2_3 (select |old(#valid)| v_idx_353)) (or (= (select |#memory_int| v_idx_348) v_v_48_3) (< v_idx_348 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_348)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_350) v_v_26_3) (<= ULTIMATE.start_main_p3 v_idx_350)) (or (< v_idx_351 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_351)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_351)) (or (< v_idx_355 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_355)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_355)) (or (< v_idx_356 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |#valid| v_idx_356)))))))} [2019-01-07 18:53:24,552 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:53:24,552 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:53:24,776 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_8)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_8))) (forall ((v_idx_362 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_362)) (< v_idx_362 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_362))) (forall ((v_idx_359 Int)) (or (< v_idx_359 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_359))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_359))) (forall ((v_idx_366 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_366) (< v_idx_366 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_366)))))} [2019-01-07 18:53:27,808 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:27,808 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:27,808 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:27,808 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:27,809 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_379 Int) (v_idx_388 Int) (v_idx_389 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_384 Int) (v_idx_385 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_49_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_383) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_383) v_v_26_3)) (or (= v_v_48_3 (select |c_#memory_int| v_idx_381)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_381) (< v_idx_381 c_ULTIMATE.start_main_p1)) (or (= v_v_34_3 (select |c_#valid| v_idx_389)) (< v_idx_389 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_385) v_v_28_3) (< v_idx_385 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_380) (= (select |c_#memory_int| v_idx_380) v_v_47_3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_387) (= v_v_32_3 (select |c_#valid| v_idx_387))) (or (= 1 (select |c_#valid| v_idx_388)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_388) (< v_idx_388 c_ULTIMATE.start_main_p3)) (or (< v_idx_384 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_384) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_384))) (= v_v_2_3 (select |c_old(#valid)| v_idx_386)) (or (= (select |c_#memory_int| v_idx_382) v_v_49_3) (< v_idx_382 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_379))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_376) (= v_v_32_3 (select |c_#valid| v_idx_376))) (= (select |c_old(#valid)| v_idx_375) v_v_2_3) (or (< v_idx_371 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_371) v_v_43_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_368)) (or (< v_idx_378 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |c_#valid| v_idx_378))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_377) (< v_idx_377 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_377))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p3 v_idx_372) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_372) v_v_26_3)) (or (< v_idx_370 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_370) (= 0 (select |c_#memory_int| v_idx_370))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_373 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_373) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_373))) (or (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_374)) (< v_idx_374 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_369) v_v_41_3) (<= c_ULTIMATE.start_main_p3 v_idx_369))))))} [2019-01-07 18:53:27,809 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:27,809 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-07 18:53:27,809 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(forall ((v_idx_399 Int) (v_idx_400 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_395 Int) (v_idx_396 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_104_3 Int) (v_v_103_3 Int) (v_v_105_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_391) (= v_v_103_3 (select |c_#memory_int| v_idx_391))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_396) v_v_28_3) (< v_idx_396 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_395) (< v_idx_395 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_395))) (or (< v_idx_392 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_392) (= v_v_104_3 (select |c_#memory_int| v_idx_392))) (or (= 1 (select |c_#valid| v_idx_399)) (< v_idx_399 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_399)) (= (select |c_old(#valid)| v_idx_397) v_v_2_3) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_394)) (<= c_ULTIMATE.start_main_p3 v_idx_394)) (or (< v_idx_400 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_400) v_v_34_3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_390) v_v_4_3) (or (< v_idx_393 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_105_3 (select |c_#memory_int| v_idx_393))) (or (<= c_ULTIMATE.start_main_p3 v_idx_398) (= v_v_32_3 (select |c_#valid| v_idx_398))))))} [2019-01-07 18:53:27,809 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:28,342 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:28,342 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:36,380 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:53:36,381 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_379 Int) (v_idx_388 Int) (v_idx_389 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_384 Int) (v_idx_385 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_49_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p3 v_idx_383) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_383) v_v_26_3)) (or (= v_v_48_3 (select |#memory_int| v_idx_381)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_381) (< v_idx_381 ULTIMATE.start_main_p1)) (or (= v_v_34_3 (select |#valid| v_idx_389)) (< v_idx_389 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_385) v_v_28_3) (< v_idx_385 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p1 v_idx_380) (= (select |#memory_int| v_idx_380) v_v_47_3)) (or (<= ULTIMATE.start_main_p3 v_idx_387) (= v_v_32_3 (select |#valid| v_idx_387))) (or (= 1 (select |#valid| v_idx_388)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_388) (< v_idx_388 ULTIMATE.start_main_p3)) (or (< v_idx_384 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_384) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_384))) (= v_v_2_3 (select |old(#valid)| v_idx_386)) (or (= (select |#memory_int| v_idx_382) v_v_49_3) (< v_idx_382 (+ ULTIMATE.start_main_p1 1))) (= v_v_4_3 (select |old(#memory_int)| v_idx_379))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p3 v_idx_376) (= v_v_32_3 (select |#valid| v_idx_376))) (= (select |old(#valid)| v_idx_375) v_v_2_3) (or (< v_idx_371 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_371) v_v_43_3)) (= v_v_4_3 (select |old(#memory_int)| v_idx_368)) (or (< v_idx_378 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_3 (select |#valid| v_idx_378))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_377) (< v_idx_377 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_377))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= ULTIMATE.start_main_p3 v_idx_372) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_372) v_v_26_3)) (or (< v_idx_370 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_370) (= 0 (select |#memory_int| v_idx_370))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_373 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_373) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_373))) (or (= v_v_28_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_374)) (< v_idx_374 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_369) v_v_41_3) (<= ULTIMATE.start_main_p3 v_idx_369))))))} [2019-01-07 18:53:36,381 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:36,381 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-07 18:53:36,585 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_395 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_395) (< v_idx_395 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_395)))) (forall ((v_idx_399 Int)) (or (= 1 (select |#valid| v_idx_399)) (< v_idx_399 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_399))))} [2019-01-07 18:53:37,036 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:53:37,037 INFO L272 AbstractInterpreter]: Visited 4 different actions 6 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-07 18:53:37,037 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:53:37,037 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:53:37,037 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:53:37,037 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-07 18:53:37,047 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:53:37,048 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:53:37,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:37,054 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:37,055 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:53:37,104 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 12 treesize of output 15 [2019-01-07 18:53:37,110 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-07 18:53:37,120 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,122 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,123 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-07 18:53:37,131 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,143 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,155 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,174 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,176 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-07 18:53:37,211 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,213 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,214 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-07 18:53:37,216 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,223 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,240 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-07 18:53:37,241 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-07 18:53:37,247 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:53:37,247 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_23|, ULTIMATE.start_main_p3, |v_#valid_7|]. (let ((.cse0 (store |v_#valid_7| ULTIMATE.start_main_p1 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (store (store (store |v_#memory_int_23| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0))) [2019-01-07 18:53:37,248 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:53:37,297 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:53:37,298 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-07 18:53:37,301 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:53:37,316 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:53:37,317 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-07 18:53:39,327 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:53:39,327 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_24|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_24| ULTIMATE.start_main_p1))) (and (= 0 (select |v_#memory_int_24| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_24| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 .cse0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_24| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-07 18:53:39,327 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:53:39,363 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {393#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-07 18:53:39,365 INFO L273 TraceCheckUtils]: 1: Hoare triple {393#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (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]; {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-07 18:53:39,366 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume #memory_int[main_p1] >= 0; {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-07 18:53:39,367 INFO L273 TraceCheckUtils]: 3: Hoare triple {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-07 18:53:39,367 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-07 18:53:39,368 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:53:39,392 INFO L273 TraceCheckUtils]: 3: Hoare triple {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-07 18:53:39,392 INFO L273 TraceCheckUtils]: 2: Hoare triple {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:53:39,394 INFO L273 TraceCheckUtils]: 1: Hoare triple {411#(<= (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]; {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:53:39,396 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {411#(<= (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-07 18:53:39,396 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-07 18:53:39,417 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:53:39,417 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-07 18:53:39,417 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:53:39,417 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-01-07 18:53:39,418 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:53:39,418 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-07 18:53:39,431 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-07 18:53:39,432 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-07 18:53:39,432 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-07 18:53:39,432 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:53:39,432 INFO L87 Difference]: Start difference. First operand 12 states and 29 transitions. Second operand 6 states. [2019-01-07 18:53:39,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:39,685 INFO L93 Difference]: Finished difference Result 21 states and 43 transitions. [2019-01-07 18:53:39,685 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-07 18:53:39,686 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-01-07 18:53:39,686 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:53:39,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:53:39,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2019-01-07 18:53:39,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:53:39,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2019-01-07 18:53:39,688 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 26 transitions. [2019-01-07 18:53:39,755 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:53:39,757 INFO L225 Difference]: With dead ends: 21 [2019-01-07 18:53:39,757 INFO L226 Difference]: Without dead ends: 20 [2019-01-07 18:53:39,758 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-07 18:53:39,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2019-01-07 18:53:39,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 14. [2019-01-07 18:53:39,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:53:39,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand 14 states. [2019-01-07 18:53:39,783 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 14 states. [2019-01-07 18:53:39,783 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 14 states. [2019-01-07 18:53:39,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:39,786 INFO L93 Difference]: Finished difference Result 20 states and 41 transitions. [2019-01-07 18:53:39,786 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 41 transitions. [2019-01-07 18:53:39,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:39,787 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:39,787 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 20 states. [2019-01-07 18:53:39,787 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 20 states. [2019-01-07 18:53:39,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:53:39,788 INFO L93 Difference]: Finished difference Result 20 states and 41 transitions. [2019-01-07 18:53:39,788 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 41 transitions. [2019-01-07 18:53:39,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:53:39,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:53:39,789 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:53:39,789 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:53:39,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2019-01-07 18:53:39,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 34 transitions. [2019-01-07 18:53:39,791 INFO L78 Accepts]: Start accepts. Automaton has 14 states and 34 transitions. Word has length 4 [2019-01-07 18:53:39,791 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:53:39,791 INFO L480 AbstractCegarLoop]: Abstraction has 14 states and 34 transitions. [2019-01-07 18:53:39,791 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-07 18:53:39,791 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 34 transitions. [2019-01-07 18:53:39,791 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:53:39,791 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:53:39,792 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:53:39,792 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:53:39,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:53:39,792 INFO L82 PathProgramCache]: Analyzing trace with hash 929612, now seen corresponding path program 1 times [2019-01-07 18:53:39,792 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:53:39,793 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:39,793 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:53:39,793 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:53:39,794 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:53:39,801 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:53:39,875 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {508#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-07 18:53:39,877 INFO L273 TraceCheckUtils]: 1: Hoare triple {508#(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]; {509#(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-07 18:53:39,878 INFO L273 TraceCheckUtils]: 2: Hoare triple {509#(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]; {510#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:53:39,878 INFO L273 TraceCheckUtils]: 3: Hoare triple {510#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {507#false} is VALID [2019-01-07 18:53:39,878 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-07 18:53:39,879 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:53:39,879 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:53:39,879 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:53:39,879 INFO L207 CegarAbsIntRunner]: [0], [6], [10], [15] [2019-01-07 18:53:39,881 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:53:39,881 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:53:42,334 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:42,335 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:42,335 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:42,335 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:42,335 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_417 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_426)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_426) (< v_idx_426 c_ULTIMATE.start_main_p3)) (or (< v_idx_420 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_420) v_v_43_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_422)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_422) (< v_idx_422 c_ULTIMATE.start_main_p3)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_417)) (or (= (select |c_#memory_int| v_idx_418) v_v_41_4) (<= c_ULTIMATE.start_main_p3 v_idx_418)) (= v_v_2_4 (select |c_old(#valid)| v_idx_424)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_423 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_423))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_419 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_419) (= (select |c_#memory_int| v_idx_419) 0)) (or (< v_idx_427 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_4 (select |c_#valid| v_idx_427))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_421) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_421)) (or (= v_v_32_4 (select |c_#valid| v_idx_425)) (<= c_ULTIMATE.start_main_p3 v_idx_425)))))} [2019-01-07 18:53:42,335 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:42,335 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-07 18:53:42,336 WARN L230 ngHoareTripleChecker]: Post: {2147483612#(forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_428 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int) (v_v_45_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_433 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_433)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_433)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_434) v_v_28_4) (< v_idx_434 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_429) (= (select |c_#memory_int| v_idx_429) v_v_44_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_432) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_432)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_428)) (or (< v_idx_431 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_431) v_v_46_4)) (or (< v_idx_437 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_437) (= 1 (select |c_#valid| v_idx_437))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_435)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_430 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_430) (= (select |c_#memory_int| v_idx_430) v_v_45_4)) (or (< v_idx_438 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_438) v_v_34_4)) (or (<= c_ULTIMATE.start_main_p3 v_idx_436) (= (select |c_#valid| v_idx_436) v_v_32_4)))))} [2019-01-07 18:53:42,336 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:42,802 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:42,803 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:43,015 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_426 Int)) (or (= 1 (select |#valid| v_idx_426)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_426) (< v_idx_426 ULTIMATE.start_main_p3))) (forall ((v_idx_419 Int)) (or (< v_idx_419 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_419) (= (select |#memory_int| v_idx_419) 0))) (forall ((v_idx_422 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_422)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_422) (< v_idx_422 ULTIMATE.start_main_p3))))} [2019-01-07 18:53:43,015 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:43,015 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-07 18:53:43,050 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_433 Int)) (or (< v_idx_433 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_433)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_433))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_437 Int)) (or (< v_idx_437 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_437) (= 1 (select |#valid| v_idx_437)))))} [2019-01-07 18:53:45,512 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:45,512 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:45,512 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:45,512 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:45,512 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_439 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_445) v_v_28_4) (< v_idx_445 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_439)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_444) (< v_idx_444 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_444))) (or (<= c_ULTIMATE.start_main_p3 v_idx_447) (= (select |c_#valid| v_idx_447) v_v_32_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_446)) (or (<= c_ULTIMATE.start_main_p3 v_idx_440) (= (select |c_#memory_int| v_idx_440) v_v_41_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_442 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_442) v_v_43_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_448) (= (select |c_#valid| v_idx_448) 1) (< v_idx_448 c_ULTIMATE.start_main_p3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_443) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_443)) (or (< v_idx_441 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_441) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_441)) (or (< v_idx_449 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_449) v_v_34_4)))))} [2019-01-07 18:53:45,513 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:53:45,513 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-07 18:53:45,513 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(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_450 Int) (v_idx_451 Int)) (exists ((v_v_32_4 Int) (v_v_60_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_58_4 Int) (v_v_59_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_459 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_459)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_459)) (or (< v_idx_452 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_452) v_v_59_4) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_452)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_455)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_455) (< v_idx_455 c_ULTIMATE.start_main_p3)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_450)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_460 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_460) v_v_34_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_457) v_v_2_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_454) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_454)) (or (<= c_ULTIMATE.start_main_p3 v_idx_458) (= v_v_32_4 (select |c_#valid| v_idx_458))) (or (< v_idx_456 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_456))) (or (< v_idx_453 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_453) v_v_60_4)) (or (<= c_ULTIMATE.start_main_p2 v_idx_451) (= (select |c_#memory_int| v_idx_451) v_v_58_4)))))} [2019-01-07 18:53:45,513 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:46,007 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:46,007 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:46,227 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_448 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_448) (= (select |#valid| v_idx_448) 1) (< v_idx_448 ULTIMATE.start_main_p3))) (forall ((v_idx_444 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_444) (< v_idx_444 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_444)))) (forall ((v_idx_441 Int)) (or (< v_idx_441 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_441) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_441))))} [2019-01-07 18:53:46,228 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:53:46,228 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-07 18:53:46,258 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_455 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_455)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_455) (< v_idx_455 ULTIMATE.start_main_p3))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_459 Int)) (or (< v_idx_459 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_459)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_459))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0))} [2019-01-07 18:53:48,852 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:48,852 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:48,852 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:48,852 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:48,853 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(forall ((v_idx_467 Int) (v_idx_468 Int) (v_idx_465 Int) (v_idx_466 Int) (v_idx_469 Int) (v_idx_470 Int) (v_idx_471 Int) (v_idx_463 Int) (v_idx_464 Int) (v_idx_461 Int) (v_idx_462 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_470 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_470) (= 1 (select |c_#valid| v_idx_470))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_4 (select |c_old(#valid)| v_idx_468)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_465) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_465)) (or (= (select |c_#memory_int| v_idx_464) v_v_43_4) (< v_idx_464 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_463 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_463) (= (select |c_#memory_int| v_idx_463) 0)) (= (select |c_old(#memory_int)| v_idx_461) v_v_4_4) (or (<= c_ULTIMATE.start_main_p3 v_idx_469) (= (select |c_#valid| v_idx_469) v_v_32_4)) (or (< v_idx_471 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_4 (select |c_#valid| v_idx_471))) (or (<= c_ULTIMATE.start_main_p3 v_idx_462) (= (select |c_#memory_int| v_idx_462) v_v_41_4)) (or (< v_idx_466 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_466)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_466)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_467) v_v_28_4) (< v_idx_467 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 18:53:48,853 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:53:48,853 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:53:48,853 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_32_4 Int) (v_v_82_4 Int) (v_v_81_4 Int) (v_v_83_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_475) v_v_83_4) (< v_idx_475 (+ c_ULTIMATE.start_main_p1 1))) (or (= 1 (select |c_#valid| v_idx_481)) (< v_idx_481 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_481)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_472)) (<= (+ v_v_82_4 1) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_477) (< v_idx_477 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_477))) (or (= v_v_32_4 (select |c_#valid| v_idx_480)) (<= c_ULTIMATE.start_main_p3 v_idx_480)) (<= (- v_v_82_4 (- v_v_82_4)) (- 2)) (or (<= c_ULTIMATE.start_main_p3 v_idx_476) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_476) v_v_26_4)) (or (< v_idx_482 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_482) v_v_34_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_474 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_474) v_v_82_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_474)) (or (= (select |c_#memory_int| v_idx_473) v_v_81_4) (<= c_ULTIMATE.start_main_p1 v_idx_473)) (or (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_478)) (< v_idx_478 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_479)))))} [2019-01-07 18:53:48,854 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:49,189 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:49,189 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:49,388 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_470 Int)) (or (< v_idx_470 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_470) (= 1 (select |#valid| v_idx_470)))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_466 Int)) (or (< v_idx_466 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_466)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_466))) (forall ((v_idx_463 Int)) (or (< v_idx_463 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_463) (= (select |#memory_int| v_idx_463) 0))))} [2019-01-07 18:53:49,388 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:53:49,389 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:53:49,462 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_474 Int)) (or (< v_idx_474 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_474) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_474))) (forall ((v_idx_477 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_477) (< v_idx_477 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_477)))) (forall ((v_prenex_9 Int)) (or (< v_prenex_9 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_9) (<= (+ (* 2 (select |#memory_int| v_prenex_9)) 2) 0))) (forall ((v_idx_481 Int)) (or (= 1 (select |#valid| v_idx_481)) (< v_idx_481 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_481))))} [2019-01-07 18:53:52,400 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:52,400 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:52,400 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:52,400 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:52,401 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_504 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_4_4 Int) (v_v_45_4 Int) (v_v_34_4 Int)) (and (= v_v_2_4 (select |c_old(#valid)| v_idx_501)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_500 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_28_4)) (or (< v_idx_497 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_497) v_v_46_4)) (or (= (select |c_#valid| v_idx_503) 1) (< v_idx_503 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_503)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_499) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_499)) (< v_idx_499 c_ULTIMATE.start_main_p3)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_494)) (or (<= c_ULTIMATE.start_main_p3 v_idx_498) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_498) v_v_26_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_495) (= (select |c_#memory_int| v_idx_495) v_v_44_4)) (or (<= c_ULTIMATE.start_main_p3 v_idx_502) (= (select |c_#valid| v_idx_502) v_v_32_4)) (or (= (select |c_#memory_int| v_idx_496) v_v_45_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_496) (< v_idx_496 c_ULTIMATE.start_main_p1)) (or (< v_idx_504 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_504) v_v_34_4))))) (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_487) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_487)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_488 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_488) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_488))) (or (= (select |c_#valid| v_idx_493) v_v_34_4) (< v_idx_493 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_489) v_v_28_4) (< v_idx_489 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_484) v_v_41_4) (<= c_ULTIMATE.start_main_p3 v_idx_484)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_483)) (= v_v_2_4 (select |c_old(#valid)| v_idx_490)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_492) (< v_idx_492 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_492))) (or (= (select |c_#memory_int| v_idx_486) v_v_43_4) (< v_idx_486 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_491) v_v_32_4) (<= c_ULTIMATE.start_main_p3 v_idx_491)) (or (< v_idx_485 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_485) (= (select |c_#memory_int| v_idx_485) 0))))))} [2019-01-07 18:53:52,401 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:53:52,401 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-07 18:53:52,401 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(forall ((v_idx_511 Int) (v_idx_512 Int) (v_idx_510 Int) (v_idx_515 Int) (v_idx_505 Int) (v_idx_513 Int) (v_idx_514 Int) (v_idx_508 Int) (v_idx_509 Int) (v_idx_506 Int) (v_idx_507 Int)) (exists ((v_v_86_4 Int) (v_v_85_4 Int) (v_v_32_4 Int) (v_v_84_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_512) v_v_2_4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_510)) (< v_idx_510 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_510)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_505)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_507) (= v_v_85_4 (select |c_#memory_int| v_idx_507)) (< v_idx_507 c_ULTIMATE.start_main_p1)) (or (< v_idx_511 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_511) v_v_28_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_514) (= 1 (select |c_#valid| v_idx_514)) (< v_idx_514 c_ULTIMATE.start_main_p3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_506) v_v_84_4) (<= c_ULTIMATE.start_main_p1 v_idx_506)) (or (= v_v_26_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_509)) (<= c_ULTIMATE.start_main_p3 v_idx_509)) (or (= v_v_34_4 (select |c_#valid| v_idx_515)) (< v_idx_515 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_513) (= v_v_32_4 (select |c_#valid| v_idx_513))) (or (= (select |c_#memory_int| v_idx_508) v_v_86_4) (< v_idx_508 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-07 18:53:52,401 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:52,881 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:52,881 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:01,147 WARN L181 SmtUtils]: Spent 8.27 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:54:01,147 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_504 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_4_4 Int) (v_v_45_4 Int) (v_v_34_4 Int)) (and (= v_v_2_4 (select |old(#valid)| v_idx_501)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_500 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_500) v_v_28_4)) (or (< v_idx_497 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_497) v_v_46_4)) (or (= (select |#valid| v_idx_503) 1) (< v_idx_503 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_503)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_499) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_499)) (< v_idx_499 ULTIMATE.start_main_p3)) (= v_v_4_4 (select |old(#memory_int)| v_idx_494)) (or (<= ULTIMATE.start_main_p3 v_idx_498) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_498) v_v_26_4)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p1 v_idx_495) (= (select |#memory_int| v_idx_495) v_v_44_4)) (or (<= ULTIMATE.start_main_p3 v_idx_502) (= (select |#valid| v_idx_502) v_v_32_4)) (or (= (select |#memory_int| v_idx_496) v_v_45_4) (<= (+ ULTIMATE.start_main_p1 1) v_idx_496) (< v_idx_496 ULTIMATE.start_main_p1)) (or (< v_idx_504 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_504) v_v_34_4))))) (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_487) v_v_26_4) (<= ULTIMATE.start_main_p3 v_idx_487)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_488 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_488) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_488))) (or (= (select |#valid| v_idx_493) v_v_34_4) (< v_idx_493 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_489) v_v_28_4) (< v_idx_489 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_484) v_v_41_4) (<= ULTIMATE.start_main_p3 v_idx_484)) (= v_v_4_4 (select |old(#memory_int)| v_idx_483)) (= v_v_2_4 (select |old(#valid)| v_idx_490)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_492) (< v_idx_492 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_492))) (or (= (select |#memory_int| v_idx_486) v_v_43_4) (< v_idx_486 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_491) v_v_32_4) (<= ULTIMATE.start_main_p3 v_idx_491)) (or (< v_idx_485 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_485) (= (select |#memory_int| v_idx_485) 0))))))} [2019-01-07 18:54:01,147 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:54:01,147 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-07 18:54:01,290 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_510 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_510)) (< v_idx_510 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_510))) (forall ((v_idx_514 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_514) (= 1 (select |#valid| v_idx_514)) (< v_idx_514 ULTIMATE.start_main_p3))))} [2019-01-07 18:54:04,255 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:04,256 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:04,256 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:04,256 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:04,256 WARN L224 ngHoareTripleChecker]: Pre: {2147483605#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_526 Int) (v_idx_516 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_32_4 (select |c_#valid| v_idx_524)) (<= c_ULTIMATE.start_main_p3 v_idx_524)) (= v_v_2_4 (select |c_old(#valid)| v_idx_523)) (or (= (select |c_#memory_int| v_idx_517) v_v_41_4) (<= c_ULTIMATE.start_main_p3 v_idx_517)) (or (< v_idx_525 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_525) (= 1 (select |c_#valid| v_idx_525))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_519 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_519) v_v_43_4)) (or (< v_idx_518 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_518) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_518)) (or (< v_idx_521 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_521) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_521))) (or (<= c_ULTIMATE.start_main_p3 v_idx_520) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_520) v_v_26_4)) (or (= v_v_34_4 (select |c_#valid| v_idx_526)) (< v_idx_526 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_28_4) (< v_idx_522 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_516))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_537 Int) (v_idx_527 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_32_4 (select |c_#valid| v_idx_535)) (<= c_ULTIMATE.start_main_p3 v_idx_535)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_529) (< v_idx_529 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_529) v_v_45_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_532)) (< v_idx_532 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_532)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_536) (< v_idx_536 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_536))) (or (= (select |c_#memory_int| v_idx_528) v_v_44_4) (<= c_ULTIMATE.start_main_p1 v_idx_528)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_530 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_530) v_v_46_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_527)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_28_4) (< v_idx_533 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_534)) (or (= v_v_34_4 (select |c_#valid| v_idx_537)) (< v_idx_537 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_531) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_531))))))} [2019-01-07 18:54:04,257 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:04,257 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-07 18:54:04,257 WARN L230 ngHoareTripleChecker]: Post: {2147483604#(forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_548 Int) (v_idx_538 Int) (v_idx_546 Int) (v_idx_547 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_32_4 Int) (v_v_128_4 Int) (v_v_129_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int) (v_v_130_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_538)) (or (= v_v_32_4 (select |c_#valid| v_idx_546)) (<= c_ULTIMATE.start_main_p3 v_idx_546)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_543) (< v_idx_543 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_543))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_542) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_542)) (= (select |c_old(#valid)| v_idx_545) v_v_2_4) (or (< v_idx_548 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_4 (select |c_#valid| v_idx_548))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_544 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_544) v_v_28_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_540 c_ULTIMATE.start_main_p2) (= v_v_129_4 (select |c_#memory_int| v_idx_540)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_540)) (or (< v_idx_541 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_541) v_v_130_4)) (or (= 1 (select |c_#valid| v_idx_547)) (< v_idx_547 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_547)) (or (= (select |c_#memory_int| v_idx_539) v_v_128_4) (<= c_ULTIMATE.start_main_p2 v_idx_539)))))} [2019-01-07 18:54:04,257 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:04,836 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:04,836 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:12,944 WARN L181 SmtUtils]: Spent 8.11 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:54:12,944 WARN L270 ngHoareTripleChecker]: Pre: {2147483605#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_526 Int) (v_idx_516 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= v_v_32_4 (select |#valid| v_idx_524)) (<= ULTIMATE.start_main_p3 v_idx_524)) (= v_v_2_4 (select |old(#valid)| v_idx_523)) (or (= (select |#memory_int| v_idx_517) v_v_41_4) (<= ULTIMATE.start_main_p3 v_idx_517)) (or (< v_idx_525 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_525) (= 1 (select |#valid| v_idx_525))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_519 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_519) v_v_43_4)) (or (< v_idx_518 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_518) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_518)) (or (< v_idx_521 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_521) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_521))) (or (<= ULTIMATE.start_main_p3 v_idx_520) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_520) v_v_26_4)) (or (= v_v_34_4 (select |#valid| v_idx_526)) (< v_idx_526 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_522) v_v_28_4) (< v_idx_522 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |old(#memory_int)| v_idx_516))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_537 Int) (v_idx_527 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= v_v_32_4 (select |#valid| v_idx_535)) (<= ULTIMATE.start_main_p3 v_idx_535)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_529) (< v_idx_529 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_529) v_v_45_4)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_532)) (< v_idx_532 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_532)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_536) (< v_idx_536 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_536))) (or (= (select |#memory_int| v_idx_528) v_v_44_4) (<= ULTIMATE.start_main_p1 v_idx_528)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_530 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_530) v_v_46_4)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |old(#memory_int)| v_idx_527)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_533) v_v_28_4) (< v_idx_533 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |old(#valid)| v_idx_534)) (or (= v_v_34_4 (select |#valid| v_idx_537)) (< v_idx_537 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_531) v_v_26_4) (<= ULTIMATE.start_main_p3 v_idx_531))))))} [2019-01-07 18:54:12,944 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:12,944 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-07 18:54:13,108 WARN L276 ngHoareTripleChecker]: Post: {2147483604#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_543 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_543) (< v_idx_543 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_543)))) (forall ((v_idx_547 Int)) (or (= 1 (select |#valid| v_idx_547)) (< v_idx_547 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_547))))} [2019-01-07 18:54:16,105 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:16,106 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:16,106 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:16,106 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:16,106 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_34_4 Int) (v_v_4_4 Int) (v_v_45_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_569) (< v_idx_569 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_569))) (or (< v_idx_566 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_28_4)) (or (= v_v_34_4 (select |c_#valid| v_idx_570)) (< v_idx_570 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p1 v_idx_561) (= (select |c_#memory_int| v_idx_561) v_v_44_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_567)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_560)) (or (<= c_ULTIMATE.start_main_p3 v_idx_564) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_564) v_v_26_4)) (or (<= c_ULTIMATE.start_main_p3 v_idx_568) (= v_v_32_4 (select |c_#valid| v_idx_568))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_565) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_565)) (< v_idx_565 c_ULTIMATE.start_main_p3)) (or (= (select |c_#memory_int| v_idx_563) v_v_46_4) (< v_idx_563 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_562) (< v_idx_562 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_562) v_v_45_4))))) (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_559 Int) (v_idx_549 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_28_4) (< v_idx_555 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_34_4 (select |c_#valid| v_idx_559)) (< v_idx_559 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_552 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_552) v_v_43_4)) (or (< v_idx_551 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_551) (= (select |c_#memory_int| v_idx_551) 0)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_549)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_550) (= (select |c_#memory_int| v_idx_550) v_v_41_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_553) v_v_26_4) (<= c_ULTIMATE.start_main_p3 v_idx_553)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_554)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_554) (< v_idx_554 c_ULTIMATE.start_main_p3)) (= (select |c_old(#valid)| v_idx_556) v_v_2_4) (or (<= c_ULTIMATE.start_main_p3 v_idx_557) (= v_v_32_4 (select |c_#valid| v_idx_557))) (or (= 1 (select |c_#valid| v_idx_558)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_558) (< v_idx_558 c_ULTIMATE.start_main_p3))))))} [2019-01-07 18:54:16,106 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:54:16,107 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:54:16,107 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_579 Int) (v_idx_580 Int) (v_idx_581 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_172_1 Int) (v_v_173_1 Int) (v_v_32_4 Int) (v_v_174_1 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_571)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_577) v_v_28_4) (< v_idx_577 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_573) v_v_173_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_573) (< v_idx_573 c_ULTIMATE.start_main_p1)) (= (select |c_old(#valid)| v_idx_578) v_v_2_4) (or (= (select |c_#memory_int| v_idx_572) v_v_172_1) (<= c_ULTIMATE.start_main_p1 v_idx_572)) (or (= 1 (select |c_#valid| v_idx_580)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_580) (< v_idx_580 c_ULTIMATE.start_main_p3)) (<= (+ v_v_173_1 1) 0) (<= (- v_v_173_1 (- v_v_173_1)) (- 2)) (or (= v_v_32_4 (select |c_#valid| v_idx_579)) (<= c_ULTIMATE.start_main_p3 v_idx_579)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_576 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_576)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_576)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_581 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_4 (select |c_#valid| v_idx_581))) (or (<= c_ULTIMATE.start_main_p3 v_idx_575) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_575) v_v_26_4)) (or (< v_idx_574 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_574) v_v_174_1)))))} [2019-01-07 18:54:16,107 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:16,781 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:16,781 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:24,937 WARN L181 SmtUtils]: Spent 8.16 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:54:24,938 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_34_4 Int) (v_v_4_4 Int) (v_v_45_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_569) (< v_idx_569 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_569))) (or (< v_idx_566 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_566) v_v_28_4)) (or (= v_v_34_4 (select |#valid| v_idx_570)) (< v_idx_570 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= ULTIMATE.start_main_p1 v_idx_561) (= (select |#memory_int| v_idx_561) v_v_44_4)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_4 (select |old(#valid)| v_idx_567)) (= v_v_4_4 (select |old(#memory_int)| v_idx_560)) (or (<= ULTIMATE.start_main_p3 v_idx_564) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_564) v_v_26_4)) (or (<= ULTIMATE.start_main_p3 v_idx_568) (= v_v_32_4 (select |#valid| v_idx_568))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_565) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_565)) (< v_idx_565 ULTIMATE.start_main_p3)) (or (= (select |#memory_int| v_idx_563) v_v_46_4) (< v_idx_563 (+ ULTIMATE.start_main_p1 1))) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_562) (< v_idx_562 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_562) v_v_45_4))))) (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_559 Int) (v_idx_549 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_555) v_v_28_4) (< v_idx_555 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_34_4 (select |#valid| v_idx_559)) (< v_idx_559 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_552 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_552) v_v_43_4)) (or (< v_idx_551 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_551) (= (select |#memory_int| v_idx_551) 0)) (= v_v_4_4 (select |old(#memory_int)| v_idx_549)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p3 v_idx_550) (= (select |#memory_int| v_idx_550) v_v_41_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_553) v_v_26_4) (<= ULTIMATE.start_main_p3 v_idx_553)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_554)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_554) (< v_idx_554 ULTIMATE.start_main_p3)) (= (select |old(#valid)| v_idx_556) v_v_2_4) (or (<= ULTIMATE.start_main_p3 v_idx_557) (= v_v_32_4 (select |#valid| v_idx_557))) (or (= 1 (select |#valid| v_idx_558)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_558) (< v_idx_558 ULTIMATE.start_main_p3))))))} [2019-01-07 18:54:24,938 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:54:24,938 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:54:25,166 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_576 Int)) (or (< v_idx_576 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_576)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_576))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_10 Int)) (or (< v_prenex_10 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_10) (<= (+ (select |#memory_int| v_prenex_10) 1) 0))) (forall ((v_idx_573 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_573)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_573) (< v_idx_573 ULTIMATE.start_main_p1))) (forall ((v_idx_580 Int)) (or (= 1 (select |#valid| v_idx_580)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_580) (< v_idx_580 ULTIMATE.start_main_p3))))} [2019-01-07 18:54:25,395 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:54:25,395 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-07 18:54:25,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:54:25,396 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:54:25,396 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:54:25,396 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-07 18:54:25,405 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:54:25,406 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:54:25,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:54:25,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:54:25,417 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:54:25,457 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,458 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-07 18:54:25,499 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,500 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,501 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-07 18:54:25,505 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,511 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,527 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-07 18:54:25,536 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-07 18:54:25,545 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-07 18:54:25,548 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,560 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,569 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,585 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-07 18:54:25,586 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-07 18:54:25,590 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:54:25,590 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_26|, ULTIMATE.start_main_p3, |v_#valid_8|]. (let ((.cse0 (store |v_#valid_8| ULTIMATE.start_main_p1 1))) (and (= (store (store (store |v_#memory_int_26| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0))) [2019-01-07 18:54:25,591 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:54:25,637 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,638 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-07 18:54:25,641 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,656 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-07 18:54:25,657 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:20 [2019-01-07 18:54:25,661 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:54:25,662 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_27|, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_27| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_27| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_27| ULTIMATE.start_main_p3)) (= |#memory_int| (store |v_#memory_int_27| ULTIMATE.start_main_p1 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= .cse0 0))) [2019-01-07 18:54:25,662 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:54:25,709 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,711 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,712 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,713 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,714 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:25,716 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 40 [2019-01-07 18:54:25,718 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:25,734 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:54:25,734 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:16 [2019-01-07 18:54:25,745 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:54:25,746 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_28| ULTIMATE.start_main_p2))) (and (= |#memory_int| (store |v_#memory_int_28| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_28| ULTIMATE.start_main_p3)) (= (select |v_#memory_int_28| ULTIMATE.start_main_p1) 1))) [2019-01-07 18:54:25,746 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:54:25,767 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {514#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-07 18:54:25,769 INFO L273 TraceCheckUtils]: 1: Hoare triple {514#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (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]; {518#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-07 18:54:25,770 INFO L273 TraceCheckUtils]: 2: Hoare triple {518#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {522#(and (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (= (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-07 18:54:25,771 INFO L273 TraceCheckUtils]: 3: Hoare triple {522#(and (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (= (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); {507#false} is VALID [2019-01-07 18:54:25,772 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-07 18:54:25,772 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:54:25,819 INFO L273 TraceCheckUtils]: 3: Hoare triple {526#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {507#false} is VALID [2019-01-07 18:54:25,821 INFO L273 TraceCheckUtils]: 2: Hoare triple {530#(<= 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]; {526#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:54:25,822 INFO L273 TraceCheckUtils]: 1: Hoare triple {534#(<= 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]; {530#(<= 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-07 18:54:25,823 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {534#(<= 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-07 18:54:25,824 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-07 18:54:25,853 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:54:25,853 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-07 18:54:25,853 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:54:25,853 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-07 18:54:25,856 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:54:25,856 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-07 18:54:25,911 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-07 18:54:25,911 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-07 18:54:25,912 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-07 18:54:25,912 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2019-01-07 18:54:25,912 INFO L87 Difference]: Start difference. First operand 14 states and 34 transitions. Second operand 8 states. [2019-01-07 18:54:26,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:26,438 INFO L93 Difference]: Finished difference Result 35 states and 68 transitions. [2019-01-07 18:54:26,438 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-07 18:54:26,439 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-07 18:54:26,439 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:54:26,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-07 18:54:26,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 41 transitions. [2019-01-07 18:54:26,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-07 18:54:26,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 41 transitions. [2019-01-07 18:54:26,441 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 41 transitions. [2019-01-07 18:54:26,509 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:54:26,510 INFO L225 Difference]: With dead ends: 35 [2019-01-07 18:54:26,511 INFO L226 Difference]: Without dead ends: 34 [2019-01-07 18:54:26,511 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 0 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-07 18:54:26,512 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2019-01-07 18:54:26,539 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 15. [2019-01-07 18:54:26,540 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:54:26,540 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 15 states. [2019-01-07 18:54:26,540 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 15 states. [2019-01-07 18:54:26,540 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 15 states. [2019-01-07 18:54:26,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:26,543 INFO L93 Difference]: Finished difference Result 34 states and 65 transitions. [2019-01-07 18:54:26,544 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 65 transitions. [2019-01-07 18:54:26,544 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:54:26,544 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:54:26,544 INFO L74 IsIncluded]: Start isIncluded. First operand 15 states. Second operand 34 states. [2019-01-07 18:54:26,545 INFO L87 Difference]: Start difference. First operand 15 states. Second operand 34 states. [2019-01-07 18:54:26,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:26,547 INFO L93 Difference]: Finished difference Result 34 states and 65 transitions. [2019-01-07 18:54:26,547 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 65 transitions. [2019-01-07 18:54:26,547 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:54:26,548 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:54:26,548 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:54:26,548 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:54:26,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-01-07 18:54:26,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 38 transitions. [2019-01-07 18:54:26,549 INFO L78 Accepts]: Start accepts. Automaton has 15 states and 38 transitions. Word has length 4 [2019-01-07 18:54:26,549 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:54:26,549 INFO L480 AbstractCegarLoop]: Abstraction has 15 states and 38 transitions. [2019-01-07 18:54:26,550 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-07 18:54:26,550 INFO L276 IsEmpty]: Start isEmpty. Operand 15 states and 38 transitions. [2019-01-07 18:54:26,550 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:54:26,550 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:54:26,550 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:54:26,550 INFO L423 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:54:26,551 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:54:26,551 INFO L82 PathProgramCache]: Analyzing trace with hash 933644, now seen corresponding path program 1 times [2019-01-07 18:54:26,551 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:54:26,552 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:54:26,552 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:54:26,552 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:54:26,552 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:54:26,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:54:26,595 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:26,601 INFO L273 TraceCheckUtils]: 1: Hoare triple {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:26,602 INFO L273 TraceCheckUtils]: 2: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:26,607 INFO L273 TraceCheckUtils]: 3: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-07 18:54:26,607 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-07 18:54:26,607 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:54:26,607 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:54:26,607 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:54:26,608 INFO L207 CegarAbsIntRunner]: [0], [10], [16], [17] [2019-01-07 18:54:26,610 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:54:26,610 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:54:28,944 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:28,944 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:28,944 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:28,944 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:28,944 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(forall ((v_idx_599 Int) (v_idx_600 Int) (v_idx_598 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)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_43_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_605)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_598)) (or (= (select |c_#valid| v_idx_608) v_v_34_5) (< v_idx_608 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_603 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_603) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_603))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_600 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_600) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_600)) (or (<= c_ULTIMATE.start_main_p3 v_idx_602) (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_602))) (or (<= c_ULTIMATE.start_main_p3 v_idx_606) (= (select |c_#valid| v_idx_606) v_v_32_5)) (or (= (select |c_#memory_int| v_idx_601) v_v_43_5) (< v_idx_601 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_604 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_604) v_v_28_5)) (or (<= c_ULTIMATE.start_main_p3 v_idx_599) (= (select |c_#memory_int| v_idx_599) v_v_41_5)) (or (= (select |c_#valid| v_idx_607) 1) (< v_idx_607 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_607)))))} [2019-01-07 18:54:28,945 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:54:28,945 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:54:28,945 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(forall ((v_idx_610 Int) (v_idx_611 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) (v_idx_609 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_46_5 Int) (v_v_2_5 Int) (v_v_45_5 Int) (v_v_34_5 Int) (v_v_44_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_615) v_v_28_5) (< v_idx_615 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_609) v_v_4_5) (or (<= c_ULTIMATE.start_main_p1 v_idx_610) (= (select |c_#memory_int| v_idx_610) v_v_44_5)) (or (<= c_ULTIMATE.start_main_p3 v_idx_613) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_613) v_v_26_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_616)) (or (= 1 (select |c_#valid| v_idx_618)) (< v_idx_618 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_618)) (<= (- (- v_v_45_5) v_v_45_5) 0) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_614) 0) (< v_idx_614 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_614)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_617) (= (select |c_#valid| v_idx_617) v_v_32_5)) (<= 0 v_v_45_5) (or (= (select |c_#memory_int| v_idx_612) v_v_46_5) (< v_idx_612 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_611) (< v_idx_611 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_611) v_v_45_5)) (or (< v_idx_619 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_619) v_v_34_5)))))} [2019-01-07 18:54:28,945 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:29,587 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:29,587 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:29,756 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_603 Int)) (or (< v_idx_603 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_603) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_603)))) (forall ((v_idx_607 Int)) (or (= (select |#valid| v_idx_607) 1) (< v_idx_607 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_607))) (forall ((v_idx_600 Int)) (or (< v_idx_600 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_600) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_600))))} [2019-01-07 18:54:29,756 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:54:29,756 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:54:29,801 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (forall ((v_idx_614 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_614) 0) (< v_idx_614 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_614))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_611 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_611) (< v_idx_611 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_611))))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_618 Int)) (or (= 1 (select |#valid| v_idx_618)) (< v_idx_618 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_618))) (forall ((v_prenex_11 Int)) (or (<= 0 (select |#memory_int| v_prenex_11)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_11) (< v_prenex_11 ULTIMATE.start_main_p1))))} [2019-01-07 18:54:31,921 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:31,921 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:31,921 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:31,921 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:31,922 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_620 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_32_5 Int) (v_v_4_5 Int) (v_v_43_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_624) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_624) v_v_26_5)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_625)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_625) (< v_idx_625 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_628) (= (select |c_#valid| v_idx_628) v_v_32_5)) (= (select |c_old(#memory_int)| v_idx_620) v_v_4_5) (or (= (select |c_#valid| v_idx_630) v_v_34_5) (< v_idx_630 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_623) v_v_43_5) (< v_idx_623 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_621) v_v_41_5) (<= c_ULTIMATE.start_main_p3 v_idx_621)) (or (< v_idx_622 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_622) (= (select |c_#memory_int| v_idx_622) 0)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_5 (select |c_old(#valid)| v_idx_627)) (or (= 1 (select |c_#valid| v_idx_629)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_629) (< v_idx_629 c_ULTIMATE.start_main_p3)) (or (< v_idx_626 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_626) v_v_28_5)))))} [2019-01-07 18:54:31,922 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:31,922 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-07 18:54:31,922 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_641 Int) (v_idx_631 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_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (or (= (select |c_#valid| v_idx_640) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_640) (< v_idx_640 c_ULTIMATE.start_main_p3)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_638)) (or (= (select |c_#valid| v_idx_641) v_v_34_5) (< v_idx_641 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_631)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_636)) (< v_idx_636 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_636)) (or (<= c_ULTIMATE.start_main_p3 v_idx_639) (= (select |c_#valid| v_idx_639) v_v_32_5)) (or (= (select |c_#memory_int| v_idx_633) v_v_48_5) (< v_idx_633 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_633)) (or (<= c_ULTIMATE.start_main_p2 v_idx_632) (= v_v_47_5 (select |c_#memory_int| v_idx_632))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_634 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_634) v_v_49_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_635) v_v_26_5) (<= c_ULTIMATE.start_main_p3 v_idx_635)) (or (< v_idx_637 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_637) v_v_28_5)))))} [2019-01-07 18:54:31,922 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:32,455 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:32,455 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:32,678 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_625 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_625)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_625) (< v_idx_625 ULTIMATE.start_main_p3))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_629 Int)) (or (= 1 (select |#valid| v_idx_629)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_629) (< v_idx_629 ULTIMATE.start_main_p3))) (forall ((v_idx_622 Int)) (or (< v_idx_622 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_622) (= (select |#memory_int| v_idx_622) 0))))} [2019-01-07 18:54:32,679 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:32,679 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-07 18:54:32,704 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_640 Int)) (or (= (select |#valid| v_idx_640) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_640) (< v_idx_640 ULTIMATE.start_main_p3))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_636 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_636)) (< v_idx_636 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_636))))} [2019-01-07 18:54:35,389 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:35,389 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:35,389 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:35,390 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:35,390 WARN L224 ngHoareTripleChecker]: Pre: {2147483595#(forall ((v_idx_643 Int) (v_idx_644 Int) (v_idx_652 Int) (v_idx_642 Int) (v_idx_647 Int) (v_idx_648 Int) (v_idx_645 Int) (v_idx_646 Int) (v_idx_649 Int) (v_idx_650 Int) (v_idx_651 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_46_5 Int) (v_v_2_5 Int) (v_v_45_5 Int) (v_v_34_5 Int) (v_v_44_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_651) (= (select |c_#valid| v_idx_651) 1) (< v_idx_651 c_ULTIMATE.start_main_p3)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_647)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_647) (< v_idx_647 c_ULTIMATE.start_main_p3)) (= (select |c_old(#memory_int)| v_idx_642) v_v_4_5) (= v_v_2_5 (select |c_old(#valid)| v_idx_649)) (or (<= c_ULTIMATE.start_main_p1 v_idx_643) (= (select |c_#memory_int| v_idx_643) v_v_44_5)) (<= (- (- v_v_45_5) v_v_45_5) 0) (or (= (select |c_#valid| v_idx_650) v_v_32_5) (<= c_ULTIMATE.start_main_p3 v_idx_650)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_648 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_648) v_v_28_5)) (or (< v_idx_645 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_645) v_v_46_5)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_644) (= (select |c_#memory_int| v_idx_644) v_v_45_5) (< v_idx_644 c_ULTIMATE.start_main_p1)) (<= 0 v_v_45_5) (or (= (select |c_#valid| v_idx_652) v_v_34_5) (< v_idx_652 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_646) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_646) v_v_26_5)))))} [2019-01-07 18:54:35,390 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:54:35,390 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:54:35,390 WARN L230 ngHoareTripleChecker]: Post: {2147483594#(forall ((v_idx_654 Int) (v_idx_655 Int) (v_idx_663 Int) (v_idx_653 Int) (v_idx_658 Int) (v_idx_659 Int) (v_idx_656 Int) (v_idx_657 Int) (v_idx_661 Int) (v_idx_662 Int) (v_idx_660 Int)) (exists ((v_v_4_5 Int) (v_v_62_5 Int) (v_v_32_5 Int) (v_v_63_5 Int) (v_v_61_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_653)) (or (< v_idx_659 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_659) v_v_28_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_657) v_v_26_5) (<= c_ULTIMATE.start_main_p3 v_idx_657)) (or (= (select |c_#valid| v_idx_663) v_v_34_5) (< v_idx_663 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_662) 1) (< v_idx_662 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_662)) (or (< v_idx_655 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_655) v_v_62_5) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_655)) (<= (- (- v_v_62_5) v_v_62_5) (- 2)) (or (= (select |c_#memory_int| v_idx_656) v_v_63_5) (< v_idx_656 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_660)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_654) v_v_61_5) (<= c_ULTIMATE.start_main_p2 v_idx_654)) (or (= (select |c_#valid| v_idx_661) v_v_32_5) (<= c_ULTIMATE.start_main_p3 v_idx_661)) (<= 1 v_v_62_5) (or (< v_idx_658 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_658) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_658))))))} [2019-01-07 18:54:35,390 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:35,645 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:35,645 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:35,804 WARN L270 ngHoareTripleChecker]: Pre: {2147483595#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_12 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_12))) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))) (forall ((v_idx_647 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_647)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_647) (< v_idx_647 ULTIMATE.start_main_p3))) (forall ((v_idx_644 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_644) (<= 0 (select |#memory_int| v_idx_644)) (< v_idx_644 ULTIMATE.start_main_p1))) (forall ((v_idx_651 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_651) (= (select |#valid| v_idx_651) 1) (< v_idx_651 ULTIMATE.start_main_p3))))} [2019-01-07 18:54:35,804 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:54:35,804 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:54:35,842 WARN L276 ngHoareTripleChecker]: Post: {2147483594#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_13 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_13) (<= 1 (select |#memory_int| v_prenex_13)) (< v_prenex_13 ULTIMATE.start_main_p2))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_662 Int)) (or (= (select |#valid| v_idx_662) 1) (< v_idx_662 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_662))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_655 Int)) (or (< v_idx_655 ULTIMATE.start_main_p2) (<= 2 (* 2 (select |#memory_int| v_idx_655))) (<= (+ ULTIMATE.start_main_p2 1) v_idx_655))) (forall ((v_idx_658 Int)) (or (< v_idx_658 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_658) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_658)))))} [2019-01-07 18:54:38,265 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:38,266 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:38,266 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:38,266 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:38,266 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_685 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_677) v_v_48_5) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_677) (< v_idx_677 c_ULTIMATE.start_main_p2)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_675)) (or (<= c_ULTIMATE.start_main_p3 v_idx_683) (= (select |c_#valid| v_idx_683) v_v_32_5)) (or (= (select |c_#memory_int| v_idx_676) v_v_47_5) (<= c_ULTIMATE.start_main_p2 v_idx_676)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_680)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_680) (< v_idx_680 c_ULTIMATE.start_main_p3)) (or (= (select |c_#memory_int| v_idx_678) v_v_49_5) (< v_idx_678 (+ c_ULTIMATE.start_main_p2 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_681 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_28_5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_684) (= 1 (select |c_#valid| v_idx_684)) (< v_idx_684 c_ULTIMATE.start_main_p3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_679)) (<= c_ULTIMATE.start_main_p3 v_idx_679)) (= v_v_2_5 (select |c_old(#valid)| v_idx_682)) (or (< v_idx_685 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_685) v_v_34_5))))) (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_674 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_43_5 Int) (v_v_4_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_666) (= (select |c_#memory_int| v_idx_666) 0) (< v_idx_666 c_ULTIMATE.start_main_p3)) (or (< v_idx_667 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_667) v_v_43_5)) (or (= (select |c_#memory_int| v_idx_665) v_v_41_5) (<= c_ULTIMATE.start_main_p3 v_idx_665)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_664)) (or (= 1 (select |c_#valid| v_idx_673)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_673) (< v_idx_673 c_ULTIMATE.start_main_p3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_668) v_v_26_5) (<= c_ULTIMATE.start_main_p3 v_idx_668)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_670 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_28_5)) (or (= (select |c_#valid| v_idx_674) v_v_34_5) (< v_idx_674 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_669) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_669)) (< v_idx_669 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_672) (= (select |c_#valid| v_idx_672) v_v_32_5)) (= (select |c_old(#valid)| v_idx_671) v_v_2_5)))))} [2019-01-07 18:54:38,266 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:54:38,266 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:54:38,267 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_696 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_65_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_690) v_v_26_5) (<= c_ULTIMATE.start_main_p3 v_idx_690)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_692) v_v_28_5) (< v_idx_692 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_694) (= (select |c_#valid| v_idx_694) v_v_32_5)) (or (= (select |c_#memory_int| v_idx_689) v_v_66_5) (< v_idx_689 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#memory_int| v_idx_688) v_v_65_5) (< v_idx_688 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_688)) (= v_v_2_5 (select |c_old(#valid)| v_idx_693)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_687) v_v_64_5) (<= c_ULTIMATE.start_main_p1 v_idx_687)) (<= 0 v_v_65_5) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_686)) (or (< v_idx_696 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_5 (select |c_#valid| v_idx_696))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_695) (< v_idx_695 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_695))) (or (< v_idx_691 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_691) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_691)) (<= (- (- v_v_65_5) v_v_65_5) 0))))} [2019-01-07 18:54:38,267 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:38,605 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:38,605 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:46,738 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:54:46,738 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_685 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_677) v_v_48_5) (<= (+ ULTIMATE.start_main_p2 1) v_idx_677) (< v_idx_677 ULTIMATE.start_main_p2)) (= v_v_4_5 (select |old(#memory_int)| v_idx_675)) (or (<= ULTIMATE.start_main_p3 v_idx_683) (= (select |#valid| v_idx_683) v_v_32_5)) (or (= (select |#memory_int| v_idx_676) v_v_47_5) (<= ULTIMATE.start_main_p2 v_idx_676)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_680)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_680) (< v_idx_680 ULTIMATE.start_main_p3)) (or (= (select |#memory_int| v_idx_678) v_v_49_5) (< v_idx_678 (+ ULTIMATE.start_main_p2 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_681 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_681) v_v_28_5)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_684) (= 1 (select |#valid| v_idx_684)) (< v_idx_684 ULTIMATE.start_main_p3)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_679)) (<= ULTIMATE.start_main_p3 v_idx_679)) (= v_v_2_5 (select |old(#valid)| v_idx_682)) (or (< v_idx_685 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_685) v_v_34_5))))) (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_674 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_43_5 Int) (v_v_4_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_666) (= (select |#memory_int| v_idx_666) 0) (< v_idx_666 ULTIMATE.start_main_p3)) (or (< v_idx_667 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_667) v_v_43_5)) (or (= (select |#memory_int| v_idx_665) v_v_41_5) (<= ULTIMATE.start_main_p3 v_idx_665)) (= v_v_4_5 (select |old(#memory_int)| v_idx_664)) (or (= 1 (select |#valid| v_idx_673)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_673) (< v_idx_673 ULTIMATE.start_main_p3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_668) v_v_26_5) (<= ULTIMATE.start_main_p3 v_idx_668)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_670 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_670) v_v_28_5)) (or (= (select |#valid| v_idx_674) v_v_34_5) (< v_idx_674 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_669) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_669)) (< v_idx_669 ULTIMATE.start_main_p3)) (or (<= ULTIMATE.start_main_p3 v_idx_672) (= (select |#valid| v_idx_672) v_v_32_5)) (= (select |old(#valid)| v_idx_671) v_v_2_5)))))} [2019-01-07 18:54:46,738 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:54:46,739 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:54:46,909 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_688 Int)) (or (< v_idx_688 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_688) (<= 0 (select |#memory_int| v_idx_688)))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_695 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_695) (< v_idx_695 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_695)))) (forall ((v_prenex_14 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_14))) (< v_prenex_14 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14))) (forall ((v_idx_691 Int)) (or (< v_idx_691 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_691) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_691))))} [2019-01-07 18:54:49,459 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:49,460 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:49,460 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:49,460 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:49,460 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_714 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_49_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_715)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_713) (< v_idx_713 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_713))) (or (= (select |c_#valid| v_idx_716) v_v_32_5) (<= c_ULTIMATE.start_main_p3 v_idx_716)) (or (<= c_ULTIMATE.start_main_p2 v_idx_709) (= (select |c_#memory_int| v_idx_709) v_v_47_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_712) v_v_26_5) (<= c_ULTIMATE.start_main_p3 v_idx_712)) (= (select |c_old(#memory_int)| v_idx_708) v_v_4_5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_717) (= 1 (select |c_#valid| v_idx_717)) (< v_idx_717 c_ULTIMATE.start_main_p3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_710) v_v_48_5) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_710) (< v_idx_710 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_718 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_718) v_v_34_5)) (or (< v_idx_714 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_714))) (or (= (select |c_#memory_int| v_idx_711) v_v_49_5) (< v_idx_711 (+ c_ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_703 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int)) (exists ((v_v_4_5 Int) (v_v_43_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_697) v_v_4_5) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_702) (< v_idx_702 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_702))) (or (< v_idx_703 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_28_5)) (or (<= c_ULTIMATE.start_main_p3 v_idx_701) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_701) v_v_26_5)) (or (= (select |c_#memory_int| v_idx_698) v_v_41_5) (<= c_ULTIMATE.start_main_p3 v_idx_698)) (or (< v_idx_700 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_700) v_v_43_5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_699) (< v_idx_699 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_699) 0)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_706) (= (select |c_#valid| v_idx_706) 1) (< v_idx_706 c_ULTIMATE.start_main_p3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_707 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_707) v_v_34_5)) (or (= v_v_32_5 (select |c_#valid| v_idx_705)) (<= c_ULTIMATE.start_main_p3 v_idx_705)) (= v_v_2_5 (select |c_old(#valid)| v_idx_704))))))} [2019-01-07 18:54:49,460 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:49,461 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-07 18:54:49,461 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_725 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int) (v_idx_719 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_104_5 Int) (v_v_103_5 Int) (v_v_26_5 Int) (v_v_105_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_725 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_725))) (or (= 1 (select |c_#valid| v_idx_728)) (< v_idx_728 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_728)) (or (< v_idx_724 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_724) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_724))) (or (= (select |c_#valid| v_idx_729) v_v_34_5) (< v_idx_729 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_721) v_v_104_5) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_721) (< v_idx_721 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p3 v_idx_727) (= (select |c_#valid| v_idx_727) v_v_32_5)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_719) v_v_4_5) (or (<= c_ULTIMATE.start_main_p3 v_idx_723) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_723) v_v_26_5)) (or (= v_v_103_5 (select |c_#memory_int| v_idx_720)) (<= c_ULTIMATE.start_main_p2 v_idx_720)) (= v_v_2_5 (select |c_old(#valid)| v_idx_726)) (or (= (select |c_#memory_int| v_idx_722) v_v_105_5) (< v_idx_722 (+ c_ULTIMATE.start_main_p2 1))))))} [2019-01-07 18:54:49,461 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:50,007 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:50,007 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:58,208 WARN L181 SmtUtils]: Spent 8.20 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:54:58,208 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_714 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_49_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |old(#valid)| v_idx_715)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_713) (< v_idx_713 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_713))) (or (= (select |#valid| v_idx_716) v_v_32_5) (<= ULTIMATE.start_main_p3 v_idx_716)) (or (<= ULTIMATE.start_main_p2 v_idx_709) (= (select |#memory_int| v_idx_709) v_v_47_5)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_712) v_v_26_5) (<= ULTIMATE.start_main_p3 v_idx_712)) (= (select |old(#memory_int)| v_idx_708) v_v_4_5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_717) (= 1 (select |#valid| v_idx_717)) (< v_idx_717 ULTIMATE.start_main_p3)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |#memory_int| v_idx_710) v_v_48_5) (<= (+ ULTIMATE.start_main_p2 1) v_idx_710) (< v_idx_710 ULTIMATE.start_main_p2)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_718 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_718) v_v_34_5)) (or (< v_idx_714 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_28_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_714))) (or (= (select |#memory_int| v_idx_711) v_v_49_5) (< v_idx_711 (+ ULTIMATE.start_main_p2 1)))))) (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_703 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int)) (exists ((v_v_4_5 Int) (v_v_43_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_697) v_v_4_5) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_702) (< v_idx_702 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_702))) (or (< v_idx_703 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_703) v_v_28_5)) (or (<= ULTIMATE.start_main_p3 v_idx_701) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_701) v_v_26_5)) (or (= (select |#memory_int| v_idx_698) v_v_41_5) (<= ULTIMATE.start_main_p3 v_idx_698)) (or (< v_idx_700 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_700) v_v_43_5)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_699) (< v_idx_699 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_699) 0)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_706) (= (select |#valid| v_idx_706) 1) (< v_idx_706 ULTIMATE.start_main_p3)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_707 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_707) v_v_34_5)) (or (= v_v_32_5 (select |#valid| v_idx_705)) (<= ULTIMATE.start_main_p3 v_idx_705)) (= v_v_2_5 (select |old(#valid)| v_idx_704))))))} [2019-01-07 18:54:58,209 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:54:58,209 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-07 18:54:58,357 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_724 Int)) (or (< v_idx_724 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_724) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_724)))) (forall ((v_idx_728 Int)) (or (= 1 (select |#valid| v_idx_728)) (< v_idx_728 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_728))))} [2019-01-07 18:54:59,526 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:54:59,526 INFO L272 AbstractInterpreter]: Visited 4 different actions 6 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-07 18:54:59,526 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:54:59,526 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:54:59,526 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:54:59,527 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-07 18:54:59,535 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:54:59,535 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:54:59,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:54:59,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:54:59,571 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:54:59,579 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 12 treesize of output 15 [2019-01-07 18:54:59,584 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 17 [2019-01-07 18:54:59,600 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 16 [2019-01-07 18:54:59,628 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:59,679 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:59,685 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:59,692 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:54:59,693 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 3 variables, input treesize:12, output treesize:16 [2019-01-07 18:54:59,696 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:54:59,697 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_31|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (= |#memory_int| (store (store (store |v_#memory_int_31| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0)) [2019-01-07 18:54:59,697 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:54:59,707 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:54:59,708 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-07 18:54:59,709 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:54:59,711 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:54:59,712 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:16, output treesize:5 [2019-01-07 18:54:59,722 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:54:59,722 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_32|]. (let ((.cse0 (select |v_#memory_int_32| ULTIMATE.start_main_p2))) (and (= .cse0 0) (= (store |v_#memory_int_32| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|))) [2019-01-07 18:54:59,722 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) [2019-01-07 18:54:59,729 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:59,730 INFO L273 TraceCheckUtils]: 1: Hoare triple {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-07 18:54:59,731 INFO L273 TraceCheckUtils]: 2: Hoare triple {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume #memory_int[main_p1] >= 0; {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-07 18:54:59,731 INFO L273 TraceCheckUtils]: 3: Hoare triple {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-07 18:54:59,732 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-07 18:54:59,732 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:54:59,745 INFO L273 TraceCheckUtils]: 3: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-07 18:54:59,746 INFO L273 TraceCheckUtils]: 2: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:59,746 INFO L273 TraceCheckUtils]: 1: Hoare triple {700#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:54:59,747 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {700#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} is VALID [2019-01-07 18:54:59,747 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-07 18:54:59,767 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-07 18:54:59,767 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 4 [2019-01-07 18:54:59,767 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:54:59,768 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-07 18:54:59,768 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:54:59,768 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-07 18:54:59,771 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-07 18:54:59,772 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-07 18:54:59,772 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-07 18:54:59,772 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-07 18:54:59,772 INFO L87 Difference]: Start difference. First operand 15 states and 38 transitions. Second operand 4 states. [2019-01-07 18:54:59,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:59,901 INFO L93 Difference]: Finished difference Result 30 states and 79 transitions. [2019-01-07 18:54:59,901 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-07 18:54:59,902 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-07 18:54:59,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:54:59,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:54:59,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2019-01-07 18:54:59,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:54:59,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2019-01-07 18:54:59,904 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 23 transitions. [2019-01-07 18:54:59,925 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:54:59,927 INFO L225 Difference]: With dead ends: 30 [2019-01-07 18:54:59,927 INFO L226 Difference]: Without dead ends: 29 [2019-01-07 18:54:59,927 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-07 18:54:59,928 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2019-01-07 18:54:59,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 23. [2019-01-07 18:54:59,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:54:59,979 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 23 states. [2019-01-07 18:54:59,979 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 23 states. [2019-01-07 18:54:59,979 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 23 states. [2019-01-07 18:54:59,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:59,981 INFO L93 Difference]: Finished difference Result 29 states and 78 transitions. [2019-01-07 18:54:59,981 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 78 transitions. [2019-01-07 18:54:59,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:54:59,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:54:59,982 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 29 states. [2019-01-07 18:54:59,982 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 29 states. [2019-01-07 18:54:59,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:54:59,984 INFO L93 Difference]: Finished difference Result 29 states and 78 transitions. [2019-01-07 18:54:59,984 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 78 transitions. [2019-01-07 18:54:59,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:54:59,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:54:59,985 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:54:59,985 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:54:59,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-01-07 18:54:59,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 74 transitions. [2019-01-07 18:54:59,987 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 74 transitions. Word has length 4 [2019-01-07 18:54:59,987 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:54:59,987 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 74 transitions. [2019-01-07 18:54:59,987 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-07 18:54:59,987 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 74 transitions. [2019-01-07 18:54:59,988 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:54:59,988 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:54:59,988 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:54:59,988 INFO L423 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:54:59,988 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:54:59,989 INFO L82 PathProgramCache]: Analyzing trace with hash 933518, now seen corresponding path program 1 times [2019-01-07 18:54:59,989 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:54:59,989 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:54:59,989 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:54:59,990 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:54:59,990 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:54:59,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:55:00,121 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {848#(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-07 18:55:00,122 INFO L273 TraceCheckUtils]: 1: Hoare triple {848#(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]; {849#(and (or (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3))) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3)))} is VALID [2019-01-07 18:55:00,123 INFO L273 TraceCheckUtils]: 2: Hoare triple {849#(and (or (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3))) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-07 18:55:00,124 INFO L273 TraceCheckUtils]: 3: Hoare triple {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-07 18:55:00,124 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-07 18:55:00,124 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:55:00,124 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:55:00,124 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:55:00,125 INFO L207 CegarAbsIntRunner]: [0], [10], [12], [15] [2019-01-07 18:55:00,126 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:55:00,126 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:55:02,533 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:02,533 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:02,534 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:02,534 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:02,534 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_746 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_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_43_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_752) v_v_28_6) (< v_idx_752 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_748) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_748) (< v_idx_748 c_ULTIMATE.start_main_p3)) (or (= (select |c_#valid| v_idx_754) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_754)) (or (< v_idx_749 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_749) v_v_43_6)) (= (select |c_old(#memory_int)| v_idx_746) v_v_4_6) (= v_v_2_6 (select |c_old(#valid)| v_idx_753)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_747) v_v_41_6) (<= c_ULTIMATE.start_main_p3 v_idx_747)) (or (= (select |c_#valid| v_idx_756) v_v_34_6) (< v_idx_756 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_755) (= (select |c_#valid| v_idx_755) 1) (< v_idx_755 c_ULTIMATE.start_main_p3)) (or (< v_idx_751 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_751) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_751) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_750) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_750) v_v_26_6)))))} [2019-01-07 18:55:02,534 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:55:02,534 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-07 18:55:02,534 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_757 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_758) v_v_44_6) (<= c_ULTIMATE.start_main_p2 v_idx_758)) (or (< v_idx_760 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_760) v_v_46_6)) (or (= (select |c_#valid| v_idx_765) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_765)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_763) v_v_28_6) (< v_idx_763 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_767) v_v_34_6) (< v_idx_767 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_757) v_v_4_6) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_762 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_762)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_762)) (or (<= c_ULTIMATE.start_main_p3 v_idx_761) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_761) v_v_26_6)) (or (< v_idx_759 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_759) v_v_45_6) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_759)) (or (< v_idx_766 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_766)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_766)) (= v_v_2_6 (select |c_old(#valid)| v_idx_764)))))} [2019-01-07 18:55:02,535 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:02,956 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:02,956 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:03,137 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_748 Int)) (or (= (select |#memory_int| v_idx_748) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_748) (< v_idx_748 ULTIMATE.start_main_p3))) (forall ((v_idx_751 Int)) (or (< v_idx_751 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_751) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_751) 0))) (forall ((v_idx_755 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_755) (= (select |#valid| v_idx_755) 1) (< v_idx_755 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:03,138 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:55:03,138 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-07 18:55:03,164 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_766 Int)) (or (< v_idx_766 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_766)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_766))) (forall ((v_idx_762 Int)) (or (< v_idx_762 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_762)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_762))))} [2019-01-07 18:55:05,550 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:05,550 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:05,550 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:05,550 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:05,551 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_768 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_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_43_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_777)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_777) (< v_idx_777 c_ULTIMATE.start_main_p3)) (or (< v_idx_771 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_771) v_v_43_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_774) v_v_28_6) (< v_idx_774 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_768) v_v_4_6) (or (< v_idx_778 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_778) v_v_34_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_775)) (or (<= c_ULTIMATE.start_main_p3 v_idx_776) (= (select |c_#valid| v_idx_776) v_v_32_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_773 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_773) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_773))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_772) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_772) v_v_26_6)) (or (= (select |c_#memory_int| v_idx_769) v_v_41_6) (<= c_ULTIMATE.start_main_p3 v_idx_769)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_770) (= (select |c_#memory_int| v_idx_770) 0) (< v_idx_770 c_ULTIMATE.start_main_p3)))))} [2019-01-07 18:55:05,551 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:05,551 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:05,551 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_779 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_43_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_785) v_v_28_6) (< v_idx_785 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p3 v_idx_783) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_783) v_v_26_6)) (or (<= c_ULTIMATE.start_main_p3 v_idx_780) (= (select |c_#memory_int| v_idx_780) v_v_41_6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_784) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_784) 0) (< v_idx_784 c_ULTIMATE.start_main_p3)) (or (= v_v_32_6 (select |c_#valid| v_idx_787)) (<= c_ULTIMATE.start_main_p3 v_idx_787)) (or (= (select |c_#memory_int| v_idx_781) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_781) (< v_idx_781 c_ULTIMATE.start_main_p3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_782 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_782) v_v_43_6)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_788 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_788) (= 1 (select |c_#valid| v_idx_788))) (or (= v_v_34_6 (select |c_#valid| v_idx_789)) (< v_idx_789 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_779) v_v_4_6) (= v_v_2_6 (select |c_old(#valid)| v_idx_786)))))} [2019-01-07 18:55:05,551 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:06,197 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:06,197 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:06,372 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_773 Int)) (or (< v_idx_773 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_773) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_773)))) (forall ((v_idx_770 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_770) (= (select |#memory_int| v_idx_770) 0) (< v_idx_770 ULTIMATE.start_main_p3))) (forall ((v_idx_777 Int)) (or (= 1 (select |#valid| v_idx_777)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_777) (< v_idx_777 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:06,372 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:06,372 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:06,406 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_788 Int)) (or (< v_idx_788 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_788) (= 1 (select |#valid| v_idx_788)))) (forall ((v_idx_784 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_784) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_784) 0) (< v_idx_784 ULTIMATE.start_main_p3))) (forall ((v_idx_781 Int)) (or (= (select |#memory_int| v_idx_781) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_781) (< v_idx_781 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:09,114 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:09,114 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:09,115 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:09,115 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:09,115 WARN L224 ngHoareTripleChecker]: Pre: {2147483583#(forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_790 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_43_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (or (<= c_ULTIMATE.start_main_p3 v_idx_791) (= (select |c_#memory_int| v_idx_791) v_v_41_6)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_793 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_793) v_v_43_6)) (or (= 1 (select |c_#valid| v_idx_799)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_799) (< v_idx_799 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_794) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_794) v_v_26_6)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_792) (< v_idx_792 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_792) 0)) (or (< v_idx_795 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_795) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_795))) (= v_v_2_6 (select |c_old(#valid)| v_idx_797)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_800) v_v_34_6) (< v_idx_800 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_798) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_798)) (= (select |c_old(#memory_int)| v_idx_790) v_v_4_6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_796) v_v_28_6) (< v_idx_796 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 18:55:09,115 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:09,115 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:09,115 WARN L230 ngHoareTripleChecker]: Post: {2147483582#(forall ((v_idx_801 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_84_6 Int) (v_v_83_6 Int) (v_v_4_6 Int) (v_v_85_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_84_6 (- v_v_84_6)) (- 2)) (= v_v_2_6 (select |c_old(#valid)| v_idx_808)) (or (= (select |c_#memory_int| v_idx_803) v_v_84_6) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_803) (< v_idx_803 c_ULTIMATE.start_main_p1)) (or (< v_idx_807 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_807))) (or (= (select |c_#memory_int| v_idx_802) v_v_83_6) (<= c_ULTIMATE.start_main_p1 v_idx_802)) (or (= (select |c_#valid| v_idx_810) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_810) (< v_idx_810 c_ULTIMATE.start_main_p3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_806) (< v_idx_806 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_806))) (or (= (select |c_#valid| v_idx_809) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_809)) (or (<= c_ULTIMATE.start_main_p3 v_idx_805) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_805) v_v_26_6)) (or (< v_idx_804 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_804) v_v_85_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_801)) (<= (+ v_v_84_6 1) 0) (or (< v_idx_811 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_811) v_v_34_6)))))} [2019-01-07 18:55:09,116 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:09,717 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:09,717 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:09,876 WARN L270 ngHoareTripleChecker]: Pre: {2147483583#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_795 Int)) (or (< v_idx_795 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_795) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_795)))) (forall ((v_idx_792 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_792) (< v_idx_792 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_792) 0))) (forall ((v_idx_799 Int)) (or (= 1 (select |#valid| v_idx_799)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_799) (< v_idx_799 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:09,877 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:09,877 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:09,917 WARN L276 ngHoareTripleChecker]: Post: {2147483582#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_15 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (<= (+ (select |#memory_int| v_prenex_15) 1) 0) (< v_prenex_15 ULTIMATE.start_main_p1))) (forall ((v_idx_806 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_806) (< v_idx_806 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_806)))) (forall ((v_idx_803 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_803)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_803) (< v_idx_803 ULTIMATE.start_main_p1))) (forall ((v_idx_810 Int)) (or (= (select |#valid| v_idx_810) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_810) (< v_idx_810 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:12,347 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:12,348 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:12,348 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:12,348 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:12,348 WARN L224 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_823 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_833) v_v_34_6) (< v_idx_833 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_825) (= (select |c_#memory_int| v_idx_825) v_v_45_6) (< v_idx_825 c_ULTIMATE.start_main_p2)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_823)) (or (= (select |c_#memory_int| v_idx_824) v_v_44_6) (<= c_ULTIMATE.start_main_p2 v_idx_824)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_830) v_v_2_6) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_828) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_828) 0) (< v_idx_828 c_ULTIMATE.start_main_p3)) (or (= (select |c_#memory_int| v_idx_826) v_v_46_6) (< v_idx_826 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_829 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_829))) (or (= (select |c_#valid| v_idx_832) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_832) (< v_idx_832 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_831) (= (select |c_#valid| v_idx_831) v_v_32_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_827) v_v_26_6) (<= c_ULTIMATE.start_main_p3 v_idx_827))))) (forall ((v_idx_820 Int) (v_idx_812 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_819)) (or (= (select |c_#memory_int| v_idx_813) v_v_41_6) (<= c_ULTIMATE.start_main_p3 v_idx_813)) (or (= (select |c_#valid| v_idx_820) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_820)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_818) v_v_28_6) (< v_idx_818 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_821 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_821)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_821)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_814 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_814) (= (select |c_#memory_int| v_idx_814) 0)) (or (<= c_ULTIMATE.start_main_p3 v_idx_816) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_816) v_v_26_6)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_817)) (< v_idx_817 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_817)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_812)) (or (< v_idx_815 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_815) v_v_43_6)) (or (= (select |c_#valid| v_idx_822) v_v_34_6) (< v_idx_822 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:55:12,349 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:55:12,349 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-07 18:55:12,349 WARN L230 ngHoareTripleChecker]: Post: {2147483580#(forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_834 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_4_6 Int) (v_v_86_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_88_6 Int) (v_v_34_6 Int) (v_v_87_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_834)) (= v_v_2_6 (select |c_old(#valid)| v_idx_841)) (or (<= c_ULTIMATE.start_main_p3 v_idx_842) (= v_v_32_6 (select |c_#valid| v_idx_842))) (or (= (select |c_#memory_int| v_idx_837) v_v_88_6) (< v_idx_837 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_839) (< v_idx_839 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_839))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_843) (= 1 (select |c_#valid| v_idx_843)) (< v_idx_843 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_838) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_838) v_v_26_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_835) v_v_86_6) (<= c_ULTIMATE.start_main_p2 v_idx_835)) (or (= (select |c_#valid| v_idx_844) v_v_34_6) (< v_idx_844 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_840 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_840) v_v_28_6)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_836) (= (select |c_#memory_int| v_idx_836) v_v_87_6) (< v_idx_836 c_ULTIMATE.start_main_p2)))))} [2019-01-07 18:55:12,349 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:12,820 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:12,821 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:21,108 WARN L181 SmtUtils]: Spent 8.29 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:55:21,108 WARN L270 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_823 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_833) v_v_34_6) (< v_idx_833 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_825) (= (select |#memory_int| v_idx_825) v_v_45_6) (< v_idx_825 ULTIMATE.start_main_p2)) (= v_v_4_6 (select |old(#memory_int)| v_idx_823)) (or (= (select |#memory_int| v_idx_824) v_v_44_6) (<= ULTIMATE.start_main_p2 v_idx_824)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (= (select |old(#valid)| v_idx_830) v_v_2_6) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_828) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_828) 0) (< v_idx_828 ULTIMATE.start_main_p3)) (or (= (select |#memory_int| v_idx_826) v_v_46_6) (< v_idx_826 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_829 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_28_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_829))) (or (= (select |#valid| v_idx_832) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_832) (< v_idx_832 ULTIMATE.start_main_p3)) (or (<= ULTIMATE.start_main_p3 v_idx_831) (= (select |#valid| v_idx_831) v_v_32_6)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_827) v_v_26_6) (<= ULTIMATE.start_main_p3 v_idx_827))))) (forall ((v_idx_820 Int) (v_idx_812 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |old(#valid)| v_idx_819)) (or (= (select |#memory_int| v_idx_813) v_v_41_6) (<= ULTIMATE.start_main_p3 v_idx_813)) (or (= (select |#valid| v_idx_820) v_v_32_6) (<= ULTIMATE.start_main_p3 v_idx_820)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_818) v_v_28_6) (< v_idx_818 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_821 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_821)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_821)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_814 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_814) (= (select |#memory_int| v_idx_814) 0)) (or (<= ULTIMATE.start_main_p3 v_idx_816) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_816) v_v_26_6)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_817)) (< v_idx_817 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_817)) (= v_v_4_6 (select |old(#memory_int)| v_idx_812)) (or (< v_idx_815 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_815) v_v_43_6)) (or (= (select |#valid| v_idx_822) v_v_34_6) (< v_idx_822 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:55:21,108 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:55:21,108 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-07 18:55:21,265 WARN L276 ngHoareTripleChecker]: Post: {2147483580#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_843 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_843) (= 1 (select |#valid| v_idx_843)) (< v_idx_843 ULTIMATE.start_main_p3))) (forall ((v_idx_839 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_839) (< v_idx_839 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_839)))))} [2019-01-07 18:55:24,352 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:24,353 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:24,353 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:24,353 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:24,353 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_845 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_846) v_v_41_6) (<= c_ULTIMATE.start_main_p3 v_idx_846)) (or (< v_idx_851 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_851) v_v_28_6)) (or (= (select |c_#valid| v_idx_853) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_853)) (or (< v_idx_847 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_847) (= (select |c_#memory_int| v_idx_847) 0)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_850)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_850) (< v_idx_850 c_ULTIMATE.start_main_p3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_849) v_v_26_6) (<= c_ULTIMATE.start_main_p3 v_idx_849)) (or (< v_idx_854 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_854) (= 1 (select |c_#valid| v_idx_854))) (= v_v_2_6 (select |c_old(#valid)| v_idx_852)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_845)) (or (= (select |c_#memory_int| v_idx_848) v_v_43_6) (< v_idx_848 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_855 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_34_6 (select |c_#valid| v_idx_855)))))) (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_856 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_863)) (= (select |c_old(#memory_int)| v_idx_856) v_v_4_6) (or (= (select |c_#memory_int| v_idx_859) v_v_46_6) (< v_idx_859 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_858 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_858) v_v_45_6) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_858)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_862) v_v_28_6) (< v_idx_862 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#valid| v_idx_864) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_864)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_866 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_866) v_v_34_6)) (or (= (select |c_#valid| v_idx_865) 1) (< v_idx_865 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_865)) (or (= v_v_26_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_860)) (<= c_ULTIMATE.start_main_p3 v_idx_860)) (or (= (select |c_#memory_int| v_idx_857) v_v_44_6) (<= c_ULTIMATE.start_main_p2 v_idx_857)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_861)) (< v_idx_861 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_861))))))} [2019-01-07 18:55:24,353 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:24,354 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:24,354 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_867 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_4_6 Int) (v_v_135_6 Int) (v_v_134_6 Int) (v_v_133_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_873 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_873) v_v_28_6)) (or (= (select |c_#valid| v_idx_875) v_v_32_6) (<= c_ULTIMATE.start_main_p3 v_idx_875)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_871) v_v_26_6) (<= c_ULTIMATE.start_main_p3 v_idx_871)) (= v_v_2_6 (select |c_old(#valid)| v_idx_874)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p3 v_idx_868) (= v_v_133_6 (select |c_#memory_int| v_idx_868))) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_867)) (or (< v_idx_869 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_869) (= v_v_134_6 (select |c_#memory_int| v_idx_869))) (or (< v_idx_876 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_876)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_876)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_872) (< v_idx_872 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_872))) (or (< v_idx_877 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_877) v_v_34_6)) (or (< v_idx_870 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_135_6 (select |c_#memory_int| v_idx_870))))))} [2019-01-07 18:55:24,354 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:24,884 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:24,885 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:32,985 WARN L181 SmtUtils]: Spent 8.10 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:55:32,986 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_845 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_846) v_v_41_6) (<= ULTIMATE.start_main_p3 v_idx_846)) (or (< v_idx_851 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_851) v_v_28_6)) (or (= (select |#valid| v_idx_853) v_v_32_6) (<= ULTIMATE.start_main_p3 v_idx_853)) (or (< v_idx_847 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_847) (= (select |#memory_int| v_idx_847) 0)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_850)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_850) (< v_idx_850 ULTIMATE.start_main_p3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_849) v_v_26_6) (<= ULTIMATE.start_main_p3 v_idx_849)) (or (< v_idx_854 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_854) (= 1 (select |#valid| v_idx_854))) (= v_v_2_6 (select |old(#valid)| v_idx_852)) (= v_v_4_6 (select |old(#memory_int)| v_idx_845)) (or (= (select |#memory_int| v_idx_848) v_v_43_6) (< v_idx_848 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_855 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_34_6 (select |#valid| v_idx_855)))))) (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_856 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |old(#valid)| v_idx_863)) (= (select |old(#memory_int)| v_idx_856) v_v_4_6) (or (= (select |#memory_int| v_idx_859) v_v_46_6) (< v_idx_859 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_858 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_858) v_v_45_6) (<= (+ ULTIMATE.start_main_p2 1) v_idx_858)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_862) v_v_28_6) (< v_idx_862 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |#valid| v_idx_864) v_v_32_6) (<= ULTIMATE.start_main_p3 v_idx_864)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_866 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_866) v_v_34_6)) (or (= (select |#valid| v_idx_865) 1) (< v_idx_865 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_865)) (or (= v_v_26_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_860)) (<= ULTIMATE.start_main_p3 v_idx_860)) (or (= (select |#memory_int| v_idx_857) v_v_44_6) (<= ULTIMATE.start_main_p2 v_idx_857)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_861)) (< v_idx_861 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_861))))))} [2019-01-07 18:55:32,986 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:32,986 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:33,191 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_876 Int)) (or (< v_idx_876 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_876)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_876))) (forall ((v_idx_872 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_872) (< v_idx_872 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_872)))))} [2019-01-07 18:55:36,177 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:36,177 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:36,178 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:36,178 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:36,178 WARN L224 ngHoareTripleChecker]: Pre: {2147483577#(or (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_878 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_43_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_883 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_883) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_883))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_881) v_v_43_6) (< v_idx_881 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_887) (< v_idx_887 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_887) 1)) (or (< v_idx_888 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_888) v_v_34_6)) (or (<= c_ULTIMATE.start_main_p3 v_idx_879) (= (select |c_#memory_int| v_idx_879) v_v_41_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p3 v_idx_886) (= (select |c_#valid| v_idx_886) v_v_32_6)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_880) (= (select |c_#memory_int| v_idx_880) 0) (< v_idx_880 c_ULTIMATE.start_main_p3)) (or (<= c_ULTIMATE.start_main_p3 v_idx_882) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_882) v_v_26_6)) (= (select |c_old(#memory_int)| v_idx_878) v_v_4_6) (or (< v_idx_884 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_884) v_v_28_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_885))))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_889 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_891 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_891) v_v_45_6) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_891)) (or (< v_idx_899 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_899) v_v_34_6)) (= (select |c_old(#memory_int)| v_idx_889) v_v_4_6) (or (<= c_ULTIMATE.start_main_p2 v_idx_890) (= (select |c_#memory_int| v_idx_890) v_v_44_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_898) (< v_idx_898 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_898) 1)) (or (<= c_ULTIMATE.start_main_p3 v_idx_897) (= (select |c_#valid| v_idx_897) v_v_32_6)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_892) v_v_46_6) (< v_idx_892 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_6 (select |c_old(#valid)| v_idx_896)) (or (< v_idx_895 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_895) v_v_28_6)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_894)) (< v_idx_894 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_894)) (or (<= c_ULTIMATE.start_main_p3 v_idx_893) (= v_v_26_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_893)))))))} [2019-01-07 18:55:36,178 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:36,178 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:36,178 WARN L230 ngHoareTripleChecker]: Post: {2147483576#(forall ((v_idx_900 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_4_6 Int) (v_v_180_2 Int) (v_v_179_2 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_178_2 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_901) (= (select |c_#memory_int| v_idx_901) v_v_178_2)) (or (< v_idx_903 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_180_2 (select |c_#memory_int| v_idx_903))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_902) (= (select |c_#memory_int| v_idx_902) v_v_179_2) (< v_idx_902 c_ULTIMATE.start_main_p1)) (<= (+ v_v_179_2 1) 0) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_900)) (or (<= c_ULTIMATE.start_main_p3 v_idx_908) (= v_v_32_6 (select |c_#valid| v_idx_908))) (or (< v_idx_909 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_909)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_909)) (or (= (select |c_#valid| v_idx_910) v_v_34_6) (< v_idx_910 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_904) v_v_26_6) (<= c_ULTIMATE.start_main_p3 v_idx_904)) (<= (- v_v_179_2 (- v_v_179_2)) (- 2)) (= v_v_2_6 (select |c_old(#valid)| v_idx_907)) (or (< v_idx_905 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_905) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_905))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_906) v_v_28_6) (< v_idx_906 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 18:55:36,178 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:36,738 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:36,738 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:44,781 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:55:44,782 WARN L270 ngHoareTripleChecker]: Pre: {2147483577#(or (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_878 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_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_43_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (or (< v_idx_883 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_883) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_883))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_881) v_v_43_6) (< v_idx_881 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_887) (< v_idx_887 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_887) 1)) (or (< v_idx_888 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_888) v_v_34_6)) (or (<= ULTIMATE.start_main_p3 v_idx_879) (= (select |#memory_int| v_idx_879) v_v_41_6)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= ULTIMATE.start_main_p3 v_idx_886) (= (select |#valid| v_idx_886) v_v_32_6)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_880) (= (select |#memory_int| v_idx_880) 0) (< v_idx_880 ULTIMATE.start_main_p3)) (or (<= ULTIMATE.start_main_p3 v_idx_882) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_882) v_v_26_6)) (= (select |old(#memory_int)| v_idx_878) v_v_4_6) (or (< v_idx_884 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_884) v_v_28_6)) (= v_v_2_6 (select |old(#valid)| v_idx_885))))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_889 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_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_891 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_891) v_v_45_6) (<= (+ ULTIMATE.start_main_p2 1) v_idx_891)) (or (< v_idx_899 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_899) v_v_34_6)) (= (select |old(#memory_int)| v_idx_889) v_v_4_6) (or (<= ULTIMATE.start_main_p2 v_idx_890) (= (select |#memory_int| v_idx_890) v_v_44_6)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_898) (< v_idx_898 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_898) 1)) (or (<= ULTIMATE.start_main_p3 v_idx_897) (= (select |#valid| v_idx_897) v_v_32_6)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_892) v_v_46_6) (< v_idx_892 (+ ULTIMATE.start_main_p2 1))) (= v_v_2_6 (select |old(#valid)| v_idx_896)) (or (< v_idx_895 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_895) v_v_28_6)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_894)) (< v_idx_894 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_894)) (or (<= ULTIMATE.start_main_p3 v_idx_893) (= v_v_26_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_893)))))))} [2019-01-07 18:55:44,782 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:44,782 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:45,007 WARN L276 ngHoareTripleChecker]: Post: {2147483576#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_905 Int)) (or (< v_idx_905 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_905) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_905)))) (forall ((v_idx_902 Int)) (or (<= (+ (select |#memory_int| v_idx_902) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_902) (< v_idx_902 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_909 Int)) (or (< v_idx_909 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_909)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_909))) (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))))} [2019-01-07 18:55:45,181 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:55:45,181 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-07 18:55:45,181 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:55:45,181 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:55:45,181 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:55:45,182 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 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-07 18:55:45,192 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:55:45,192 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:55:45,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:55:45,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:55:45,199 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:55:45,228 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 12 treesize of output 15 [2019-01-07 18:55:45,238 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-07 18:55:45,250 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,251 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,252 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-07 18:55:45,254 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,267 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,275 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,292 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,293 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-07 18:55:45,326 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,327 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,328 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-07 18:55:45,330 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,336 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,349 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,349 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:32, output treesize:28 [2019-01-07 18:55:45,354 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:55:45,354 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_34|, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0) (= |#memory_int| (store (store (store |v_#memory_int_34| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0)))) [2019-01-07 18:55:45,354 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:55:45,397 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:45,398 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 34 [2019-01-07 18:55:45,407 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:55:45,420 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-07 18:55:45,420 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:20 [2019-01-07 18:55:47,447 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:55:47,447 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_35|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_35| ULTIMATE.start_main_p2))) (and (= 0 (select |v_#memory_int_35| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_35| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_35| ULTIMATE.start_main_p3)))) [2019-01-07 18:55:47,447 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) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:55:47,490 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:47,491 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:47,492 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:47,493 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:47,494 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:55:47,495 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 50 [2019-01-07 18:55:47,499 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:55:47,513 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-07 18:55:47,513 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:32, output treesize:18 [2019-01-07 18:55:47,619 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:55:47,620 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_36|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_36| ULTIMATE.start_main_p3))) (and (= (store |v_#memory_int_36| ULTIMATE.start_main_p3 (+ .cse0 1)) |#memory_int|) (= 0 (+ (select |v_#memory_int_36| ULTIMATE.start_main_p2) 1)) (= .cse0 0) (= (select |v_#memory_int_36| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-07 18:55:47,620 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) [2019-01-07 18:55:47,642 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {854#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-01-07 18:55:47,644 INFO L273 TraceCheckUtils]: 1: Hoare triple {854#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {858#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-01-07 18:55:47,645 INFO L273 TraceCheckUtils]: 2: Hoare triple {858#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {862#(and (exists ((ULTIMATE.start_main_p2 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 1)))} is VALID [2019-01-07 18:55:47,646 INFO L273 TraceCheckUtils]: 3: Hoare triple {862#(and (exists ((ULTIMATE.start_main_p2 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 1)))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-07 18:55:47,646 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-07 18:55:47,647 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:55:47,708 INFO L273 TraceCheckUtils]: 3: Hoare triple {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-07 18:55:47,710 INFO L273 TraceCheckUtils]: 2: Hoare triple {869#(or (= (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1) 0) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-07 18:55:47,711 INFO L273 TraceCheckUtils]: 1: Hoare triple {873#(or (<= 1 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {869#(or (= (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1) 0) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-07 18:55:47,712 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {873#(or (<= 1 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-07 18:55:47,712 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-07 18:55:47,732 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:55:47,732 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 8 [2019-01-07 18:55:47,732 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:55:47,732 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-07 18:55:47,733 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:55:47,733 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-07 18:55:47,743 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-07 18:55:47,744 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-07 18:55:47,744 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-07 18:55:47,744 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=54, Unknown=0, NotChecked=0, Total=90 [2019-01-07 18:55:47,744 INFO L87 Difference]: Start difference. First operand 23 states and 74 transitions. Second operand 8 states. [2019-01-07 18:55:48,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:55:48,200 INFO L93 Difference]: Finished difference Result 48 states and 138 transitions. [2019-01-07 18:55:48,200 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-07 18:55:48,200 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-07 18:55:48,201 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:55:48,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-07 18:55:48,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2019-01-07 18:55:48,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-07 18:55:48,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2019-01-07 18:55:48,202 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 39 transitions. [2019-01-07 18:55:48,256 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:55:48,258 INFO L225 Difference]: With dead ends: 48 [2019-01-07 18:55:48,259 INFO L226 Difference]: Without dead ends: 44 [2019-01-07 18:55:48,259 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=52, Invalid=80, Unknown=0, NotChecked=0, Total=132 [2019-01-07 18:55:48,259 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2019-01-07 18:55:48,397 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 31. [2019-01-07 18:55:48,397 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:55:48,397 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand 31 states. [2019-01-07 18:55:48,398 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 31 states. [2019-01-07 18:55:48,398 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 31 states. [2019-01-07 18:55:48,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:55:48,401 INFO L93 Difference]: Finished difference Result 44 states and 128 transitions. [2019-01-07 18:55:48,401 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 128 transitions. [2019-01-07 18:55:48,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:55:48,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:55:48,402 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 44 states. [2019-01-07 18:55:48,402 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 44 states. [2019-01-07 18:55:48,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:55:48,405 INFO L93 Difference]: Finished difference Result 44 states and 128 transitions. [2019-01-07 18:55:48,405 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 128 transitions. [2019-01-07 18:55:48,405 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:55:48,405 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:55:48,406 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:55:48,406 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:55:48,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2019-01-07 18:55:48,408 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 105 transitions. [2019-01-07 18:55:48,408 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 105 transitions. Word has length 4 [2019-01-07 18:55:48,408 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:55:48,408 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 105 transitions. [2019-01-07 18:55:48,408 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-07 18:55:48,408 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 105 transitions. [2019-01-07 18:55:48,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:55:48,410 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:55:48,410 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:55:48,410 INFO L423 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:55:48,411 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:55:48,411 INFO L82 PathProgramCache]: Analyzing trace with hash 935566, now seen corresponding path program 1 times [2019-01-07 18:55:48,411 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:55:48,412 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:55:48,412 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:55:48,412 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:55:48,412 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:55:48,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:55:48,470 INFO L273 TraceCheckUtils]: 0: Hoare triple {1099#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {1101#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p3)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-07 18:55:48,471 INFO L273 TraceCheckUtils]: 1: Hoare triple {1101#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p3)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:55:48,472 INFO L273 TraceCheckUtils]: 2: Hoare triple {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:55:48,473 INFO L273 TraceCheckUtils]: 3: Hoare triple {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {1100#false} is VALID [2019-01-07 18:55:48,473 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-07 18:55:48,473 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:55:48,474 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:55:48,474 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:55:48,474 INFO L207 CegarAbsIntRunner]: [0], [12], [16], [17] [2019-01-07 18:55:48,475 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:55:48,476 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:55:50,758 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:50,758 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:50,759 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:50,759 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:50,759 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_934 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_937 Int) (v_idx_927 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_936) 1) (< v_idx_936 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_936)) (or (<= c_ULTIMATE.start_main_p3 v_idx_931) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_931) v_v_26_7)) (or (= (select |c_#memory_int| v_idx_928) v_v_41_7) (<= c_ULTIMATE.start_main_p3 v_idx_928)) (= (select |c_old(#memory_int)| v_idx_927) v_v_4_7) (= (select |c_old(#valid)| v_idx_934) v_v_2_7) (or (< v_idx_937 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_937) v_v_34_7)) (or (= (select |c_#memory_int| v_idx_929) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_929) (< v_idx_929 c_ULTIMATE.start_main_p3)) (or (= (select |c_#memory_int| v_idx_930) v_v_43_7) (< v_idx_930 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_933) v_v_28_7) (< v_idx_933 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_932)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_932) (< v_idx_932 c_ULTIMATE.start_main_p3)) (or (= (select |c_#valid| v_idx_935) v_v_32_7) (<= c_ULTIMATE.start_main_p3 v_idx_935)))))} [2019-01-07 18:55:50,759 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:55:50,759 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:55:50,759 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 Int) (v_idx_945 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_948 Int) (v_idx_938 Int) (v_idx_946 Int) (v_idx_947 Int) (v_idx_939 Int)) (exists ((v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_46_7 Int) (v_v_34_7 Int) (v_v_45_7 Int) (v_v_44_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_939) v_v_44_7) (<= c_ULTIMATE.start_main_p1 v_idx_939)) (= (select |c_old(#valid)| v_idx_945) v_v_2_7) (or (< v_idx_948 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_948) v_v_34_7)) (= (select |c_old(#memory_int)| v_idx_938) v_v_4_7) (or (< v_idx_947 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_947)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_947)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_944) v_v_28_7) (< v_idx_944 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- v_v_45_7) v_v_45_7) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_943) 0) (< v_idx_943 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_943)) (or (= (select |c_#memory_int| v_idx_940) v_v_45_7) (< v_idx_940 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_940)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_946) v_v_32_7) (<= c_ULTIMATE.start_main_p3 v_idx_946)) (or (<= c_ULTIMATE.start_main_p3 v_idx_942) (= v_v_26_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_942))) (or (= v_v_46_7 (select |c_#memory_int| v_idx_941)) (< v_idx_941 (+ c_ULTIMATE.start_main_p1 1))) (<= 0 v_v_45_7))))} [2019-01-07 18:55:50,759 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:51,371 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:51,371 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:51,430 WARN L270 ngHoareTripleChecker]: Pre: {2147483573#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_936 Int)) (or (= (select |#valid| v_idx_936) 1) (< v_idx_936 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_936))) (forall ((v_idx_929 Int)) (or (= (select |#memory_int| v_idx_929) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_929) (< v_idx_929 ULTIMATE.start_main_p3))) (forall ((v_idx_932 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_932)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_932) (< v_idx_932 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:51,431 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:55:51,431 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:55:51,591 WARN L276 ngHoareTripleChecker]: Post: {2147483572#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_947 Int)) (or (< v_idx_947 ULTIMATE.start_main_p3) (= 1 (select |#valid| v_idx_947)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_947))) (forall ((v_idx_940 Int)) (or (< v_idx_940 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_940) (<= 0 (* 2 (select |#memory_int| v_idx_940))))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (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))) (forall ((v_idx_943 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_943) 0) (< v_idx_943 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_943))))} [2019-01-07 18:55:53,710 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:53,710 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:53,710 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:53,710 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:53,711 WARN L224 ngHoareTripleChecker]: Pre: {2147483571#(forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 Int) (v_idx_956 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_959 Int) (v_idx_949 Int) (v_idx_957 Int) (v_idx_958 Int)) (exists ((v_v_2_7 Int) (v_v_41_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_949)) (or (= (select |c_#memory_int| v_idx_952) v_v_43_7) (< v_idx_952 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_956)) (or (< v_idx_954 c_ULTIMATE.start_main_p3) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_954) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_954)) (or (<= c_ULTIMATE.start_main_p3 v_idx_950) (= (select |c_#memory_int| v_idx_950) v_v_41_7)) (or (= (select |c_#valid| v_idx_958) 1) (< v_idx_958 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_958)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_951 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_951) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_951)) (or (= (select |c_#valid| v_idx_957) v_v_32_7) (<= c_ULTIMATE.start_main_p3 v_idx_957)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_953) v_v_26_7) (<= c_ULTIMATE.start_main_p3 v_idx_953)) (or (< v_idx_959 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_959) v_v_34_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_955) v_v_28_7) (< v_idx_955 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 18:55:53,711 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:53,711 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:53,711 WARN L230 ngHoareTripleChecker]: Post: {2147483570#(forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_966 Int) (v_idx_967 Int) (v_idx_964 Int) (v_idx_965 Int) (v_idx_968 Int) (v_idx_969 Int) (v_idx_970 Int)) (exists ((v_v_2_7 Int) (v_v_41_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_965 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_965)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_965)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_969) (= (select |c_#valid| v_idx_969) 1) (< v_idx_969 c_ULTIMATE.start_main_p3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_962) (< v_idx_962 c_ULTIMATE.start_main_p3) (= 1 (select |c_#memory_int| v_idx_962))) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_960)) (or (<= c_ULTIMATE.start_main_p3 v_idx_968) (= (select |c_#valid| v_idx_968) v_v_32_7)) (or (<= c_ULTIMATE.start_main_p3 v_idx_964) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_964) v_v_26_7)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_966 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_966) v_v_28_7)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_34_7 (select |c_#valid| v_idx_970)) (< v_idx_970 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_963 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_963) v_v_43_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_967)) (or (= (select |c_#memory_int| v_idx_961) v_v_41_7) (<= c_ULTIMATE.start_main_p3 v_idx_961)))))} [2019-01-07 18:55:53,711 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:54,303 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:54,303 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:54,332 WARN L270 ngHoareTripleChecker]: Pre: {2147483571#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_951 Int)) (or (< v_idx_951 ULTIMATE.start_main_p3) (= (select |#memory_int| v_idx_951) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_951))) (forall ((v_idx_954 Int)) (or (< v_idx_954 ULTIMATE.start_main_p3) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_954) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_954))) (forall ((v_idx_958 Int)) (or (= (select |#valid| v_idx_958) 1) (< v_idx_958 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_958))))} [2019-01-07 18:55:54,332 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-07 18:55:54,332 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-07 18:55:54,503 WARN L276 ngHoareTripleChecker]: Post: {2147483570#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_965 Int)) (or (< v_idx_965 ULTIMATE.start_main_p3) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_965)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_965))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_962 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_962) (< v_idx_962 ULTIMATE.start_main_p3) (= 1 (select |#memory_int| v_idx_962)))) (forall ((v_idx_969 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_969) (= (select |#valid| v_idx_969) 1) (< v_idx_969 ULTIMATE.start_main_p3))))} [2019-01-07 18:55:56,845 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:56,845 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:56,845 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:56,845 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:56,845 WARN L224 ngHoareTripleChecker]: Pre: {2147483569#(forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_977 Int) (v_idx_978 Int) (v_idx_975 Int) (v_idx_976 Int) (v_idx_979 Int) (v_idx_980 Int) (v_idx_981 Int)) (exists ((v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_46_7 Int) (v_v_45_7 Int) (v_v_34_7 Int) (v_v_44_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_980 c_ULTIMATE.start_main_p3) (= (select |c_#valid| v_idx_980) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_980)) (= v_v_2_7 (select |c_old(#valid)| v_idx_978)) (or (= (select |c_#memory_int| v_idx_974) v_v_46_7) (< v_idx_974 (+ c_ULTIMATE.start_main_p1 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_972) (= (select |c_#memory_int| v_idx_972) v_v_44_7)) (<= (- (- v_v_45_7) v_v_45_7) 0) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_973 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_973) (= v_v_45_7 (select |c_#memory_int| v_idx_973))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_979) v_v_32_7) (<= c_ULTIMATE.start_main_p3 v_idx_979)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_976) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_976)) (< v_idx_976 c_ULTIMATE.start_main_p3)) (or (= v_v_26_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_975)) (<= c_ULTIMATE.start_main_p3 v_idx_975)) (or (< v_idx_977 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_977) v_v_28_7)) (or (= (select |c_#valid| v_idx_981) v_v_34_7) (< v_idx_981 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= 0 v_v_45_7) (= (select |c_old(#memory_int)| v_idx_971) v_v_4_7))))} [2019-01-07 18:55:56,846 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:55:56,846 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:55:56,846 WARN L230 ngHoareTripleChecker]: Post: {2147483568#(forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_986 Int) (v_idx_987 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_2_7 Int) (v_v_61_7 Int) (v_v_62_7 Int) (v_v_4_7 Int) (v_v_63_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_32_7 (select |c_#valid| v_idx_990)) (<= c_ULTIMATE.start_main_p3 v_idx_990)) (<= 1 v_v_62_7) (<= (- (- v_v_62_7) v_v_62_7) (- 2)) (or (< v_idx_991 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_991) (= 1 (select |c_#valid| v_idx_991))) (= (select |c_old(#memory_int)| v_idx_982) v_v_4_7) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_986) v_v_26_7) (<= c_ULTIMATE.start_main_p3 v_idx_986)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_985) v_v_63_7) (< v_idx_985 (+ c_ULTIMATE.start_main_p2 1))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_983) (= (select |c_#memory_int| v_idx_983) v_v_61_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_987) 0) (< v_idx_987 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_987)) (or (< v_idx_992 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_992) v_v_34_7)) (or (< v_idx_988 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_988) v_v_28_7)) (or (= (select |c_#memory_int| v_idx_984) v_v_62_7) (< v_idx_984 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_984)) (= v_v_2_7 (select |c_old(#valid)| v_idx_989)))))} [2019-01-07 18:55:56,846 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:57,429 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:57,429 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:57,598 WARN L270 ngHoareTripleChecker]: Pre: {2147483569#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_973 Int)) (or (<= 0 (select |#memory_int| v_idx_973)) (< v_idx_973 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_973))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_976 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_976) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_976)) (< v_idx_976 ULTIMATE.start_main_p3))) (forall ((v_idx_980 Int)) (or (< v_idx_980 ULTIMATE.start_main_p3) (= (select |#valid| v_idx_980) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_980))) (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))))} [2019-01-07 18:55:57,599 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:55:57,599 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:55:57,636 WARN L276 ngHoareTripleChecker]: Post: {2147483568#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_984 Int)) (or (< v_idx_984 ULTIMATE.start_main_p2) (<= 2 (* 2 (select |#memory_int| v_idx_984))) (<= (+ ULTIMATE.start_main_p2 1) v_idx_984))) (forall ((v_idx_987 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_987) 0) (< v_idx_987 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_987))) (forall ((v_prenex_19 Int)) (or (<= 1 (select |#memory_int| v_prenex_19)) (< v_prenex_19 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_19))) (forall ((v_idx_991 Int)) (or (< v_idx_991 ULTIMATE.start_main_p3) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_991) (= 1 (select |#valid| v_idx_991)))))} [2019-01-07 18:56:00,113 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:56:00,114 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:56:00,114 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:56:00,114 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:56:00,114 WARN L224 ngHoareTripleChecker]: Pre: {2147483567#(or (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_1003 Int) (v_idx_993 Int) (v_idx_1002 Int) (v_idx_994 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_997 Int) (v_idx_998 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p3 v_idx_1001) (= (select |c_#valid| v_idx_1001) v_v_32_7)) (or (= (select |c_#memory_int| v_idx_996) v_v_43_7) (< v_idx_996 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_998) (< v_idx_998 c_ULTIMATE.start_main_p3) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_998))) (or (<= c_ULTIMATE.start_main_p3 v_idx_994) (= (select |c_#memory_int| v_idx_994) v_v_41_7)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_999 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_28_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_999))) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_993)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_997) v_v_26_7) (<= c_ULTIMATE.start_main_p3 v_idx_997)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1002) (= 1 (select |c_#valid| v_idx_1002)) (< v_idx_1002 c_ULTIMATE.start_main_p3)) (= (select |c_old(#valid)| v_idx_1000) v_v_2_7) (or (< v_idx_1003 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1003) v_v_34_7)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_995) (= 0 (select |c_#memory_int| v_idx_995)) (< v_idx_995 c_ULTIMATE.start_main_p3))))) (forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_32_7 (select |c_#valid| v_idx_1012)) (<= c_ULTIMATE.start_main_p3 v_idx_1012)) (or (< v_idx_1007 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_43_7 (select |c_#memory_int| v_idx_1007))) (or (< v_idx_1010 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1010) v_v_28_7)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p3 v_idx_1008) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1008) v_v_26_7)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1005) v_v_41_7) (<= c_ULTIMATE.start_main_p3 v_idx_1005)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1004)) (= (select |c_old(#valid)| v_idx_1011) v_v_2_7) (or (= (select |c_#memory_int| v_idx_1006) 1) (< v_idx_1006 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1006)) (or (= v_v_34_7 (select |c_#valid| v_idx_1014)) (< v_idx_1014 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1013) (< v_idx_1013 c_ULTIMATE.start_main_p3) (= 1 (select |c_#valid| v_idx_1013))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1009)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1009) (< v_idx_1009 c_ULTIMATE.start_main_p3))))))} [2019-01-07 18:56:00,114 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:56:00,115 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:56:00,115 WARN L230 ngHoareTripleChecker]: Post: {2147483566#(forall ((v_idx_1016 Int) (v_idx_1015 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_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_64_7 Int) (v_v_65_7 Int) (v_v_66_7 Int) (v_v_32_7 Int)) (and (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1015)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1021 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1021) v_v_28_7)) (<= (- (- v_v_65_7) v_v_65_7) 0) (= (select |c_old(#valid)| v_idx_1022) v_v_2_7) (or (= (select |c_#memory_int| v_idx_1017) v_v_65_7) (< v_idx_1017 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1017)) (or (< v_idx_1020 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1020) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1020))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_1025 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1025) v_v_34_7)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_1024)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1024) (< v_idx_1024 c_ULTIMATE.start_main_p3)) (<= 0 v_v_65_7) (or (= v_v_66_7 (select |c_#memory_int| v_idx_1018)) (< v_idx_1018 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1019) v_v_26_7) (<= c_ULTIMATE.start_main_p3 v_idx_1019)) (or (= (select |c_#valid| v_idx_1023) v_v_32_7) (<= c_ULTIMATE.start_main_p3 v_idx_1023)) (or (= v_v_64_7 (select |c_#memory_int| v_idx_1016)) (<= c_ULTIMATE.start_main_p1 v_idx_1016)))))} [2019-01-07 18:56:00,115 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:56:00,513 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:56:00,514 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:56:05,997 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-07 18:56:05,999 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.handleInfeasibleCase(BaseRefinementStrategy.java:296) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:206) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:70) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:456) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:434) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:376) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:225) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:155) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.logic.Util.checkSat(Util.java:61) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.getRedundancy(SimplifyDDA.java:626) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getRedundancy(SimplifyDDAWithTimeout.java:122) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA$Simplifier.walk(SimplifyDDA.java:371) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:122) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:113) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.simplifyOnce(SimplifyDDA.java:650) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getSimplifiedTerm(SimplifyDDAWithTimeout.java:187) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SmtUtils.simplify(SmtUtils.java:152) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.toStringSimplified(DebuggingHoareTripleChecker.java:313) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.logUnsoundness(DebuggingHoareTripleChecker.java:270) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:192) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:179) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkInternal(DebuggingHoareTripleChecker.java:139) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:80) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:62) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:1) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.assertIsPostSound(FixpointEngine.java:268) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateAbstractPost(FixpointEngine.java:254) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateFixpoint(FixpointEngine.java:134) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.run(FixpointEngine.java:105) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.tool.AbstractInterpreter.runWithoutTimeoutAndResults(AbstractInterpreter.java:149) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarAbsIntRunner.generateFixpoints(CegarAbsIntRunner.java:222) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.constructInterpolantGenerator(BaseTaipanRefinementStrategy.java:382) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.getInterpolantGenerator(BaseTaipanRefinementStrategy.java:225) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:380) ... 20 more Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:205) ... 50 more [2019-01-07 18:56:06,003 INFO L168 Benchmark]: Toolchain (without parser) took 252395.98 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 888.1 MB). Free memory was 1.5 GB in the beginning and 2.1 GB in the end (delta: -628.9 MB). Peak memory consumption was 809.3 MB. Max. memory is 7.1 GB. [2019-01-07 18:56:06,004 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 18:56:06,005 INFO L168 Benchmark]: Boogie Procedure Inliner took 70.95 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 18:56:06,005 INFO L168 Benchmark]: Boogie Preprocessor took 31.38 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 18:56:06,006 INFO L168 Benchmark]: RCFGBuilder took 660.17 ms. Allocated memory is still 1.5 GB. Free memory was 1.5 GB in the beginning and 1.4 GB in the end (delta: 21.1 MB). Peak memory consumption was 21.1 MB. Max. memory is 7.1 GB. [2019-01-07 18:56:06,007 INFO L168 Benchmark]: TraceAbstraction took 251627.54 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 888.1 MB). Free memory was 1.4 GB in the beginning and 2.1 GB in the end (delta: -650.1 MB). Peak memory consumption was 788.1 MB. Max. memory is 7.1 GB. [2019-01-07 18:56:06,011 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 70.95 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Preprocessor took 31.38 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. * RCFGBuilder took 660.17 ms. Allocated memory is still 1.5 GB. Free memory was 1.5 GB in the beginning and 1.4 GB in the end (delta: 21.1 MB). Peak memory consumption was 21.1 MB. Max. memory is 7.1 GB. * TraceAbstraction took 251627.54 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 888.1 MB). Free memory was 1.4 GB in the beginning and 2.1 GB in the end (delta: -650.1 MB). Peak memory consumption was 788.1 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...