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-4-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-f57a05f [2019-01-07 18:51:59,158 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-07 18:51:59,160 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-07 18:51:59,179 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-07 18:51:59,179 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-07 18:51:59,181 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-07 18:51:59,183 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-07 18:51:59,185 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-07 18:51:59,188 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-07 18:51:59,195 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-07 18:51:59,196 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-07 18:51:59,197 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-07 18:51:59,199 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-07 18:51:59,200 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-07 18:51:59,203 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-07 18:51:59,205 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-07 18:51:59,206 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-07 18:51:59,209 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-07 18:51:59,214 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-07 18:51:59,218 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-07 18:51:59,219 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-07 18:51:59,221 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-07 18:51:59,225 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-07 18:51:59,226 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-07 18:51:59,226 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-07 18:51:59,227 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-07 18:51:59,229 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-07 18:51:59,230 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-07 18:51:59,231 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-07 18:51:59,231 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-07 18:51:59,233 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-07 18:51:59,234 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-07 18:51:59,234 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-07 18:51:59,234 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-07 18:51:59,235 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-07 18:51:59,237 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-07 18:51:59,238 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:59,259 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-07 18:51:59,259 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-07 18:51:59,261 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-07 18:51:59,262 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-07 18:51:59,262 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-07 18:51:59,262 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-07 18:51:59,262 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-07 18:51:59,262 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-07 18:51:59,263 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-07 18:51:59,263 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-07 18:51:59,263 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-07 18:51:59,263 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-07 18:51:59,263 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-07 18:51:59,264 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-07 18:51:59,264 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-07 18:51:59,264 INFO L133 SettingsManager]: * Use SBE=true [2019-01-07 18:51:59,265 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-07 18:51:59,265 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-07 18:51:59,265 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-07 18:51:59,265 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-07 18:51:59,265 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-07 18:51:59,266 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-07 18:51:59,267 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-07 18:51:59,267 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-07 18:51:59,267 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-07 18:51:59,267 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-07 18:51:59,267 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-07 18:51:59,268 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-07 18:51:59,268 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-07 18:51:59,268 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-07 18:51:59,268 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-07 18:51:59,268 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-07 18:51:59,269 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-07 18:51:59,269 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-07 18:51:59,313 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-07 18:51:59,326 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-07 18:51:59,331 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-07 18:51:59,334 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-07 18:51:59,334 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-07 18:51:59,335 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-4-unlimited.bpl [2019-01-07 18:51:59,335 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-4-unlimited.bpl' [2019-01-07 18:51:59,398 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-07 18:51:59,400 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-07 18:51:59,401 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-07 18:51:59,401 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-07 18:51:59,402 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-07 18:51:59,422 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,441 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,469 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-07 18:51:59,470 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-07 18:51:59,471 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-07 18:51:59,471 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-07 18:51:59,483 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,484 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,486 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,486 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,490 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,496 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,497 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/1) ... [2019-01-07 18:51:59,499 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-07 18:51:59,500 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-07 18:51:59,500 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-07 18:51:59,500 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-07 18:51:59,501 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (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:59,570 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-07 18:51:59,570 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-07 18:52:00,224 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-07 18:52:00,225 INFO L286 CfgBuilder]: Removed 11 assue(true) statements. [2019-01-07 18:52:00,226 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.01 06:52:00 BoogieIcfgContainer [2019-01-07 18:52:00,227 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-07 18:52:00,228 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-07 18:52:00,228 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-07 18:52:00,231 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-07 18:52:00,232 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 07.01 06:51:59" (1/2) ... [2019-01-07 18:52:00,233 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@15b88aff and model type speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.01 06:52:00, skipping insertion in model container [2019-01-07 18:52:00,233 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-4-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.01 06:52:00" (2/2) ... [2019-01-07 18:52:00,235 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-4-unlimited.bpl [2019-01-07 18:52:00,245 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-07 18:52:00,252 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 4 error locations. [2019-01-07 18:52:00,268 INFO L257 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2019-01-07 18:52:00,303 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-07 18:52:00,303 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-07 18:52:00,303 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-07 18:52:00,303 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-07 18:52:00,303 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-07 18:52:00,304 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-07 18:52:00,304 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-07 18:52:00,304 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-07 18:52:00,318 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states. [2019-01-07 18:52:00,324 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-07 18:52:00,324 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:52:00,325 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-07 18:52:00,328 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:52:00,334 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:52:00,335 INFO L82 PathProgramCache]: Analyzing trace with hash 980, now seen corresponding path program 1 times [2019-01-07 18:52:00,337 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:52:00,383 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:00,383 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:52:00,383 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:00,384 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:52:00,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:52:00,589 INFO L273 TraceCheckUtils]: 0: Hoare triple {14#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {16#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:52:00,594 INFO L273 TraceCheckUtils]: 1: Hoare triple {16#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {15#false} is VALID [2019-01-07 18:52:00,596 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:52:00,598 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-07 18:52:00,599 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-07 18:52:00,599 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:52:00,604 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-07 18:52:00,605 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:52:00,609 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-07 18:52:00,629 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:52:00,629 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-07 18:52:00,639 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-07 18:52:00,640 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:52:00,642 INFO L87 Difference]: Start difference. First operand 11 states. Second operand 3 states. [2019-01-07 18:52:01,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:01,032 INFO L93 Difference]: Finished difference Result 21 states and 27 transitions. [2019-01-07 18:52:01,032 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 18:52:01,034 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-07 18:52:01,035 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:52:01,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:52:01,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2019-01-07 18:52:01,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:52:01,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2019-01-07 18:52:01,051 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 27 transitions. [2019-01-07 18:52:01,156 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:52:01,176 INFO L225 Difference]: With dead ends: 21 [2019-01-07 18:52:01,176 INFO L226 Difference]: Without dead ends: 16 [2019-01-07 18:52:01,181 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:52:01,206 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2019-01-07 18:52:01,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 10. [2019-01-07 18:52:01,262 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:52:01,262 INFO L82 GeneralOperation]: Start isEquivalent. First operand 16 states. Second operand 10 states. [2019-01-07 18:52:01,263 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 10 states. [2019-01-07 18:52:01,263 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 10 states. [2019-01-07 18:52:01,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:01,268 INFO L93 Difference]: Finished difference Result 16 states and 22 transitions. [2019-01-07 18:52:01,268 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 22 transitions. [2019-01-07 18:52:01,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:52:01,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:52:01,269 INFO L74 IsIncluded]: Start isIncluded. First operand 10 states. Second operand 16 states. [2019-01-07 18:52:01,269 INFO L87 Difference]: Start difference. First operand 10 states. Second operand 16 states. [2019-01-07 18:52:01,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:52:01,273 INFO L93 Difference]: Finished difference Result 16 states and 22 transitions. [2019-01-07 18:52:01,273 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 22 transitions. [2019-01-07 18:52:01,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:52:01,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:52:01,274 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:52:01,275 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:52:01,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2019-01-07 18:52:01,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 17 transitions. [2019-01-07 18:52:01,279 INFO L78 Accepts]: Start accepts. Automaton has 10 states and 17 transitions. Word has length 2 [2019-01-07 18:52:01,279 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:52:01,279 INFO L480 AbstractCegarLoop]: Abstraction has 10 states and 17 transitions. [2019-01-07 18:52:01,280 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-07 18:52:01,280 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 17 transitions. [2019-01-07 18:52:01,280 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:52:01,280 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:52:01,281 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:52:01,281 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:52:01,281 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:52:01,282 INFO L82 PathProgramCache]: Analyzing trace with hash 30306, now seen corresponding path program 1 times [2019-01-07 18:52:01,282 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:52:01,283 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:01,283 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:52:01,283 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:52:01,284 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:52:01,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:52:01,596 INFO L273 TraceCheckUtils]: 0: Hoare triple {86#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {88#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-07 18:52:01,601 INFO L273 TraceCheckUtils]: 1: Hoare triple {88#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {89#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:52:01,602 INFO L273 TraceCheckUtils]: 2: Hoare triple {89#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {87#false} is VALID [2019-01-07 18:52:01,602 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:01,603 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:52:01,603 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:52:01,604 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-07 18:52:01,606 INFO L207 CegarAbsIntRunner]: [0], [16], [19] [2019-01-07 18:52:01,669 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:52:01,669 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:52:05,999 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:06,000 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:06,001 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:06,077 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:06,078 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= 0 (select |c_#memory_int| v_idx_19)) (< v_idx_19 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_19)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_21) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_21) v_v_36_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_25) (= (select |c_#valid| v_idx_25) v_v_42_1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_24)) (or (< v_idx_23 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_23) v_v_38_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_26) (< v_idx_26 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_26) 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_malloc_ptr)) (or (< v_idx_27 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_27) v_v_44_1)) (= (select |c_old(#memory_int)| v_idx_17) v_v_4_1) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_18) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_18)) (or (< v_idx_20 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_20) v_v_56_1)))))} [2019-01-07 18:52:06,078 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:52:06,079 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:52:06,080 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_2_1 (select |c_old(#valid)| v_idx_35)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_37) (= (select |c_#valid| v_idx_37) 1) (< v_idx_37 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#memory_int)| v_idx_28) v_v_4_1) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_36) v_v_42_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_36)) (or (= (select |c_#valid| v_idx_38) v_v_44_1) (< v_idx_38 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_32) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_32)) (or (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_34)) (< v_idx_34 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_29) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_29)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_30) (< v_idx_30 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_30) (- 1))) (or (< v_idx_31 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_31) v_v_56_1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_33 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_33))))))} [2019-01-07 18:52:06,080 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:06,379 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:06,379 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:06,787 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (forall ((v_idx_26 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_26) (< v_idx_26 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_26) 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (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_malloc_ptr))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_19 Int)) (or (= 0 (select |#memory_int| v_idx_19)) (< v_idx_19 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_19))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:52:06,788 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:52:06,789 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:52:06,933 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_33 Int)) (or (< v_idx_33 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_33) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_33)))) (forall ((v_idx_30 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_30) (< v_idx_30 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_30) (- 1)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_37 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_37) (= (select |#valid| v_idx_37) 1) (< v_idx_37 ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:52:10,460 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:10,461 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:10,462 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:10,463 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:10,463 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_4_1 (select |c_old(#memory_int)| v_idx_39)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_43) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_43) v_v_36_1)) (or (= 0 (select |c_#memory_int| v_idx_41)) (< v_idx_41 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_41)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_2_1 (select |c_old(#valid)| v_idx_46)) (or (< v_idx_49 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_49) v_v_44_1)) (or (< v_idx_44 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_44)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_44)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_47) (= (select |c_#valid| v_idx_47) v_v_42_1)) (or (< v_idx_48 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 1 (select |c_#valid| v_idx_48))) (or (= (select |c_#memory_int| v_idx_42) v_v_56_1) (< v_idx_42 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_45) v_v_38_1) (< v_idx_45 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_40) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_40)))))} [2019-01-07 18:52:10,463 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:10,463 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:10,464 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_36_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_73_1 Int) (v_v_2_1 Int) (v_v_72_1 Int) (v_v_71_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (<= c_ULTIMATE.start_main_p1 v_idx_51) (= (select |c_#memory_int| v_idx_51) v_v_71_1)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_57)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_55)) (< v_idx_55 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_55)) (or (= v_v_42_1 (select |c_#valid| v_idx_58)) (<= c_ULTIMATE.start_malloc_ptr v_idx_58)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_59 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_59)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_59)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_54) (= v_v_36_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_54))) (or (< v_idx_56 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_56))) (= (select |c_old(#memory_int)| v_idx_50) v_v_4_1) (or (= (select |c_#valid| v_idx_60) v_v_44_1) (< v_idx_60 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_72_1 1) 0) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_72_1 (- v_v_72_1)) (- 2)) (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_72_1)) (or (< v_idx_53 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_53) v_v_73_1)))))} [2019-01-07 18:52:10,464 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:10,943 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:10,944 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:11,187 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_48 Int)) (or (< v_idx_48 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_48) (= 1 (select |#valid| v_idx_48)))) (forall ((v_idx_41 Int)) (or (= 0 (select |#memory_int| v_idx_41)) (< v_idx_41 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_41))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_44 Int)) (or (< v_idx_44 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_44)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_44))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:52:11,187 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:11,188 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:11,274 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (<= (- (- ULTIMATE.start_main_p4) (- 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))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (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_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_55))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_59 Int)) (or (< v_idx_59 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_59)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_59))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:52:15,382 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:15,382 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:15,382 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:15,383 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:15,383 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_79)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_77) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_77) (< v_idx_77 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_80) v_v_42_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_80)) (or (< v_idx_81 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_81) (= (select |c_#valid| v_idx_81) 1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_75) v_v_56_1) (< v_idx_75 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_82 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_82) v_v_44_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_73) (= (select |c_#memory_int| v_idx_73) v_v_54_1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_76) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_76)) (or (< v_idx_74 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_74) (= (select |c_#memory_int| v_idx_74) (- 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_72)) (or (< v_idx_78 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_78))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |c_#memory_int| v_idx_64) v_v_56_1) (< v_idx_64 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_62) (= v_v_54_1 (select |c_#memory_int| v_idx_62))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_65) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_65)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_66) (< v_idx_66 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_66) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_2_1 (select |c_old(#valid)| v_idx_68)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_61)) (or (< v_idx_63 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_63) (= (select |c_#memory_int| v_idx_63) 0)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_69) (= (select |c_#valid| v_idx_69) v_v_42_1)) (or (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_67)) (< v_idx_67 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_70) 1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_71) v_v_44_1) (< v_idx_71 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:52:15,384 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:52:15,384 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:52:15,384 WARN L230 ngHoareTripleChecker]: Post: {2147483640#(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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_100) v_v_38_1) (< v_idx_100 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_98) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_98)) (or (= (select |c_#memory_int| v_idx_96) (- 2)) (< v_idx_96 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_96)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_97 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_56_1 (select |c_#memory_int| v_idx_97))) (or (< v_idx_103 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_103) (= 1 (select |c_#valid| v_idx_103))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_102) (= v_v_42_1 (select |c_#valid| v_idx_102))) (= (select |c_old(#valid)| v_idx_101) v_v_2_1) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_99)) (< v_idx_99 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_99)) (or (< v_idx_104 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_104))) (= (select |c_old(#memory_int)| v_idx_94) v_v_4_1) (or (= (select |c_#memory_int| v_idx_95) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_95)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (< v_idx_89 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_89))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_85 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_85) (= (- 1) (select |c_#memory_int| v_idx_85))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= (select |c_old(#valid)| v_idx_90) v_v_2_1) (or (= (select |c_#valid| v_idx_92) 1) (< v_idx_92 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_92)) (or (= (select |c_#valid| v_idx_93) v_v_44_1) (< v_idx_93 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_84) (= (select |c_#memory_int| v_idx_84) v_v_54_1)) (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_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_83) v_v_4_1) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_87) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_87)) (or (= (select |c_#memory_int| v_idx_86) v_v_56_1) (< v_idx_86 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_91) v_v_42_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_91))))))} [2019-01-07 18:52:15,385 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:15,748 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:15,749 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:23,708 WARN L181 SmtUtils]: Spent 7.96 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-07 18:52:23,708 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_1 (select |old(#valid)| v_idx_79)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_77) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_77) (< v_idx_77 ULTIMATE.start_malloc_ptr)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_80) v_v_42_1) (<= ULTIMATE.start_malloc_ptr v_idx_80)) (or (< v_idx_81 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_81) (= (select |#valid| v_idx_81) 1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= (select |#memory_int| v_idx_75) v_v_56_1) (< v_idx_75 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_82 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_82) v_v_44_1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_73) (= (select |#memory_int| v_idx_73) v_v_54_1)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_76) v_v_36_1) (<= ULTIMATE.start_malloc_ptr v_idx_76)) (or (< v_idx_74 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_74) (= (select |#memory_int| v_idx_74) (- 1))) (= v_v_4_1 (select |old(#memory_int)| v_idx_72)) (or (< v_idx_78 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_78))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |#memory_int| v_idx_64) v_v_56_1) (< v_idx_64 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_62) (= v_v_54_1 (select |#memory_int| v_idx_62))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_65) v_v_36_1) (<= ULTIMATE.start_malloc_ptr v_idx_65)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_66) (< v_idx_66 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_66) 0)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= v_v_2_1 (select |old(#valid)| v_idx_68)) (= v_v_4_1 (select |old(#memory_int)| v_idx_61)) (or (< v_idx_63 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_63) (= (select |#memory_int| v_idx_63) 0)) (or (<= ULTIMATE.start_malloc_ptr v_idx_69) (= (select |#valid| v_idx_69) v_v_42_1)) (or (= v_v_38_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_67)) (< v_idx_67 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_70) (< v_idx_70 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_70) 1)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_71) v_v_44_1) (< v_idx_71 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:52:23,708 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:52:23,709 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:52:31,757 WARN L181 SmtUtils]: Spent 8.05 s on a formula simplification that was a NOOP. DAG size: 143 [2019-01-07 18:52:31,757 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_100) v_v_38_1) (< v_idx_100 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_98) v_v_36_1) (<= ULTIMATE.start_malloc_ptr v_idx_98)) (or (= (select |#memory_int| v_idx_96) (- 2)) (< v_idx_96 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_96)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_97 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_56_1 (select |#memory_int| v_idx_97))) (or (< v_idx_103 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_103) (= 1 (select |#valid| v_idx_103))) (or (<= ULTIMATE.start_malloc_ptr v_idx_102) (= v_v_42_1 (select |#valid| v_idx_102))) (= (select |old(#valid)| v_idx_101) v_v_2_1) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_99)) (< v_idx_99 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_99)) (or (< v_idx_104 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |#valid| v_idx_104))) (= (select |old(#memory_int)| v_idx_94) v_v_4_1) (or (= (select |#memory_int| v_idx_95) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_95)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (< v_idx_89 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_89))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_85 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_85) (= (- 1) (select |#memory_int| v_idx_85))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= (select |old(#valid)| v_idx_90) v_v_2_1) (or (= (select |#valid| v_idx_92) 1) (< v_idx_92 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_92)) (or (= (select |#valid| v_idx_93) v_v_44_1) (< v_idx_93 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_84) (= (select |#memory_int| v_idx_84) v_v_54_1)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_88)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_88) (< v_idx_88 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_83) v_v_4_1) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_87) v_v_36_1) (<= ULTIMATE.start_malloc_ptr v_idx_87)) (or (= (select |#memory_int| v_idx_86) v_v_56_1) (< v_idx_86 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#valid| v_idx_91) v_v_42_1) (<= ULTIMATE.start_malloc_ptr v_idx_91))))))} [2019-01-07 18:52:48,392 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:52:48,393 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:52:48,393 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:52:48,393 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:52:48,394 WARN L224 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (< v_idx_115 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_115))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_114 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_114)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_114)) (or (< v_idx_107 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_107) (= (select |c_#memory_int| v_idx_107) 0)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_109) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_109) v_v_36_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_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_108) v_v_56_1) (< v_idx_108 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_113) (= v_v_42_1 (select |c_#valid| v_idx_113))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_111) v_v_38_1) (< v_idx_111 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_105)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_112)) (or (= (select |c_#memory_int| v_idx_106) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_106))))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= (select |c_old(#valid)| v_idx_123) v_v_2_1) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_117) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_117)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_121)) (< v_idx_121 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_121)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_120) (= v_v_36_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_120))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_124) (= v_v_42_1 (select |c_#valid| v_idx_124))) (or (= (select |c_#memory_int| v_idx_119) v_v_56_1) (< v_idx_119 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_122 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_122) v_v_38_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_118) (= (select |c_#memory_int| v_idx_118) (- 1)) (< v_idx_118 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_116)) (or (< v_idx_125 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_125) (= 1 (select |c_#valid| v_idx_125))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= v_v_44_1 (select |c_#valid| v_idx_126)) (< v_idx_126 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:52:48,394 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:48,394 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:48,394 WARN L230 ngHoareTripleChecker]: Post: {2147483638#(forall ((v_idx_137 Int) (v_idx_127 Int) (v_idx_135 Int) (v_idx_136 Int) (v_idx_128 Int) (v_idx_129 Int) (v_idx_130 Int) (v_idx_133 Int) (v_idx_134 Int) (v_idx_131 Int) (v_idx_132 Int)) (exists ((v_v_36_1 Int) (v_v_388_1 Int) (v_v_44_1 Int) (v_v_389_1 Int) (v_v_42_1 Int) (v_v_2_1 Int) (v_v_390_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= 1 (select |c_#valid| v_idx_136)) (< v_idx_136 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_136)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_131) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_131)) (or (< v_idx_132 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_132)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_132)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_389_1 (- v_v_389_1)) (- 2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_134) v_v_2_1) (or (<= c_ULTIMATE.start_main_p1 v_idx_128) (= (select |c_#memory_int| v_idx_128) v_v_388_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_44_1 (select |c_#valid| v_idx_137)) (< v_idx_137 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_42_1 (select |c_#valid| v_idx_135)) (<= c_ULTIMATE.start_malloc_ptr v_idx_135)) (or (= (select |c_#memory_int| v_idx_130) v_v_390_1) (< v_idx_130 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_127)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_133) v_v_38_1) (< v_idx_133 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_389_1 1) 0) (or (= v_v_389_1 (select |c_#memory_int| v_idx_129)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_129) (< v_idx_129 c_ULTIMATE.start_main_p1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:52:48,395 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:52:48,849 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:52:48,849 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:52:56,827 WARN L181 SmtUtils]: Spent 7.98 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-07 18:52:56,827 WARN L270 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (< v_idx_115 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |#valid| v_idx_115))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_114 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_114)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_114)) (or (< v_idx_107 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_107) (= (select |#memory_int| v_idx_107) 0)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_109) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_109) v_v_36_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_malloc_ptr)) (or (= (select |#memory_int| v_idx_108) v_v_56_1) (< v_idx_108 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_113) (= v_v_42_1 (select |#valid| v_idx_113))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_111) v_v_38_1) (< v_idx_111 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_1 (select |old(#memory_int)| v_idx_105)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |old(#valid)| v_idx_112)) (or (= (select |#memory_int| v_idx_106) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_106))))) (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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= (select |old(#valid)| v_idx_123) v_v_2_1) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_117) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_117)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_121)) (< v_idx_121 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_121)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_120) (= v_v_36_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_120))) (or (<= ULTIMATE.start_malloc_ptr v_idx_124) (= v_v_42_1 (select |#valid| v_idx_124))) (or (= (select |#memory_int| v_idx_119) v_v_56_1) (< v_idx_119 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_122 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_122) v_v_38_1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_118) (= (select |#memory_int| v_idx_118) (- 1)) (< v_idx_118 ULTIMATE.start_malloc_ptr)) (= v_v_4_1 (select |old(#memory_int)| v_idx_116)) (or (< v_idx_125 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_125) (= 1 (select |#valid| v_idx_125))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= v_v_44_1 (select |#valid| v_idx_126)) (< v_idx_126 (+ ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 18:52:56,828 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:52:56,828 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:52:57,032 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (forall ((v_idx_129 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_129) (<= (+ (select |#memory_int| v_idx_129) 1) 0) (< v_idx_129 ULTIMATE.start_main_p1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_136 Int)) (or (= 1 (select |#valid| v_idx_136)) (< v_idx_136 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_136))) (forall ((v_prenex_2 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_2)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_132 Int)) (or (< v_idx_132 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_132)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_132))))} [2019-01-07 18:53:00,797 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:00,798 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:00,798 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:00,798 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:00,798 WARN L224 ngHoareTripleChecker]: Pre: {2147483637#(or (forall ((v_idx_148 Int) (v_idx_138 Int) (v_idx_146 Int) (v_idx_147 Int) (v_idx_139 Int) (v_idx_140 Int) (v_idx_141 Int) (v_idx_144 Int) (v_idx_145 Int) (v_idx_142 Int) (v_idx_143 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= v_v_42_1 (select |c_#valid| v_idx_146)) (<= c_ULTIMATE.start_malloc_ptr v_idx_146)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_44_1 (select |c_#valid| v_idx_148)) (< v_idx_148 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_36_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_142)) (<= c_ULTIMATE.start_malloc_ptr v_idx_142)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_143) (< v_idx_143 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) 0)) (= (select |c_old(#valid)| v_idx_145) v_v_2_1) (or (= (select |c_#memory_int| v_idx_139) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_139)) (or (< v_idx_144 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144) v_v_38_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_140) (< v_idx_140 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_140))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_147) (< v_idx_147 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_147))) (= (select |c_old(#memory_int)| v_idx_138) v_v_4_1) (or (< v_idx_141 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_141) v_v_56_1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_159 Int) (v_idx_149 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_151 Int) (v_idx_152 Int) (v_idx_150 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_153 Int) (v_idx_154 Int)) (exists ((v_v_386_1 Int) (v_v_385_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_151 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_151) v_v_379_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_383_1 (select |c_#valid| v_idx_155)) (< v_idx_155 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_384_1 (select |c_#memory_int| v_idx_156)) (<= c_ULTIMATE.start_malloc_ptr v_idx_156)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_150)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_150) (< v_idx_150 c_ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_385_1 2)) (<= (+ v_v_385_1 1) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_154) (= 1 (select |c_#valid| v_idx_154)) (< v_idx_154 c_ULTIMATE.start_malloc_ptr)) (= v_v_380_1 (select |c_old(#valid)| v_idx_152)) (or (= v_v_381_1 (select |c_#valid| v_idx_153)) (<= c_ULTIMATE.start_malloc_ptr v_idx_153)) (or (< v_idx_158 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_158) v_v_386_1)) (= v_v_387_1 (select |c_old(#memory_int)| v_idx_159)) (<= (- (- v_v_385_1) v_v_385_1) 4) (<= (- v_v_385_1 (- v_v_385_1)) (- 2)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_149) (= v_v_377_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_149))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_157) (< v_idx_157 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_157) v_v_385_1))))))} [2019-01-07 18:53:00,799 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:53:00,799 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:53:00,799 WARN L230 ngHoareTripleChecker]: Post: {2147483636#(or (forall ((v_idx_168 Int) (v_idx_169 Int) (v_idx_170 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_166 Int) (v_idx_167 Int) (v_idx_164 Int) (v_idx_165 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_4_1 (select |c_old(#memory_int)| v_idx_160)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) v_v_38_1) (< v_idx_166 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_163 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_163) v_v_56_1)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_44_1 (select |c_#valid| v_idx_170)) (< v_idx_170 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_167)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_42_1 (select |c_#valid| v_idx_168)) (<= c_ULTIMATE.start_malloc_ptr v_idx_168)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_164) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_164) v_v_36_1)) (or (= (select |c_#memory_int| v_idx_161) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_161)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_162 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_162) (= (select |c_#memory_int| v_idx_162) (- 1))) (or (< v_idx_169 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_169)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_169)) (or (< v_idx_165 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_165)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_173 Int) (v_idx_174 Int) (v_idx_171 Int) (v_idx_172 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_175 Int) (v_idx_176 Int)) (exists ((v_v_386_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_431_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (= (select |c_old(#memory_int)| v_idx_171) v_v_387_1) (<= (+ v_v_431_1 2) 0) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 0 (+ v_v_431_1 3)) (<= (- (- v_v_431_1) v_v_431_1) 6) (or (< v_idx_181 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_383_1 (select |c_#valid| v_idx_181))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_175) (= v_v_377_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_175))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 1 (select |c_#valid| v_idx_180)) (< v_idx_180 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_180)) (<= (- v_v_431_1 (- v_v_431_1)) (- 4)) (or (< v_idx_177 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) v_v_379_1)) (or (= v_v_381_1 (select |c_#valid| v_idx_179)) (<= c_ULTIMATE.start_malloc_ptr v_idx_179)) (or (= v_v_431_1 (select |c_#memory_int| v_idx_173)) (< v_idx_173 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_173)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_176) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176)) (< v_idx_176 c_ULTIMATE.start_malloc_ptr)) (= v_v_380_1 (select |c_old(#valid)| v_idx_178)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_172) (= v_v_384_1 (select |c_#memory_int| v_idx_172))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_174 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_174) v_v_386_1))))))} [2019-01-07 18:53:00,799 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:01,220 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:01,220 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:53:34,570 WARN L181 SmtUtils]: Spent 33.35 s on a formula simplification that was a NOOP. DAG size: 162 [2019-01-07 18:53:34,571 WARN L270 ngHoareTripleChecker]: Pre: {2147483637#(or (forall ((v_idx_148 Int) (v_idx_138 Int) (v_idx_146 Int) (v_idx_147 Int) (v_idx_139 Int) (v_idx_140 Int) (v_idx_141 Int) (v_idx_144 Int) (v_idx_145 Int) (v_idx_142 Int) (v_idx_143 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= v_v_42_1 (select |#valid| v_idx_146)) (<= ULTIMATE.start_malloc_ptr v_idx_146)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_44_1 (select |#valid| v_idx_148)) (< v_idx_148 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_36_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_142)) (<= ULTIMATE.start_malloc_ptr v_idx_142)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_143) (< v_idx_143 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_143) 0)) (= (select |old(#valid)| v_idx_145) v_v_2_1) (or (= (select |#memory_int| v_idx_139) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_139)) (or (< v_idx_144 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_144) v_v_38_1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_140) (< v_idx_140 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_140))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_147) (< v_idx_147 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_147))) (= (select |old(#memory_int)| v_idx_138) v_v_4_1) (or (< v_idx_141 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_141) v_v_56_1)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_159 Int) (v_idx_149 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_151 Int) (v_idx_152 Int) (v_idx_150 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_153 Int) (v_idx_154 Int)) (exists ((v_v_386_1 Int) (v_v_385_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_151 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_151) v_v_379_1)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_383_1 (select |#valid| v_idx_155)) (< v_idx_155 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_384_1 (select |#memory_int| v_idx_156)) (<= ULTIMATE.start_malloc_ptr v_idx_156)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_150)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_150) (< v_idx_150 ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_385_1 2)) (<= (+ v_v_385_1 1) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_154) (= 1 (select |#valid| v_idx_154)) (< v_idx_154 ULTIMATE.start_malloc_ptr)) (= v_v_380_1 (select |old(#valid)| v_idx_152)) (or (= v_v_381_1 (select |#valid| v_idx_153)) (<= ULTIMATE.start_malloc_ptr v_idx_153)) (or (< v_idx_158 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_158) v_v_386_1)) (= v_v_387_1 (select |old(#memory_int)| v_idx_159)) (<= (- (- v_v_385_1) v_v_385_1) 4) (<= (- v_v_385_1 (- v_v_385_1)) (- 2)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_149) (= v_v_377_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_149))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_157) (< v_idx_157 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_157) v_v_385_1))))))} [2019-01-07 18:53:34,571 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:53:34,571 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:53:42,613 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 164 [2019-01-07 18:53:42,613 WARN L276 ngHoareTripleChecker]: Post: {2147483636#(or (forall ((v_idx_168 Int) (v_idx_169 Int) (v_idx_170 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_166 Int) (v_idx_167 Int) (v_idx_164 Int) (v_idx_165 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_4_1 (select |old(#memory_int)| v_idx_160)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) v_v_38_1) (< v_idx_166 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_163 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_163) v_v_56_1)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_44_1 (select |#valid| v_idx_170)) (< v_idx_170 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_1 (select |old(#valid)| v_idx_167)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_42_1 (select |#valid| v_idx_168)) (<= ULTIMATE.start_malloc_ptr v_idx_168)) (or (<= ULTIMATE.start_malloc_ptr v_idx_164) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_164) v_v_36_1)) (or (= (select |#memory_int| v_idx_161) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_161)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_162 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_162) (= (select |#memory_int| v_idx_162) (- 1))) (or (< v_idx_169 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_169)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_169)) (or (< v_idx_165 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_165) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_165)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_173 Int) (v_idx_174 Int) (v_idx_171 Int) (v_idx_172 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_175 Int) (v_idx_176 Int)) (exists ((v_v_386_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_431_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (= (select |old(#memory_int)| v_idx_171) v_v_387_1) (<= (+ v_v_431_1 2) 0) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= 0 (+ v_v_431_1 3)) (<= (- (- v_v_431_1) v_v_431_1) 6) (or (< v_idx_181 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_383_1 (select |#valid| v_idx_181))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_175) (= v_v_377_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_175))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= 1 (select |#valid| v_idx_180)) (< v_idx_180 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_180)) (<= (- v_v_431_1 (- v_v_431_1)) (- 4)) (or (< v_idx_177 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_177) v_v_379_1)) (or (= v_v_381_1 (select |#valid| v_idx_179)) (<= ULTIMATE.start_malloc_ptr v_idx_179)) (or (= v_v_431_1 (select |#memory_int| v_idx_173)) (< v_idx_173 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_173)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_176) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_176)) (< v_idx_176 ULTIMATE.start_malloc_ptr)) (= v_v_380_1 (select |old(#valid)| v_idx_178)) (or (<= ULTIMATE.start_malloc_ptr v_idx_172) (= v_v_384_1 (select |#memory_int| v_idx_172))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_174 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_174) v_v_386_1))))))} [2019-01-07 18:53:57,028 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:53:57,028 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:53:57,029 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:53:57,029 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:53:57,029 WARN L224 ngHoareTripleChecker]: Pre: {2147483635#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_186 Int) (v_idx_187 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_4_1 (select |c_old(#memory_int)| v_idx_182)) (= v_v_2_1 (select |c_old(#valid)| v_idx_189)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_191) (< v_idx_191 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_191))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_184) (= (select |c_#memory_int| v_idx_184) 0) (< v_idx_184 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_186) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_186) v_v_36_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_187) (< v_idx_187 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_183) (= (select |c_#memory_int| v_idx_183) v_v_54_1)) (or (= (select |c_#memory_int| v_idx_185) v_v_56_1) (< v_idx_185 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_42_1 (select |c_#valid| v_idx_190)) (<= c_ULTIMATE.start_malloc_ptr v_idx_190)) (or (< v_idx_188 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) v_v_38_1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= v_v_44_1 (select |c_#valid| v_idx_192)) (< v_idx_192 (+ c_ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_203 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_197 Int) (v_idx_198 Int)) (exists ((v_v_386_1 Int) (v_v_385_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (or (< v_idx_202 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_386_1 (select |c_#memory_int| v_idx_202))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_377_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_193)) (<= c_ULTIMATE.start_malloc_ptr v_idx_193)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_194) (< v_idx_194 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_194))) (or (= v_v_383_1 (select |c_#valid| v_idx_199)) (< v_idx_199 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= 0 (+ v_v_385_1 2)) (<= (+ v_v_385_1 1) 0) (or (< v_idx_195 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_379_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_195))) (or (= v_v_381_1 (select |c_#valid| v_idx_197)) (<= c_ULTIMATE.start_malloc_ptr v_idx_197)) (= v_v_380_1 (select |c_old(#valid)| v_idx_196)) (or (< v_idx_198 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_198)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_198)) (<= (- (- v_v_385_1) v_v_385_1) 4) (or (= v_v_385_1 (select |c_#memory_int| v_idx_201)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_201) (< v_idx_201 c_ULTIMATE.start_malloc_ptr)) (<= (- v_v_385_1 (- v_v_385_1)) (- 2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_200) (= v_v_384_1 (select |c_#memory_int| v_idx_200))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_203) v_v_387_1)))))} [2019-01-07 18:53:57,029 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:53:57,029 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:53:57,030 WARN L230 ngHoareTripleChecker]: Post: {2147483634#(forall ((v_idx_214 Int) (v_idx_204 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_36_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_2_1 Int) (v_v_786_1 Int) (v_v_4_1 Int) (v_v_785_1 Int) (v_v_38_1 Int) (v_v_787_1 Int)) (and (or (< v_idx_214 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_214))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_210 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) v_v_38_1)) (<= (+ v_v_786_1 1) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_205) (= v_v_785_1 (select |c_#memory_int| v_idx_205))) (or (< v_idx_213 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_213) (= 1 (select |c_#valid| v_idx_213))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_204)) (or (= v_v_786_1 (select |c_#memory_int| v_idx_206)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_206) (< v_idx_206 c_ULTIMATE.start_main_p1)) (or (< v_idx_207 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_207) v_v_787_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_2_1 (select |c_old(#valid)| v_idx_211)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_208) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_208)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_212) (= v_v_42_1 (select |c_#valid| v_idx_212))) (<= (- v_v_786_1 (- v_v_786_1)) (- 2)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_209) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209)) (< v_idx_209 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:53:57,030 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:53:57,809 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:53:57,809 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:54:34,517 WARN L181 SmtUtils]: Spent 36.71 s on a formula simplification that was a NOOP. DAG size: 162 [2019-01-07 18:54:34,518 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_186 Int) (v_idx_187 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (= v_v_4_1 (select |old(#memory_int)| v_idx_182)) (= v_v_2_1 (select |old(#valid)| v_idx_189)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_191) (< v_idx_191 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_191))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_184) (= (select |#memory_int| v_idx_184) 0) (< v_idx_184 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_186) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_186) v_v_36_1)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_187)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_187) (< v_idx_187 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_183) (= (select |#memory_int| v_idx_183) v_v_54_1)) (or (= (select |#memory_int| v_idx_185) v_v_56_1) (< v_idx_185 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_42_1 (select |#valid| v_idx_190)) (<= ULTIMATE.start_malloc_ptr v_idx_190)) (or (< v_idx_188 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) v_v_38_1)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= v_v_44_1 (select |#valid| v_idx_192)) (< v_idx_192 (+ ULTIMATE.start_malloc_ptr 1)))))) (forall ((v_idx_203 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_197 Int) (v_idx_198 Int)) (exists ((v_v_386_1 Int) (v_v_385_1 Int) (v_v_377_1 Int) (v_v_387_1 Int) (v_v_379_1 Int) (v_v_380_1 Int) (v_v_381_1 Int) (v_v_384_1 Int) (v_v_383_1 Int)) (and (or (< v_idx_202 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_386_1 (select |#memory_int| v_idx_202))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_377_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_193)) (<= ULTIMATE.start_malloc_ptr v_idx_193)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_194) (< v_idx_194 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_194))) (or (= v_v_383_1 (select |#valid| v_idx_199)) (< v_idx_199 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= 0 (+ v_v_385_1 2)) (<= (+ v_v_385_1 1) 0) (or (< v_idx_195 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_379_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_195))) (or (= v_v_381_1 (select |#valid| v_idx_197)) (<= ULTIMATE.start_malloc_ptr v_idx_197)) (= v_v_380_1 (select |old(#valid)| v_idx_196)) (or (< v_idx_198 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_198)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_198)) (<= (- (- v_v_385_1) v_v_385_1) 4) (or (= v_v_385_1 (select |#memory_int| v_idx_201)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_201) (< v_idx_201 ULTIMATE.start_malloc_ptr)) (<= (- v_v_385_1 (- v_v_385_1)) (- 2)) (or (<= ULTIMATE.start_malloc_ptr v_idx_200) (= v_v_384_1 (select |#memory_int| v_idx_200))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= (select |old(#memory_int)| v_idx_203) v_v_387_1)))))} [2019-01-07 18:54:34,518 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:54:34,518 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:54:34,749 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (forall ((v_prenex_3 Int)) (or (<= (+ (select |#memory_int| v_prenex_3) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1))) (forall ((v_idx_213 Int)) (or (< v_idx_213 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_213) (= 1 (select |#valid| v_idx_213)))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_209 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_209) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_209)) (< v_idx_209 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_206 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_206) (<= (+ (* 2 (select |#memory_int| v_idx_206)) 2) 0) (< v_idx_206 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:54:37,911 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:54:37,911 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:54:37,912 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:54:37,912 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:54:37,912 WARN L224 ngHoareTripleChecker]: Pre: {2147483633#(or (forall ((v_idx_236 Int) (v_idx_226 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_230 Int) (v_idx_231 Int)) (exists ((v_v_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_774_1 Int) (v_v_777_1 Int) (v_v_776_1 Int)) (and (or (= v_v_776_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_228)) (< v_idx_228 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_232 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_780_1 (select |c_#valid| v_idx_232))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_782_1 (- v_v_782_1)) 0) (or (= v_v_783_1 (select |c_#memory_int| v_idx_235)) (< v_idx_235 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_230) (= v_v_778_1 (select |c_#valid| v_idx_230))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= v_v_782_1 0) (= v_v_777_1 (select |c_old(#valid)| v_idx_229)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_234) (= v_v_782_1 (select |c_#memory_int| v_idx_234)) (< v_idx_234 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_233) (= v_v_781_1 (select |c_#memory_int| v_idx_233))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_226) (= v_v_774_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_226))) (<= (- (- v_v_782_1) v_v_782_1) 6) (or (= 1 (select |c_#valid| v_idx_231)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_231) (< v_idx_231 c_ULTIMATE.start_malloc_ptr)) (= v_v_784_1 (select |c_old(#memory_int)| v_idx_236)) (<= 0 (+ v_v_782_1 3)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_227) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_227)) (< v_idx_227 c_ULTIMATE.start_malloc_ptr))))) (forall ((v_idx_225 Int) (v_idx_215 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_220 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_216) (= (select |c_#memory_int| v_idx_216) v_v_54_1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_221) v_v_38_1) (< v_idx_221 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_42_1 (select |c_#valid| v_idx_223)) (<= c_ULTIMATE.start_malloc_ptr v_idx_223)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_219) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_219)) (or (< v_idx_225 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_225))) (= v_v_2_1 (select |c_old(#valid)| v_idx_222)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_224) (= 1 (select |c_#valid| v_idx_224)) (< v_idx_224 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_220 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_220) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_217) (= (- 1) (select |c_#memory_int| v_idx_217)) (< v_idx_217 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#memory_int)| v_idx_215) v_v_4_1) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_218 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_218) v_v_56_1))))))} [2019-01-07 18:54:37,912 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:54:37,912 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:54:37,913 WARN L230 ngHoareTripleChecker]: Post: {2147483632#(forall ((v_idx_247 Int) (v_idx_237 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_241 Int) (v_idx_242 Int)) (exists ((v_v_778_1 Int) (v_v_828_1 Int) (v_v_780_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_774_1 Int) (v_v_777_1 Int) (v_v_776_1 Int)) (and (or (= v_v_781_1 (select |c_#memory_int| v_idx_238)) (<= c_ULTIMATE.start_malloc_ptr v_idx_238)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_237) v_v_784_1) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_777_1 (select |c_old(#valid)| v_idx_244)) (<= 0 (+ v_v_828_1 4)) (or (= v_v_776_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_243)) (< v_idx_243 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_239 c_ULTIMATE.start_malloc_ptr) (= v_v_828_1 (select |c_#memory_int| v_idx_239)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_239)) (<= (- (- v_v_828_1) v_v_828_1) 8) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_241) (= v_v_774_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_241))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_245) (= v_v_778_1 (select |c_#valid| v_idx_245))) (or (< v_idx_240 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_783_1 (select |c_#memory_int| v_idx_240))) (or (= 1 (select |c_#valid| v_idx_246)) (< v_idx_246 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_246)) (or (= v_v_780_1 (select |c_#valid| v_idx_247)) (< v_idx_247 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (+ v_v_828_1 1) 0) (<= (- v_v_828_1 (- v_v_828_1)) (- 2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_242) (< v_idx_242 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_242) 0)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:54:37,913 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:54:38,326 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:54:38,327 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:15,670 WARN L181 SmtUtils]: Spent 37.34 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 18:55:15,670 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(or (forall ((v_idx_236 Int) (v_idx_226 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_230 Int) (v_idx_231 Int)) (exists ((v_v_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_774_1 Int) (v_v_777_1 Int) (v_v_776_1 Int)) (and (or (= v_v_776_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_228)) (< v_idx_228 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_232 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_780_1 (select |#valid| v_idx_232))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_782_1 (- v_v_782_1)) 0) (or (= v_v_783_1 (select |#memory_int| v_idx_235)) (< v_idx_235 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_230) (= v_v_778_1 (select |#valid| v_idx_230))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= v_v_782_1 0) (= v_v_777_1 (select |old(#valid)| v_idx_229)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_234) (= v_v_782_1 (select |#memory_int| v_idx_234)) (< v_idx_234 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_233) (= v_v_781_1 (select |#memory_int| v_idx_233))) (or (<= ULTIMATE.start_malloc_ptr v_idx_226) (= v_v_774_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_226))) (<= (- (- v_v_782_1) v_v_782_1) 6) (or (= 1 (select |#valid| v_idx_231)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_231) (< v_idx_231 ULTIMATE.start_malloc_ptr)) (= v_v_784_1 (select |old(#memory_int)| v_idx_236)) (<= 0 (+ v_v_782_1 3)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_227) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_227)) (< v_idx_227 ULTIMATE.start_malloc_ptr))))) (forall ((v_idx_225 Int) (v_idx_215 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_220 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_216) (= (select |#memory_int| v_idx_216) v_v_54_1)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_221) v_v_38_1) (< v_idx_221 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= v_v_42_1 (select |#valid| v_idx_223)) (<= ULTIMATE.start_malloc_ptr v_idx_223)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_219) v_v_36_1) (<= ULTIMATE.start_malloc_ptr v_idx_219)) (or (< v_idx_225 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |#valid| v_idx_225))) (= v_v_2_1 (select |old(#valid)| v_idx_222)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_224) (= 1 (select |#valid| v_idx_224)) (< v_idx_224 ULTIMATE.start_malloc_ptr)) (or (< v_idx_220 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_220) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_217) (= (- 1) (select |#memory_int| v_idx_217)) (< v_idx_217 ULTIMATE.start_malloc_ptr)) (= (select |old(#memory_int)| v_idx_215) v_v_4_1) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_218 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_218) v_v_56_1))))))} [2019-01-07 18:55:15,670 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:55:15,671 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:55:16,018 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (forall ((v_idx_239 Int)) (or (< v_idx_239 ULTIMATE.start_malloc_ptr) (<= 0 (+ (* 2 (select |#memory_int| v_idx_239)) 8)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_239))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_6 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_6) (<= (+ (select |#memory_int| v_prenex_6) 1) 0) (< v_prenex_6 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_246 Int)) (or (= 1 (select |#valid| v_idx_246)) (< v_idx_246 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_246))) (forall ((v_idx_242 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_242) (< v_idx_242 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_242) 0))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_5 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_5)) 2) 0) (< v_prenex_5 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_5))) (forall ((v_prenex_4 Int)) (or (< v_prenex_4 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_4) (<= 0 (+ (select |#memory_int| v_prenex_4) 4)))))} [2019-01-07 18:55:32,192 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:32,192 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:32,193 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:32,193 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:32,193 WARN L224 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_269 Int) (v_idx_259 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_261 Int) (v_idx_262 Int) (v_idx_260 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_263 Int) (v_idx_264 Int)) (exists ((v_v_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_774_1 Int) (v_v_777_1 Int) (v_v_776_1 Int)) (and (or (< v_idx_260 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_260) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_260))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_782_1 (- v_v_782_1)) 0) (or (< v_idx_261 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_261) v_v_776_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_266) (= v_v_781_1 (select |c_#memory_int| v_idx_266))) (or (< v_idx_268 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_783_1 (select |c_#memory_int| v_idx_268))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_259) v_v_774_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_259)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= v_v_782_1 0) (or (< v_idx_264 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_264)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_264)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_263) (= v_v_778_1 (select |c_#valid| v_idx_263))) (<= (- (- v_v_782_1) v_v_782_1) 6) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_267) (< v_idx_267 c_ULTIMATE.start_malloc_ptr) (= v_v_782_1 (select |c_#memory_int| v_idx_267))) (or (= v_v_780_1 (select |c_#valid| v_idx_265)) (< v_idx_265 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= 0 (+ v_v_782_1 3)) (= v_v_777_1 (select |c_old(#valid)| v_idx_262)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_784_1 (select |c_old(#memory_int)| v_idx_269))))) (forall ((v_idx_258 Int) (v_idx_248 Int) (v_idx_256 Int) (v_idx_257 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_254 Int) (v_idx_255 Int) (v_idx_252 Int) (v_idx_253 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_253 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_253) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_253))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_252) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_252) v_v_36_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_254 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_254))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_248)) (or (< v_idx_250 c_ULTIMATE.start_malloc_ptr) (= (- 1) (select |c_#memory_int| v_idx_250)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_250)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_44_1 (select |c_#valid| v_idx_258)) (< v_idx_258 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_249) (= (select |c_#memory_int| v_idx_249) v_v_54_1)) (or (= (select |c_#memory_int| v_idx_251) v_v_56_1) (< v_idx_251 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_257) (< v_idx_257 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_257))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_256) (= v_v_42_1 (select |c_#valid| v_idx_256))) (= (select |c_old(#valid)| v_idx_255) v_v_2_1)))))} [2019-01-07 18:55:32,193 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:32,193 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:32,194 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(forall ((v_idx_278 Int) (v_idx_279 Int) (v_idx_280 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_36_1 Int) (v_v_44_1 Int) (v_v_1150_1 Int) (v_v_1149_1 Int) (v_v_42_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_1151_1 Int) (v_v_38_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_44_1 (select |c_#valid| v_idx_280)) (< v_idx_280 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_272) v_v_1150_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_272) (< v_idx_272 c_ULTIMATE.start_main_p1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_276) v_v_38_1) (< v_idx_276 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= (+ v_v_1150_1 1) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_274) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_274) v_v_36_1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_275) (< v_idx_275 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_275) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_main_p1 v_idx_271) (= (select |c_#memory_int| v_idx_271) v_v_1149_1)) (or (< v_idx_279 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_279)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_279)) (= (select |c_old(#memory_int)| v_idx_270) v_v_4_1) (<= (- v_v_1150_1 (- v_v_1150_1)) (- 2)) (= v_v_2_1 (select |c_old(#valid)| v_idx_277)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_273 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_273) v_v_1151_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_278) (= v_v_42_1 (select |c_#valid| v_idx_278))))))} [2019-01-07 18:55:32,194 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:32,378 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:32,378 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:55:40,215 WARN L181 SmtUtils]: Spent 7.84 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 18:55:40,215 WARN L270 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_269 Int) (v_idx_259 Int) (v_idx_267 Int) (v_idx_268 Int) (v_idx_261 Int) (v_idx_262 Int) (v_idx_260 Int) (v_idx_265 Int) (v_idx_266 Int) (v_idx_263 Int) (v_idx_264 Int)) (exists ((v_v_778_1 Int) (v_v_780_1 Int) (v_v_782_1 Int) (v_v_781_1 Int) (v_v_784_1 Int) (v_v_783_1 Int) (v_v_774_1 Int) (v_v_777_1 Int) (v_v_776_1 Int)) (and (or (< v_idx_260 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_260) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_260))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_782_1 (- v_v_782_1)) 0) (or (< v_idx_261 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_261) v_v_776_1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_266) (= v_v_781_1 (select |#memory_int| v_idx_266))) (or (< v_idx_268 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_783_1 (select |#memory_int| v_idx_268))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_259) v_v_774_1) (<= ULTIMATE.start_malloc_ptr v_idx_259)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= v_v_782_1 0) (or (< v_idx_264 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_264)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_264)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_263) (= v_v_778_1 (select |#valid| v_idx_263))) (<= (- (- v_v_782_1) v_v_782_1) 6) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_267) (< v_idx_267 ULTIMATE.start_malloc_ptr) (= v_v_782_1 (select |#memory_int| v_idx_267))) (or (= v_v_780_1 (select |#valid| v_idx_265)) (< v_idx_265 (+ ULTIMATE.start_malloc_ptr 1))) (<= 0 (+ v_v_782_1 3)) (= v_v_777_1 (select |old(#valid)| v_idx_262)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= v_v_784_1 (select |old(#memory_int)| v_idx_269))))) (forall ((v_idx_258 Int) (v_idx_248 Int) (v_idx_256 Int) (v_idx_257 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_254 Int) (v_idx_255 Int) (v_idx_252 Int) (v_idx_253 Int)) (exists ((v_v_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_253 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_253) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_253))) (or (<= ULTIMATE.start_malloc_ptr v_idx_252) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_252) v_v_36_1)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_254 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_38_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_254))) (= v_v_4_1 (select |old(#memory_int)| v_idx_248)) (or (< v_idx_250 ULTIMATE.start_malloc_ptr) (= (- 1) (select |#memory_int| v_idx_250)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_250)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= v_v_44_1 (select |#valid| v_idx_258)) (< v_idx_258 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_249) (= (select |#memory_int| v_idx_249) v_v_54_1)) (or (= (select |#memory_int| v_idx_251) v_v_56_1) (< v_idx_251 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_257) (< v_idx_257 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_257))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_256) (= v_v_42_1 (select |#valid| v_idx_256))) (= (select |old(#valid)| v_idx_255) v_v_2_1)))))} [2019-01-07 18:55:40,216 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:55:40,216 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:55:40,433 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_272 Int)) (or (<= (+ (select |#memory_int| v_idx_272) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_272) (< v_idx_272 ULTIMATE.start_main_p1))) (forall ((v_prenex_7 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_7)) 2) 0) (< v_prenex_7 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_7))) (forall ((v_idx_279 Int)) (or (< v_idx_279 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_279)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_279))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_275 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_275) (< v_idx_275 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_275) 0))))} [2019-01-07 18:55:43,495 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:55:43,495 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:55:43,496 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:55:43,496 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:55:43,496 WARN L224 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_291 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |c_#memory_int| v_idx_282) v_v_54_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_282)) (or (< v_idx_286 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_286) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_286))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_289) (= v_v_42_1 (select |c_#valid| v_idx_289))) (= (select |c_old(#memory_int)| v_idx_281) v_v_4_1) (or (< v_idx_291 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_291))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_285) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_285) v_v_36_1)) (or (= 1 (select |c_#valid| v_idx_290)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_290) (< v_idx_290 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_287) v_v_38_1) (< v_idx_287 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_283) (= (- 1) (select |c_#memory_int| v_idx_283)) (< v_idx_283 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_284 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_284) v_v_56_1)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_288) v_v_2_1)))) (forall ((v_idx_302 Int) (v_idx_300 Int) (v_idx_301 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_889_1 Int) (v_v_888_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_894_1 Int) (v_v_895_1 Int) (v_v_887_1 Int) (v_v_885_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_885_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= c_ULTIMATE.start_malloc_ptr v_idx_292)) (= v_v_895_1 (select |c_old(#memory_int)| v_idx_302)) (or (= v_v_891_1 (select |c_#valid| v_idx_298)) (< v_idx_298 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_887_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_294)) (< v_idx_294 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |c_#valid| v_idx_297)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_297) (< v_idx_297 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_299) (= v_v_892_1 (select |c_#memory_int| v_idx_299))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= v_v_893_1 0) (or (= (select |c_#memory_int| v_idx_301) v_v_894_1) (< v_idx_301 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_293 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_293) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_293)) (<= (- v_v_893_1 (- v_v_893_1)) 0) (or (= v_v_889_1 (select |c_#valid| v_idx_296)) (<= c_ULTIMATE.start_malloc_ptr v_idx_296)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_300) (= (select |c_#memory_int| v_idx_300) v_v_893_1) (< v_idx_300 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_888_1 (select |c_old(#valid)| v_idx_295))))))} [2019-01-07 18:55:43,496 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:55:43,496 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:55:43,497 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(forall ((v_idx_313 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_889_1 Int) (v_v_888_1 Int) (v_v_1192_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_894_1 Int) (v_v_895_1 Int) (v_v_887_1 Int) (v_v_885_1 Int)) (and (or (= v_v_894_1 (select |c_#memory_int| v_idx_306)) (< v_idx_306 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_889_1 (select |c_#valid| v_idx_311)) (<= c_ULTIMATE.start_malloc_ptr v_idx_311)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_312) (= 1 (select |c_#valid| v_idx_312)) (< v_idx_312 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_304) (= (select |c_#memory_int| v_idx_304) v_v_892_1)) (= (select |c_old(#valid)| v_idx_310) v_v_888_1) (= v_v_895_1 (select |c_old(#memory_int)| v_idx_303)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) 0) (< v_idx_308 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_308)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_313 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_891_1 (select |c_#valid| v_idx_313))) (<= (- v_v_1192_1 (- v_v_1192_1)) (- 2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_885_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_307)) (<= c_ULTIMATE.start_malloc_ptr v_idx_307)) (<= (+ v_v_1192_1 1) 0) (or (< v_idx_305 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_305) v_v_1192_1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_305)) (or (= v_v_887_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_309)) (< v_idx_309 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:55:43,497 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:55:43,966 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:55:43,966 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:56:06,406 WARN L181 SmtUtils]: Spent 22.44 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-07 18:56:06,406 WARN L270 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_291 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (= (select |#memory_int| v_idx_282) v_v_54_1) (<= ULTIMATE.start_malloc_ptr v_idx_282)) (or (< v_idx_286 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_286) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_286))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_289) (= v_v_42_1 (select |#valid| v_idx_289))) (= (select |old(#memory_int)| v_idx_281) v_v_4_1) (or (< v_idx_291 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |#valid| v_idx_291))) (or (<= ULTIMATE.start_malloc_ptr v_idx_285) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_285) v_v_36_1)) (or (= 1 (select |#valid| v_idx_290)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_290) (< v_idx_290 ULTIMATE.start_malloc_ptr)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_287) v_v_38_1) (< v_idx_287 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_283) (= (- 1) (select |#memory_int| v_idx_283)) (< v_idx_283 ULTIMATE.start_malloc_ptr)) (or (< v_idx_284 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_284) v_v_56_1)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= (select |old(#valid)| v_idx_288) v_v_2_1)))) (forall ((v_idx_302 Int) (v_idx_300 Int) (v_idx_301 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_889_1 Int) (v_v_888_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_894_1 Int) (v_v_895_1 Int) (v_v_887_1 Int) (v_v_885_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_885_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= ULTIMATE.start_malloc_ptr v_idx_292)) (= v_v_895_1 (select |old(#memory_int)| v_idx_302)) (or (= v_v_891_1 (select |#valid| v_idx_298)) (< v_idx_298 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_887_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_294)) (< v_idx_294 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= 1 (select |#valid| v_idx_297)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_297) (< v_idx_297 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_299) (= v_v_892_1 (select |#memory_int| v_idx_299))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= v_v_893_1 0) (or (= (select |#memory_int| v_idx_301) v_v_894_1) (< v_idx_301 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_293 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_293) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_293)) (<= (- v_v_893_1 (- v_v_893_1)) 0) (or (= v_v_889_1 (select |#valid| v_idx_296)) (<= ULTIMATE.start_malloc_ptr v_idx_296)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_300) (= (select |#memory_int| v_idx_300) v_v_893_1) (< v_idx_300 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= v_v_888_1 (select |old(#valid)| v_idx_295))))))} [2019-01-07 18:56:06,406 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:56:06,406 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:56:06,618 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (forall ((v_idx_305 Int)) (or (<= (+ (select |#memory_int| v_idx_305) 1) 0) (< v_idx_305 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_305))) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_malloc_ptr) (<= (+ (* 2 (select |#memory_int| v_prenex_8)) 2) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_8))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_308 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_308) 0) (< v_idx_308 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_308))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_312 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_312) (= 1 (select |#valid| v_idx_312)) (< v_idx_312 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:56:10,091 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:56:10,091 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:56:10,091 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:56:10,091 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:56:10,092 WARN L224 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_324 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_322) (= v_v_42_1 (select |c_#valid| v_idx_322))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_316 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_316) (= (- 1) (select |c_#memory_int| v_idx_316))) (or (= v_v_36_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_318)) (<= c_ULTIMATE.start_malloc_ptr v_idx_318)) (or (= v_v_44_1 (select |c_#valid| v_idx_324)) (< v_idx_324 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_321) v_v_2_1) (or (= (select |c_#memory_int| v_idx_317) v_v_56_1) (< v_idx_317 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_315) (= (select |c_#memory_int| v_idx_315) v_v_54_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_323) (< v_idx_323 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_323))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_320 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_320) v_v_38_1)) (or (< v_idx_319 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_319)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_319)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_314)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_335 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_889_1 Int) (v_v_888_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_894_1 Int) (v_v_887_1 Int) (v_v_895_1 Int) (v_v_885_1 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_892_1 (select |c_#memory_int| v_idx_332)) (<= c_ULTIMATE.start_malloc_ptr v_idx_332)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_327 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_887_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_327))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= v_v_893_1 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_326)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_326) (< v_idx_326 c_ULTIMATE.start_malloc_ptr)) (= v_v_895_1 (select |c_old(#memory_int)| v_idx_335)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_330) (= 1 (select |c_#valid| v_idx_330)) (< v_idx_330 c_ULTIMATE.start_malloc_ptr)) (= v_v_888_1 (select |c_old(#valid)| v_idx_328)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_329) (= v_v_889_1 (select |c_#valid| v_idx_329))) (or (= v_v_891_1 (select |c_#valid| v_idx_331)) (< v_idx_331 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_325) (= v_v_885_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325))) (<= (- v_v_893_1 (- v_v_893_1)) 0) (or (= v_v_894_1 (select |c_#memory_int| v_idx_334)) (< v_idx_334 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_333 c_ULTIMATE.start_malloc_ptr) (= v_v_893_1 (select |c_#memory_int| v_idx_333)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_333)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:56:10,092 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:56:10,092 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:56:10,092 WARN L230 ngHoareTripleChecker]: Post: {2147483626#(forall ((v_idx_346 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_36_1 Int) (v_v_44_1 Int) (v_v_1238_1 Int) (v_v_1239_1 Int) (v_v_42_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int) (v_v_1240_1 Int)) (and (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_341) (< v_idx_341 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_341))) (or (< v_idx_338 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_338) v_v_1239_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_338)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_344) (= v_v_42_1 (select |c_#valid| v_idx_344))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_337) (= (select |c_#memory_int| v_idx_337) v_v_1238_1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_342) v_v_38_1) (< v_idx_342 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- v_v_1239_1 (- v_v_1239_1)) (- 2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_340) v_v_36_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_340)) (<= (+ v_v_1239_1 1) 0) (or (< v_idx_346 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_1 (select |c_#valid| v_idx_346))) (= (select |c_old(#valid)| v_idx_343) v_v_2_1) (or (= (select |c_#memory_int| v_idx_339) v_v_1240_1) (< v_idx_339 (+ c_ULTIMATE.start_main_p1 1))) (= (select |c_old(#memory_int)| v_idx_336) v_v_4_1) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_345) (< v_idx_345 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_345))))))} [2019-01-07 18:56:10,092 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:56:10,646 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:56:10,647 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:56:45,945 WARN L181 SmtUtils]: Spent 35.30 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-07 18:56:45,946 WARN L270 ngHoareTripleChecker]: Pre: {2147483627#(or (forall ((v_idx_324 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_36_1 Int) (v_v_56_1 Int) (v_v_44_1 Int) (v_v_42_1 Int) (v_v_54_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_38_1 Int)) (and (or (<= ULTIMATE.start_malloc_ptr v_idx_322) (= v_v_42_1 (select |#valid| v_idx_322))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_316 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_316) (= (- 1) (select |#memory_int| v_idx_316))) (or (= v_v_36_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_318)) (<= ULTIMATE.start_malloc_ptr v_idx_318)) (or (= v_v_44_1 (select |#valid| v_idx_324)) (< v_idx_324 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#valid)| v_idx_321) v_v_2_1) (or (= (select |#memory_int| v_idx_317) v_v_56_1) (< v_idx_317 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_315) (= (select |#memory_int| v_idx_315) v_v_54_1)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_323) (< v_idx_323 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_323))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_320 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_320) v_v_38_1)) (or (< v_idx_319 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_319)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_319)) (= v_v_4_1 (select |old(#memory_int)| v_idx_314)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_335 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_889_1 Int) (v_v_888_1 Int) (v_v_891_1 Int) (v_v_892_1 Int) (v_v_893_1 Int) (v_v_894_1 Int) (v_v_887_1 Int) (v_v_895_1 Int) (v_v_885_1 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_892_1 (select |#memory_int| v_idx_332)) (<= ULTIMATE.start_malloc_ptr v_idx_332)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_327 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_887_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_327))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= v_v_893_1 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_326)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_326) (< v_idx_326 ULTIMATE.start_malloc_ptr)) (= v_v_895_1 (select |old(#memory_int)| v_idx_335)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_330) (= 1 (select |#valid| v_idx_330)) (< v_idx_330 ULTIMATE.start_malloc_ptr)) (= v_v_888_1 (select |old(#valid)| v_idx_328)) (or (<= ULTIMATE.start_malloc_ptr v_idx_329) (= v_v_889_1 (select |#valid| v_idx_329))) (or (= v_v_891_1 (select |#valid| v_idx_331)) (< v_idx_331 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_325) (= v_v_885_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_325))) (<= (- v_v_893_1 (- v_v_893_1)) 0) (or (= v_v_894_1 (select |#memory_int| v_idx_334)) (< v_idx_334 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_333 ULTIMATE.start_malloc_ptr) (= v_v_893_1 (select |#memory_int| v_idx_333)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_333)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:56:45,946 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:56:45,946 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:56:46,187 WARN L276 ngHoareTripleChecker]: Post: {2147483626#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_9 Int)) (or (< v_prenex_9 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_9) (<= (+ (select |#memory_int| v_prenex_9) 1) 0))) (forall ((v_idx_338 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_338)) 2) 0) (< v_idx_338 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_338))) (forall ((v_idx_345 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_345) (< v_idx_345 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_345)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_341 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_341) (< v_idx_341 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_341)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:56:46,342 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:56:46,344 INFO L272 AbstractInterpreter]: Visited 3 different actions 11 times. Merged at 1 different actions 4 times. Widened at 1 different actions 1 times. Found 5 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-07 18:56:46,349 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:56:46,351 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:56:46,351 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:56:46,351 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:56:46,378 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:56:46,379 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:56:46,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:56:46,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:56:46,404 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:56:46,478 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 15 treesize of output 18 [2019-01-07 18:56:46,491 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 18 treesize of output 24 [2019-01-07 18:56:46,502 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,504 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,505 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 34 [2019-01-07 18:56:46,518 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,522 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,523 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,524 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 22 treesize of output 45 [2019-01-07 18:56:46,533 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,556 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,567 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,578 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,603 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,605 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-07 18:56:46,727 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,728 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,729 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-07 18:56:46,835 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,837 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,838 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,840 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:46,842 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-07 18:56:46,845 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,856 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,870 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:56:46,900 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:56:46,900 INFO L202 ElimStorePlain]: Needed 8 recursive calls to eliminate 4 variables, input treesize:49, output treesize:45 [2019-01-07 18:56:46,907 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:56:46,907 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_22|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, |v_#valid_6|]. (let ((.cse1 (store |v_#valid_6| ULTIMATE.start_main_p1 1))) (let ((.cse0 (store .cse1 ULTIMATE.start_main_p2 1))) (and (= (select .cse0 ULTIMATE.start_main_p3) 0) (= (select (store .cse0 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4) 0) (= |#memory_int| (store (store (store (store |v_#memory_int_22| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0)) (= 0 (select .cse1 ULTIMATE.start_main_p2))))) [2019-01-07 18:56:46,907 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-07 18:56:47,046 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:56:47,047 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 45 [2019-01-07 18:56:47,051 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:56:47,079 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-07 18:56:47,080 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:55, output treesize:33 [2019-01-07 18:56:49,096 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:56:49,096 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_23|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_23| ULTIMATE.start_main_p4))) (and (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_23| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_23| ULTIMATE.start_main_p1) 0) (= (select |v_#memory_int_23| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_23| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) [2019-01-07 18:56:49,096 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) (- 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 18:56:49,190 INFO L273 TraceCheckUtils]: 0: Hoare triple {86#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {93#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-07 18:56:49,192 INFO L273 TraceCheckUtils]: 1: Hoare triple {93#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {97#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-07 18:56:49,193 INFO L273 TraceCheckUtils]: 2: Hoare triple {97#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} assume !(#memory_int[main_p1] >= 0); {87#false} is VALID [2019-01-07 18:56:49,194 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:56:49,194 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:56:49,226 INFO L273 TraceCheckUtils]: 2: Hoare triple {101#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {87#false} is VALID [2019-01-07 18:56:49,227 INFO L273 TraceCheckUtils]: 1: Hoare triple {105#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {101#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:56:49,229 INFO L273 TraceCheckUtils]: 0: Hoare triple {86#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {105#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:56:49,229 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:56:49,252 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:56:49,252 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-07 18:56:49,252 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:56:49,253 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:56:49,253 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:56:49,253 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-07 18:56:49,270 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:56:49,271 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-07 18:56:49,271 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-07 18:56:49,271 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:56:49,271 INFO L87 Difference]: Start difference. First operand 10 states and 17 transitions. Second operand 6 states. [2019-01-07 18:56:49,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:49,807 INFO L93 Difference]: Finished difference Result 31 states and 44 transitions. [2019-01-07 18:56:49,808 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-07 18:56:49,808 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:56:49,808 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:56:49,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:56:49,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2019-01-07 18:56:49,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:56:49,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2019-01-07 18:56:49,813 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2019-01-07 18:56:49,911 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:56:49,913 INFO L225 Difference]: With dead ends: 31 [2019-01-07 18:56:49,914 INFO L226 Difference]: Without dead ends: 28 [2019-01-07 18:56:49,915 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-07 18:56:49,915 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2019-01-07 18:56:49,930 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 13. [2019-01-07 18:56:49,931 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:56:49,931 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand 13 states. [2019-01-07 18:56:49,931 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 13 states. [2019-01-07 18:56:49,931 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 13 states. [2019-01-07 18:56:49,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:49,935 INFO L93 Difference]: Finished difference Result 28 states and 40 transitions. [2019-01-07 18:56:49,935 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 40 transitions. [2019-01-07 18:56:49,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:56:49,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:56:49,936 INFO L74 IsIncluded]: Start isIncluded. First operand 13 states. Second operand 28 states. [2019-01-07 18:56:49,936 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 28 states. [2019-01-07 18:56:49,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:49,939 INFO L93 Difference]: Finished difference Result 28 states and 40 transitions. [2019-01-07 18:56:49,939 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 40 transitions. [2019-01-07 18:56:49,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:56:49,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:56:49,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:56:49,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:56:49,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-01-07 18:56:49,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 25 transitions. [2019-01-07 18:56:49,942 INFO L78 Accepts]: Start accepts. Automaton has 13 states and 25 transitions. Word has length 3 [2019-01-07 18:56:49,942 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:56:49,942 INFO L480 AbstractCegarLoop]: Abstraction has 13 states and 25 transitions. [2019-01-07 18:56:49,942 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-07 18:56:49,942 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states and 25 transitions. [2019-01-07 18:56:49,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:56:49,943 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:56:49,943 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:56:49,943 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:56:49,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:56:49,944 INFO L82 PathProgramCache]: Analyzing trace with hash 30432, now seen corresponding path program 1 times [2019-01-07 18:56:49,944 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:56:49,945 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:56:49,945 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:56:49,945 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:56:49,945 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:56:49,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:56:50,023 INFO L273 TraceCheckUtils]: 0: Hoare triple {217#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {219#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:56:50,023 INFO L273 TraceCheckUtils]: 1: Hoare triple {219#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {219#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:56:50,025 INFO L273 TraceCheckUtils]: 2: Hoare triple {219#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {218#false} is VALID [2019-01-07 18:56:50,025 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:56:50,025 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-07 18:56:50,025 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-07 18:56:50,026 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:56:50,026 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-07 18:56:50,026 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:56:50,026 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-07 18:56:50,033 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:56:50,034 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-07 18:56:50,034 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-07 18:56:50,034 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-07 18:56:50,034 INFO L87 Difference]: Start difference. First operand 13 states and 25 transitions. Second operand 3 states. [2019-01-07 18:56:50,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:50,108 INFO L93 Difference]: Finished difference Result 15 states and 25 transitions. [2019-01-07 18:56:50,108 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 18:56:50,109 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-07 18:56:50,109 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:56:50,109 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:56:50,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 20 transitions. [2019-01-07 18:56:50,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-07 18:56:50,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 20 transitions. [2019-01-07 18:56:50,112 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 20 transitions. [2019-01-07 18:56:50,133 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:56:50,134 INFO L225 Difference]: With dead ends: 15 [2019-01-07 18:56:50,135 INFO L226 Difference]: Without dead ends: 14 [2019-01-07 18:56:50,135 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:56:50,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 14 states. [2019-01-07 18:56:50,152 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 14 to 13. [2019-01-07 18:56:50,152 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:56:50,152 INFO L82 GeneralOperation]: Start isEquivalent. First operand 14 states. Second operand 13 states. [2019-01-07 18:56:50,152 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 13 states. [2019-01-07 18:56:50,152 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 13 states. [2019-01-07 18:56:50,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:50,155 INFO L93 Difference]: Finished difference Result 14 states and 24 transitions. [2019-01-07 18:56:50,155 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 24 transitions. [2019-01-07 18:56:50,155 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:56:50,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:56:50,156 INFO L74 IsIncluded]: Start isIncluded. First operand 13 states. Second operand 14 states. [2019-01-07 18:56:50,156 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 14 states. [2019-01-07 18:56:50,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:56:50,157 INFO L93 Difference]: Finished difference Result 14 states and 24 transitions. [2019-01-07 18:56:50,158 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 24 transitions. [2019-01-07 18:56:50,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:56:50,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:56:50,158 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:56:50,158 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:56:50,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-01-07 18:56:50,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 24 transitions. [2019-01-07 18:56:50,160 INFO L78 Accepts]: Start accepts. Automaton has 13 states and 24 transitions. Word has length 3 [2019-01-07 18:56:50,160 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:56:50,160 INFO L480 AbstractCegarLoop]: Abstraction has 13 states and 24 transitions. [2019-01-07 18:56:50,160 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-07 18:56:50,160 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states and 24 transitions. [2019-01-07 18:56:50,160 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:56:50,160 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:56:50,160 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:56:50,161 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:56:50,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:56:50,161 INFO L82 PathProgramCache]: Analyzing trace with hash 29996, now seen corresponding path program 1 times [2019-01-07 18:56:50,161 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:56:50,162 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:56:50,162 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:56:50,162 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:56:50,162 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:56:50,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:56:50,225 INFO L273 TraceCheckUtils]: 0: Hoare triple {284#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {286#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:56:50,230 INFO L273 TraceCheckUtils]: 1: Hoare triple {286#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {287#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:56:50,232 INFO L273 TraceCheckUtils]: 2: Hoare triple {287#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {285#false} is VALID [2019-01-07 18:56:50,232 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:56:50,232 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:56:50,232 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:56:50,232 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-07 18:56:50,233 INFO L207 CegarAbsIntRunner]: [0], [6], [19] [2019-01-07 18:56:50,235 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:56:50,235 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:56:52,635 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:56:52,636 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:56:52,636 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:56:52,636 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:56:52,636 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_373 Int) (v_idx_363 Int)) (exists ((v_v_54_2 Int) (v_v_44_2 Int) (v_v_56_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_370)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_44_2 (select |c_#valid| v_idx_373)) (< v_idx_373 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_369 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_369) v_v_38_2)) (or (< v_idx_366 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_56_2 (select |c_#memory_int| v_idx_366))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_367) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_367) v_v_36_2)) (or (< v_idx_368 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_368) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_368)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_372) (= 1 (select |c_#valid| v_idx_372)) (< v_idx_372 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_364) (= (select |c_#memory_int| v_idx_364) v_v_54_2)) (or (< v_idx_365 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_365) (= 0 (select |c_#memory_int| v_idx_365))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_363)) (or (= v_v_42_2 (select |c_#valid| v_idx_371)) (<= c_ULTIMATE.start_malloc_ptr v_idx_371)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:56:52,637 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:56:52,637 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:56:52,637 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_379 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_384 Int) (v_idx_374 Int)) (exists ((v_v_44_2 Int) (v_v_57_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_59_2 Int) (v_v_36_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_379 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_379) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_379))) (or (= v_v_42_2 (select |c_#valid| v_idx_382)) (<= c_ULTIMATE.start_malloc_ptr v_idx_382)) (or (< v_idx_384 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_2 (select |c_#valid| v_idx_384))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_380) v_v_38_2) (< v_idx_380 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_375) (= (select |c_#memory_int| v_idx_375) v_v_57_2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_36_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_378)) (<= c_ULTIMATE.start_malloc_ptr v_idx_378)) (= v_v_2_2 (select |c_old(#valid)| v_idx_381)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= (+ v_v_58_2 1) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_374)) (or (< v_idx_377 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_377) v_v_59_2)) (or (= 1 (select |c_#valid| v_idx_383)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_383) (< v_idx_383 c_ULTIMATE.start_malloc_ptr)) (<= (- v_v_58_2 (- v_v_58_2)) (- 2)) (or (< v_idx_376 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_376) v_v_58_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_376)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:56:52,637 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:56:53,068 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:56:53,068 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:56:53,276 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_368 Int)) (or (< v_idx_368 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_368) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_368))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_372 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_372) (= 1 (select |#valid| v_idx_372)) (< v_idx_372 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_365 Int)) (or (< v_idx_365 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_365) (= 0 (select |#memory_int| v_idx_365)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:56:53,276 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:56:53,276 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:56:53,327 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (forall ((v_idx_383 Int)) (or (= 1 (select |#valid| v_idx_383)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_383) (< v_idx_383 ULTIMATE.start_malloc_ptr))) (<= (- (- ULTIMATE.start_main_p4) (- 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))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_376 Int)) (or (< v_idx_376 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_376)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_376))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_379 Int)) (or (< v_idx_379 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_379) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_379)))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:56:55,441 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:56:55,441 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:56:55,442 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:56:55,442 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:56:55,442 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(forall ((v_idx_388 Int) (v_idx_389 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_395 Int) (v_idx_385 Int)) (exists ((v_v_54_2 Int) (v_v_56_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_38_2 Int) (v_v_36_2 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_393) (= v_v_42_2 (select |c_#valid| v_idx_393))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_385)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_386) (= (select |c_#memory_int| v_idx_386) v_v_54_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 1 (select |c_#valid| v_idx_394)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_394) (< v_idx_394 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_391 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_391) v_v_38_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_389) v_v_36_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_389)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_387) (< v_idx_387 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_387))) (or (= (select |c_#memory_int| v_idx_388) v_v_56_2) (< v_idx_388 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_392) v_v_2_2) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_390) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_390) 0) (< v_idx_390 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_395 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_2 (select |c_#valid| v_idx_395))))))} [2019-01-07 18:56:55,442 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:56:55,442 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:56:55,442 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_406 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_396 Int)) (exists ((v_v_44_2 Int) (v_v_42_2 Int) (v_v_61_2 Int) (v_v_62_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (= (select |c_#memory_int| v_idx_397) v_v_60_2) (<= c_ULTIMATE.start_main_p1 v_idx_397)) (= (select |c_old(#valid)| v_idx_403) v_v_2_2) (or (= v_v_38_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_402)) (< v_idx_402 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_404) (= (select |c_#valid| v_idx_404) v_v_42_2)) (or (< v_idx_406 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_406) v_v_44_2)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_398) (= (select |c_#memory_int| v_idx_398) v_v_61_2) (< v_idx_398 c_ULTIMATE.start_main_p1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_405 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_405)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_405)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_400) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_400) v_v_36_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_396)) (or (= v_v_62_2 (select |c_#memory_int| v_idx_399)) (< v_idx_399 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_401) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_401)) (< v_idx_401 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:56:55,443 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:56:55,825 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:56:55,825 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:56:56,082 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_387 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_387) (< v_idx_387 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_387)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_390 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_390) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_390) 0) (< v_idx_390 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_394 Int)) (or (= 1 (select |#valid| v_idx_394)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_394) (< v_idx_394 ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:56:56,082 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:56:56,082 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:56:56,115 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (forall ((v_idx_405 Int)) (or (< v_idx_405 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_405)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_405))) (forall ((v_idx_401 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_401) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_401)) (< v_idx_401 ULTIMATE.start_malloc_ptr))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:56:58,846 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:56:58,847 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:56:58,847 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:56:58,847 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:56:58,848 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_54_2 Int) (v_v_56_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_38_2 Int) (v_v_36_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_407) v_v_4_2) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_411) v_v_36_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_411)) (or (= v_v_38_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_413)) (< v_idx_413 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_410 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_410) v_v_56_2)) (or (= (select |c_#memory_int| v_idx_408) v_v_54_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_408)) (or (< v_idx_416 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_416) (= 1 (select |c_#valid| v_idx_416))) (= (select |c_old(#valid)| v_idx_414) v_v_2_2) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_415) (= (select |c_#valid| v_idx_415) v_v_42_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_412) (< v_idx_412 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_412))) (or (< v_idx_417 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_417) v_v_44_2)) (or (= (select |c_#memory_int| v_idx_409) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_409) (< v_idx_409 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_44_2 Int) (v_v_61_2 Int) (v_v_42_2 Int) (v_v_62_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (< v_idx_420 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_420) v_v_61_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_420)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_424) v_v_38_2) (< v_idx_424 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_418)) (or (< v_idx_427 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_427) (= 1 (select |c_#valid| v_idx_427))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_423) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_423)) (< v_idx_423 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_421 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_421) v_v_62_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_426) (= v_v_42_2 (select |c_#valid| v_idx_426))) (or (<= c_ULTIMATE.start_main_p1 v_idx_419) (= (select |c_#memory_int| v_idx_419) v_v_60_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_425)) (or (= v_v_44_2 (select |c_#valid| v_idx_428)) (< v_idx_428 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_422) v_v_36_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_422)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:56:58,848 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:56:58,848 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:56:58,848 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_439 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_76_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_75_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_38_2 Int) (v_v_36_2 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_434)) (< v_idx_434 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_434)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_75_2 (- v_v_75_2)) (- 2)) (or (< v_idx_439 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_439) v_v_44_2)) (or (= (select |c_#valid| v_idx_437) v_v_42_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_437)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_436)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_36_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_433)) (<= c_ULTIMATE.start_malloc_ptr v_idx_433)) (or (= (select |c_#memory_int| v_idx_430) v_v_74_2) (<= c_ULTIMATE.start_main_p1 v_idx_430)) (or (= 1 (select |c_#valid| v_idx_438)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_438) (< v_idx_438 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_429)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_435) v_v_38_2) (< v_idx_435 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_431 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_431) v_v_75_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_431)) (or (< v_idx_432 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_432) v_v_76_2)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (<= (+ v_v_75_2 1) 0))))} [2019-01-07 18:56:58,848 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:56:59,275 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:56:59,275 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:07,303 WARN L181 SmtUtils]: Spent 8.03 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:57:07,303 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_417 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_54_2 Int) (v_v_56_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_38_2 Int) (v_v_36_2 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#memory_int)| v_idx_407) v_v_4_2) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_411) v_v_36_2) (<= ULTIMATE.start_malloc_ptr v_idx_411)) (or (= v_v_38_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_413)) (< v_idx_413 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_410 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_410) v_v_56_2)) (or (= (select |#memory_int| v_idx_408) v_v_54_2) (<= ULTIMATE.start_malloc_ptr v_idx_408)) (or (< v_idx_416 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_416) (= 1 (select |#valid| v_idx_416))) (= (select |old(#valid)| v_idx_414) v_v_2_2) (or (<= ULTIMATE.start_malloc_ptr v_idx_415) (= (select |#valid| v_idx_415) v_v_42_2)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_412) (< v_idx_412 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_412))) (or (< v_idx_417 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_417) v_v_44_2)) (or (= (select |#memory_int| v_idx_409) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_409) (< v_idx_409 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_428 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_44_2 Int) (v_v_61_2 Int) (v_v_42_2 Int) (v_v_62_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (< v_idx_420 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_420) v_v_61_2) (<= (+ ULTIMATE.start_main_p1 1) v_idx_420)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_424) v_v_38_2) (< v_idx_424 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |old(#memory_int)| v_idx_418)) (or (< v_idx_427 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_427) (= 1 (select |#valid| v_idx_427))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_423) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_423)) (< v_idx_423 ULTIMATE.start_malloc_ptr)) (or (< v_idx_421 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_421) v_v_62_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_426) (= v_v_42_2 (select |#valid| v_idx_426))) (or (<= ULTIMATE.start_main_p1 v_idx_419) (= (select |#memory_int| v_idx_419) v_v_60_2)) (= v_v_2_2 (select |old(#valid)| v_idx_425)) (or (= v_v_44_2 (select |#valid| v_idx_428)) (< v_idx_428 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_422) v_v_36_2) (<= ULTIMATE.start_malloc_ptr v_idx_422)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:57:07,304 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:57:07,304 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:57:07,344 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (forall ((v_idx_434 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_434)) (< v_idx_434 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_434))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_431 Int)) (or (< v_idx_431 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_431)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_431))) (forall ((v_idx_438 Int)) (or (= 1 (select |#valid| v_idx_438)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_438) (< v_idx_438 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_11 Int)) (or (<= (+ (select |#memory_int| v_prenex_11) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_11) (< v_prenex_11 ULTIMATE.start_main_p1))))} [2019-01-07 18:57:10,285 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:10,285 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:10,286 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:10,286 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:10,286 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_54_2 Int) (v_v_56_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (< v_idx_443 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_443) v_v_56_2)) (= (select |c_old(#valid)| v_idx_447) v_v_2_2) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_441) (= (select |c_#memory_int| v_idx_441) v_v_54_2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_449) (= (select |c_#valid| v_idx_449) 1) (< v_idx_449 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_448) v_v_42_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_448)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_450 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_450) v_v_44_2)) (or (< v_idx_446 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_446) v_v_38_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_440)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_445) (< v_idx_445 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_445) 0)) (or (= v_v_36_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_444)) (<= c_ULTIMATE.start_malloc_ptr v_idx_444)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_442) 0) (< v_idx_442 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_442))))) (forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_461 Int) (v_idx_451 Int)) (exists ((v_v_44_2 Int) (v_v_61_2 Int) (v_v_42_2 Int) (v_v_62_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_455) v_v_36_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_455)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_456 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_456)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_456)) (or (= (select |c_#valid| v_idx_460) 1) (< v_idx_460 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_460)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_457) v_v_38_2) (< v_idx_457 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_452) v_v_60_2) (<= c_ULTIMATE.start_main_p1 v_idx_452)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_2_2 (select |c_old(#valid)| v_idx_458)) (or (= (select |c_#memory_int| v_idx_453) v_v_61_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_453) (< v_idx_453 c_ULTIMATE.start_main_p1)) (= (select |c_old(#memory_int)| v_idx_451) v_v_4_2) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_459) (= v_v_42_2 (select |c_#valid| v_idx_459))) (or (= (select |c_#valid| v_idx_461) v_v_44_2) (< v_idx_461 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_454 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_454) v_v_62_2))))))} [2019-01-07 18:57:10,286 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:57:10,287 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:57:10,287 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(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_472 Int) (v_idx_462 Int)) (exists ((v_v_44_2 Int) (v_v_42_2 Int) (v_v_115_2 Int) (v_v_113_2 Int) (v_v_114_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (= v_v_42_2 (select |c_#valid| v_idx_470)) (<= c_ULTIMATE.start_malloc_ptr v_idx_470)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_36_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_466)) (<= c_ULTIMATE.start_malloc_ptr v_idx_466)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_471) (= 1 (select |c_#valid| v_idx_471)) (< v_idx_471 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_main_p1 v_idx_463) (= (select |c_#memory_int| v_idx_463) v_v_113_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_472 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_2 (select |c_#valid| v_idx_472))) (or (< v_idx_468 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_468) v_v_38_2)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_464) (< v_idx_464 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_464) v_v_114_2)) (or (< v_idx_465 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_465) v_v_115_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_467) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_467) 0) (< v_idx_467 c_ULTIMATE.start_malloc_ptr)) (= v_v_2_2 (select |c_old(#valid)| v_idx_469)) (= (select |c_old(#memory_int)| v_idx_462) v_v_4_2) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:10,287 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:10,771 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:10,772 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:18,703 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:57:18,703 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_450 Int) (v_idx_440 Int)) (exists ((v_v_54_2 Int) (v_v_56_2 Int) (v_v_44_2 Int) (v_v_42_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (or (< v_idx_443 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_443) v_v_56_2)) (= (select |old(#valid)| v_idx_447) v_v_2_2) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_441) (= (select |#memory_int| v_idx_441) v_v_54_2)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_449) (= (select |#valid| v_idx_449) 1) (< v_idx_449 ULTIMATE.start_malloc_ptr)) (or (= (select |#valid| v_idx_448) v_v_42_2) (<= ULTIMATE.start_malloc_ptr v_idx_448)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_450 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_450) v_v_44_2)) (or (< v_idx_446 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_446) v_v_38_2)) (= v_v_4_2 (select |old(#memory_int)| v_idx_440)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_445) (< v_idx_445 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_445) 0)) (or (= v_v_36_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_444)) (<= ULTIMATE.start_malloc_ptr v_idx_444)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_442) 0) (< v_idx_442 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_442))))) (forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_461 Int) (v_idx_451 Int)) (exists ((v_v_44_2 Int) (v_v_61_2 Int) (v_v_42_2 Int) (v_v_62_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_38_2 Int) (v_v_4_2 Int) (v_v_36_2 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_455) v_v_36_2) (<= ULTIMATE.start_malloc_ptr v_idx_455)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_456 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_456)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_456)) (or (= (select |#valid| v_idx_460) 1) (< v_idx_460 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_460)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_457) v_v_38_2) (< v_idx_457 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_452) v_v_60_2) (<= ULTIMATE.start_main_p1 v_idx_452)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= v_v_2_2 (select |old(#valid)| v_idx_458)) (or (= (select |#memory_int| v_idx_453) v_v_61_2) (<= (+ ULTIMATE.start_main_p1 1) v_idx_453) (< v_idx_453 ULTIMATE.start_main_p1)) (= (select |old(#memory_int)| v_idx_451) v_v_4_2) (or (<= ULTIMATE.start_malloc_ptr v_idx_459) (= v_v_42_2 (select |#valid| v_idx_459))) (or (= (select |#valid| v_idx_461) v_v_44_2) (< v_idx_461 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_454 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_454) v_v_62_2))))))} [2019-01-07 18:57:18,703 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-07 18:57:18,704 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-07 18:57:18,890 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(and (forall ((v_idx_471 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_471) (= 1 (select |#valid| v_idx_471)) (< v_idx_471 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_467 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_467) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_467) 0) (< v_idx_467 ULTIMATE.start_malloc_ptr))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:19,340 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:57:19,340 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:57:19,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:57:19,340 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:57:19,341 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:57:19,341 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:57:19,351 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:57:19,351 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:57:19,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:19,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:19,362 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:57:19,402 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 15 treesize of output 18 [2019-01-07 18:57:19,408 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 18 treesize of output 24 [2019-01-07 18:57:19,414 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,415 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,417 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 34 [2019-01-07 18:57:19,430 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 33 [2019-01-07 18:57:19,431 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,445 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,457 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,470 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,489 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,490 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:57:19,525 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,526 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,527 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:57:19,529 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,533 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,552 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-07 18:57:19,553 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 5 variables, input treesize:35, output treesize:33 [2019-01-07 18:57:19,562 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:57:19,562 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_25|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, |v_#valid_7|]. (let ((.cse0 (store |v_#valid_7| ULTIMATE.start_main_p1 1))) (and (= (store (store (store (store |v_#memory_int_25| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 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:57:19,562 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-07 18:57:19,610 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:19,611 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:57:19,614 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:19,630 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:57:19,630 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-07 18:57:19,634 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:57:19,635 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_26|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_26| ULTIMATE.start_main_p1))) (and (= |#memory_int| (store |v_#memory_int_26| ULTIMATE.start_main_p1 (+ .cse0 1))) (= 0 .cse0) (= 0 (select |v_#memory_int_26| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_26| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-07 18:57:19,635 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:57:19,652 INFO L273 TraceCheckUtils]: 0: Hoare triple {284#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {291#(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:57:19,654 INFO L273 TraceCheckUtils]: 1: Hoare triple {291#(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]; {295#(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:57:19,655 INFO L273 TraceCheckUtils]: 2: Hoare triple {295#(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); {285#false} is VALID [2019-01-07 18:57:19,655 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:57:19,656 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:57:19,674 INFO L273 TraceCheckUtils]: 2: Hoare triple {299#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {285#false} is VALID [2019-01-07 18:57:19,675 INFO L273 TraceCheckUtils]: 1: Hoare triple {303#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {299#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:57:19,677 INFO L273 TraceCheckUtils]: 0: Hoare triple {284#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {303#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-07 18:57:19,678 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:57:19,698 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-07 18:57:19,698 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 6 [2019-01-07 18:57:19,698 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 18:57:19,699 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-07 18:57:19,699 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:57:19,699 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-07 18:57:19,704 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:57:19,704 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-07 18:57:19,705 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-07 18:57:19,705 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:57:19,705 INFO L87 Difference]: Start difference. First operand 13 states and 24 transitions. Second operand 4 states. [2019-01-07 18:57:19,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:19,801 INFO L93 Difference]: Finished difference Result 18 states and 41 transitions. [2019-01-07 18:57:19,801 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-07 18:57:19,801 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-07 18:57:19,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:57:19,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:57:19,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 24 transitions. [2019-01-07 18:57:19,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 18:57:19,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 24 transitions. [2019-01-07 18:57:19,804 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 24 transitions. [2019-01-07 18:57:19,874 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 18:57:19,875 INFO L225 Difference]: With dead ends: 18 [2019-01-07 18:57:19,875 INFO L226 Difference]: Without dead ends: 17 [2019-01-07 18:57:19,876 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:57:19,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2019-01-07 18:57:19,937 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 16. [2019-01-07 18:57:19,938 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:57:19,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 17 states. Second operand 16 states. [2019-01-07 18:57:19,938 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 16 states. [2019-01-07 18:57:19,938 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 16 states. [2019-01-07 18:57:19,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:19,940 INFO L93 Difference]: Finished difference Result 17 states and 40 transitions. [2019-01-07 18:57:19,941 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 40 transitions. [2019-01-07 18:57:19,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:57:19,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:57:19,941 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 17 states. [2019-01-07 18:57:19,941 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 17 states. [2019-01-07 18:57:19,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:19,943 INFO L93 Difference]: Finished difference Result 17 states and 40 transitions. [2019-01-07 18:57:19,943 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 40 transitions. [2019-01-07 18:57:19,944 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:57:19,944 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:57:19,944 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:57:19,944 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:57:19,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-01-07 18:57:19,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 40 transitions. [2019-01-07 18:57:19,946 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 40 transitions. Word has length 3 [2019-01-07 18:57:19,946 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:57:19,946 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 40 transitions. [2019-01-07 18:57:19,946 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-07 18:57:19,946 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 40 transitions. [2019-01-07 18:57:19,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-07 18:57:19,947 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:57:19,947 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-07 18:57:19,947 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:57:19,947 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:57:19,948 INFO L82 PathProgramCache]: Analyzing trace with hash 30120, now seen corresponding path program 1 times [2019-01-07 18:57:19,948 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:57:19,948 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:57:19,949 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:57:19,949 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:57:19,949 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:57:19,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:20,007 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {388#(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:57:20,008 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_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {389#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 18:57:20,009 INFO L273 TraceCheckUtils]: 2: Hoare triple {389#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {387#false} is VALID [2019-01-07 18:57:20,009 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:57:20,009 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:57:20,009 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:57:20,009 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-07 18:57:20,010 INFO L207 CegarAbsIntRunner]: [0], [10], [19] [2019-01-07 18:57:20,012 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:57:20,012 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:57:22,348 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:22,348 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:22,349 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:22,349 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:22,349 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(forall ((v_idx_489 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_54_3 Int) (v_v_44_3 Int) (v_v_56_3 Int) (v_v_42_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_492 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_492) v_v_56_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_493) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_493)) (or (= (select |c_#memory_int| v_idx_490) v_v_54_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_490)) (or (< v_idx_499 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_499) v_v_44_3)) (or (< v_idx_494 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_494) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_494))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_491) 0) (< v_idx_491 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_491)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_497) v_v_42_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_497)) (or (= 1 (select |c_#valid| v_idx_498)) (< v_idx_498 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_498)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_495) v_v_38_3) (< v_idx_495 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_489)) (= v_v_2_3 (select |c_old(#valid)| v_idx_496)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:22,349 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:57:22,349 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:57:22,349 WARN L230 ngHoareTripleChecker]: Post: {2147483612#(forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_510 Int) (v_idx_504 Int) (v_idx_505 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_508 Int) (v_idx_509 Int) (v_idx_506 Int) (v_idx_507 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_38_3 Int) (v_v_57_3 Int) (v_v_2_3 Int) (v_v_58_3 Int) (v_v_59_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_506) v_v_38_3) (< v_idx_506 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_502) v_v_58_3) (< v_idx_502 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_502)) (or (= (select |c_#memory_int| v_idx_501) v_v_57_3) (<= c_ULTIMATE.start_main_p1 v_idx_501)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_503 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_59_3 (select |c_#memory_int| v_idx_503))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= (+ v_v_58_3 1) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_508) (= v_v_42_3 (select |c_#valid| v_idx_508))) (<= (- v_v_58_3 (- v_v_58_3)) (- 2)) (or (< v_idx_505 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_505) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_505))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_500)) (= (select |c_old(#valid)| v_idx_507) v_v_2_3) (or (= v_v_44_3 (select |c_#valid| v_idx_510)) (< v_idx_510 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_509 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_509) (= 1 (select |c_#valid| v_idx_509))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_504) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_504) v_v_36_3)))))} [2019-01-07 18:57:22,349 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:22,954 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:22,954 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:23,159 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (forall ((v_idx_494 Int)) (or (< v_idx_494 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_494) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_494)))) (forall ((v_idx_491 Int)) (or (= (select |#memory_int| v_idx_491) 0) (< v_idx_491 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_491))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_498 Int)) (or (= 1 (select |#valid| v_idx_498)) (< v_idx_498 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_498))))} [2019-01-07 18:57:23,159 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:57:23,160 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:57:23,210 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (forall ((v_idx_502 Int)) (or (< v_idx_502 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_502)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_502))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_505 Int)) (or (< v_idx_505 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_505) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_505)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_509 Int)) (or (< v_idx_509 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_509) (= 1 (select |#valid| v_idx_509)))) (forall ((v_prenex_12 Int)) (or (<= (+ (select |#memory_int| v_prenex_12) 1) 0) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:25,307 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:25,307 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:25,307 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:25,307 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:25,308 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(forall ((v_idx_511 Int) (v_idx_512 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_515 Int) (v_idx_516 Int) (v_idx_513 Int) (v_idx_514 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_44_3 Int) (v_v_54_3 Int) (v_v_42_3 Int) (v_v_56_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (or (= v_v_38_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_517)) (< v_idx_517 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_516 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_516) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_516)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_519) (= v_v_42_3 (select |c_#valid| v_idx_519))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_514 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_514) v_v_56_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_521 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |c_#valid| v_idx_521))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_511)) (= v_v_2_3 (select |c_old(#valid)| v_idx_518)) (or (< v_idx_520 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_520) (= 1 (select |c_#valid| v_idx_520))) (or (= (select |c_#memory_int| v_idx_512) v_v_54_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_512)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_515) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_515) v_v_36_3)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_513) (< v_idx_513 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_513) 0)))))} [2019-01-07 18:57:25,308 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:57:25,308 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:57:25,308 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_526 Int) (v_idx_527 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_60_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_527)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_527) (< v_idx_527 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#valid)| v_idx_529) v_v_2_3) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_522)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_526) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_526) v_v_36_3)) (or (= v_v_38_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_528)) (< v_idx_528 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_523) v_v_60_3) (<= c_ULTIMATE.start_main_p2 v_idx_523)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_531) (< v_idx_531 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_531))) (or (< v_idx_524 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_524) (= (select |c_#memory_int| v_idx_524) v_v_61_3)) (or (= v_v_44_3 (select |c_#valid| v_idx_532)) (< v_idx_532 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_525) v_v_62_3) (< v_idx_525 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_42_3 (select |c_#valid| v_idx_530)) (<= c_ULTIMATE.start_malloc_ptr v_idx_530)))))} [2019-01-07 18:57:25,308 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:25,634 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:25,635 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:25,854 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(and (forall ((v_idx_520 Int)) (or (< v_idx_520 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_520) (= 1 (select |#valid| v_idx_520)))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_513 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_513) (< v_idx_513 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_513) 0))) (forall ((v_idx_516 Int)) (or (< v_idx_516 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_516) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_516))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:25,854 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:57:25,854 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:57:25,883 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_527 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_527)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_527) (< v_idx_527 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_531 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_531) (< v_idx_531 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_531)))))} [2019-01-07 18:57:28,697 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:28,698 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:28,698 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:28,698 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:28,698 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_538 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_54_3 Int) (v_v_44_3 Int) (v_v_56_3 Int) (v_v_42_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_535 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_535) (= 0 (select |c_#memory_int| v_idx_535))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_539) v_v_38_3) (< v_idx_539 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_538)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_534) (= (select |c_#memory_int| v_idx_534) v_v_54_3)) (or (< v_idx_536 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_536) v_v_56_3)) (or (= 1 (select |c_#valid| v_idx_542)) (< v_idx_542 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_542)) (= (select |c_old(#valid)| v_idx_540) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_537) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_537)) (or (< v_idx_543 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |c_#valid| v_idx_543))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_533)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_541) (= v_v_42_3 (select |c_#valid| v_idx_541)))))) (forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_548 Int) (v_idx_549 Int) (v_idx_546 Int) (v_idx_547 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_60_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (= v_v_4_3 (select |c_old(#memory_int)| v_idx_544)) (or (= 1 (select |c_#valid| v_idx_553)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_553) (< v_idx_553 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_44_3 (select |c_#valid| v_idx_554)) (< v_idx_554 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p2 v_idx_545) (= (select |c_#memory_int| v_idx_545) v_v_60_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_549) 0) (< v_idx_549 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_549)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_547 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_547) v_v_62_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= v_v_42_3 (select |c_#valid| v_idx_552)) (<= c_ULTIMATE.start_malloc_ptr v_idx_552)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_548) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_548)) (or (< v_idx_550 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_550) v_v_38_3)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_546) v_v_61_3) (< v_idx_546 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_546)) (= v_v_2_3 (select |c_old(#valid)| v_idx_551))))))} [2019-01-07 18:57:28,698 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:57:28,698 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:57:28,699 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_559 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_76_3 Int) (v_v_75_3 Int) (v_v_44_3 Int) (v_v_42_3 Int) (v_v_74_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_559) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_559)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_560)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_560) (< v_idx_560 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_563) (= v_v_42_3 (select |c_#valid| v_idx_563))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_564) (= 1 (select |c_#valid| v_idx_564)) (< v_idx_564 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_556) v_v_74_3) (<= c_ULTIMATE.start_main_p1 v_idx_556)) (= (select |c_old(#memory_int)| v_idx_555) v_v_4_3) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_562)) (or (< v_idx_558 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_558) v_v_76_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_561 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_561))) (<= (+ v_v_75_3 1) 0) (<= (- v_v_75_3 (- v_v_75_3)) (- 2)) (or (< v_idx_557 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_557) v_v_75_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_557)) (or (< v_idx_565 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |c_#valid| v_idx_565))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:28,699 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:29,111 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:29,111 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:36,915 WARN L181 SmtUtils]: Spent 7.80 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:57:36,916 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_538 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_54_3 Int) (v_v_44_3 Int) (v_v_56_3 Int) (v_v_42_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (or (< v_idx_535 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_535) (= 0 (select |#memory_int| v_idx_535))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_539) v_v_38_3) (< v_idx_539 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_538)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_538) (< v_idx_538 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_534) (= (select |#memory_int| v_idx_534) v_v_54_3)) (or (< v_idx_536 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_536) v_v_56_3)) (or (= 1 (select |#valid| v_idx_542)) (< v_idx_542 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_542)) (= (select |old(#valid)| v_idx_540) v_v_2_3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_537) v_v_36_3) (<= ULTIMATE.start_malloc_ptr v_idx_537)) (or (< v_idx_543 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |#valid| v_idx_543))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |old(#memory_int)| v_idx_533)) (or (<= ULTIMATE.start_malloc_ptr v_idx_541) (= v_v_42_3 (select |#valid| v_idx_541)))))) (forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_548 Int) (v_idx_549 Int) (v_idx_546 Int) (v_idx_547 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_60_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_38_3 Int) (v_v_2_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (= v_v_4_3 (select |old(#memory_int)| v_idx_544)) (or (= 1 (select |#valid| v_idx_553)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_553) (< v_idx_553 ULTIMATE.start_malloc_ptr)) (or (= v_v_44_3 (select |#valid| v_idx_554)) (< v_idx_554 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p2 v_idx_545) (= (select |#memory_int| v_idx_545) v_v_60_3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_549) 0) (< v_idx_549 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_549)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_547 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_547) v_v_62_3)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= v_v_42_3 (select |#valid| v_idx_552)) (<= ULTIMATE.start_malloc_ptr v_idx_552)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_548) v_v_36_3) (<= ULTIMATE.start_malloc_ptr v_idx_548)) (or (< v_idx_550 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_550) v_v_38_3)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_546) v_v_61_3) (< v_idx_546 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_546)) (= v_v_2_3 (select |old(#valid)| v_idx_551))))))} [2019-01-07 18:57:36,916 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 18:57:36,916 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 18:57:37,137 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_560 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_560)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_560) (< v_idx_560 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_557 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_557)) 2) 0) (< v_idx_557 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_557))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_564 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_564) (= 1 (select |#valid| v_idx_564)) (< v_idx_564 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_13 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_13) (<= (+ (select |#memory_int| v_prenex_13) 1) 0) (< v_prenex_13 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:39,699 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:39,699 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:39,700 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:39,700 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:39,700 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_54_3 Int) (v_v_44_3 Int) (v_v_42_3 Int) (v_v_56_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (= (select |c_old(#valid)| v_idx_573) v_v_2_3) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_42_3 (select |c_#valid| v_idx_574)) (<= c_ULTIMATE.start_malloc_ptr v_idx_574)) (or (= 1 (select |c_#valid| v_idx_575)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_575) (< v_idx_575 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_571) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_571) (< v_idx_571 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_572) v_v_38_3) (< v_idx_572 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_567) (= (select |c_#memory_int| v_idx_567) v_v_54_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_570) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_570)) (or (< v_idx_576 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |c_#valid| v_idx_576))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_568) 0) (< v_idx_568 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_568)) (or (= (select |c_#memory_int| v_idx_569) v_v_56_3) (< v_idx_569 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_566) v_v_4_3)))) (forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_586 Int) (v_idx_587 Int) (v_idx_579 Int) (v_idx_580 Int) (v_idx_581 Int) (v_idx_584 Int) (v_idx_585 Int) (v_idx_582 Int) (v_idx_583 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_60_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (= (select |c_old(#memory_int)| v_idx_577) v_v_4_3) (or (= (select |c_#memory_int| v_idx_578) v_v_60_3) (<= c_ULTIMATE.start_main_p2 v_idx_578)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_586 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_586) (= 1 (select |c_#valid| v_idx_586))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_580 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_580) v_v_62_3)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_582 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_582) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_582))) (= (select |c_old(#valid)| v_idx_584) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_581) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_581)) (or (= v_v_42_3 (select |c_#valid| v_idx_585)) (<= c_ULTIMATE.start_malloc_ptr v_idx_585)) (or (= v_v_44_3 (select |c_#valid| v_idx_587)) (< v_idx_587 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_579) v_v_61_3) (< v_idx_579 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_579)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_583 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_583) v_v_38_3))))))} [2019-01-07 18:57:39,700 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:57:39,700 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:57:39,700 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(forall ((v_idx_588 Int) (v_idx_589 Int) (v_idx_597 Int) (v_idx_598 Int) (v_idx_591 Int) (v_idx_592 Int) (v_idx_590 Int) (v_idx_595 Int) (v_idx_596 Int) (v_idx_593 Int) (v_idx_594 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_114_3 Int) (v_v_115_3 Int) (v_v_113_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_592) v_v_36_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_592)) (= (select |c_old(#memory_int)| v_idx_588) v_v_4_3) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_591 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_591) v_v_115_3)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_593) (< v_idx_593 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_593))) (= (select |c_old(#valid)| v_idx_595) v_v_2_3) (or (= v_v_42_3 (select |c_#valid| v_idx_596)) (<= c_ULTIMATE.start_malloc_ptr v_idx_596)) (or (<= c_ULTIMATE.start_main_p2 v_idx_589) (= (select |c_#memory_int| v_idx_589) v_v_113_3)) (or (= 1 (select |c_#valid| v_idx_597)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_597) (< v_idx_597 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_38_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_594)) (< v_idx_594 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_598 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |c_#valid| v_idx_598))) (or (< v_idx_590 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_590) v_v_114_3) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_590)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:39,701 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:40,193 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:40,193 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:48,027 WARN L181 SmtUtils]: Spent 7.83 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-07 18:57:48,028 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_54_3 Int) (v_v_44_3 Int) (v_v_42_3 Int) (v_v_56_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_36_3 Int) (v_v_4_3 Int)) (and (= (select |old(#valid)| v_idx_573) v_v_2_3) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_42_3 (select |#valid| v_idx_574)) (<= ULTIMATE.start_malloc_ptr v_idx_574)) (or (= 1 (select |#valid| v_idx_575)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_575) (< v_idx_575 ULTIMATE.start_malloc_ptr)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_571) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_571) (< v_idx_571 ULTIMATE.start_malloc_ptr)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_572) v_v_38_3) (< v_idx_572 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_567) (= (select |#memory_int| v_idx_567) v_v_54_3)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_570) v_v_36_3) (<= ULTIMATE.start_malloc_ptr v_idx_570)) (or (< v_idx_576 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_3 (select |#valid| v_idx_576))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_568) 0) (< v_idx_568 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_568)) (or (= (select |#memory_int| v_idx_569) v_v_56_3) (< v_idx_569 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#memory_int)| v_idx_566) v_v_4_3)))) (forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_586 Int) (v_idx_587 Int) (v_idx_579 Int) (v_idx_580 Int) (v_idx_581 Int) (v_idx_584 Int) (v_idx_585 Int) (v_idx_582 Int) (v_idx_583 Int)) (exists ((v_v_44_3 Int) (v_v_42_3 Int) (v_v_60_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_2_3 Int) (v_v_38_3 Int) (v_v_4_3 Int) (v_v_36_3 Int)) (and (= (select |old(#memory_int)| v_idx_577) v_v_4_3) (or (= (select |#memory_int| v_idx_578) v_v_60_3) (<= ULTIMATE.start_main_p2 v_idx_578)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_586 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_586) (= 1 (select |#valid| v_idx_586))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_580 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_580) v_v_62_3)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_582 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_582) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_582))) (= (select |old(#valid)| v_idx_584) v_v_2_3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_581) v_v_36_3) (<= ULTIMATE.start_malloc_ptr v_idx_581)) (or (= v_v_42_3 (select |#valid| v_idx_585)) (<= ULTIMATE.start_malloc_ptr v_idx_585)) (or (= v_v_44_3 (select |#valid| v_idx_587)) (< v_idx_587 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_579) v_v_61_3) (< v_idx_579 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_579)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_583 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_583) v_v_38_3))))))} [2019-01-07 18:57:48,028 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 18:57:48,028 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:57:48,252 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_597 Int)) (or (= 1 (select |#valid| v_idx_597)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_597) (< v_idx_597 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_593 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_593) (< v_idx_593 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_593)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:48,640 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 18:57:48,640 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:57:48,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:57:48,640 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 18:57:48,640 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:57:48,640 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:57:48,649 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:57:48,649 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 18:57:48,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:48,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:48,656 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 18:57:48,694 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:48,695 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:57:48,729 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:48,730 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:48,731 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:57:48,733 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,740 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,760 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 15 treesize of output 18 [2019-01-07 18:57:48,766 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 18 treesize of output 24 [2019-01-07 18:57:48,775 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 34 [2019-01-07 18:57:48,789 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 33 [2019-01-07 18:57:48,792 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,803 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,812 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,820 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,837 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:57:48,838 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 4 variables, input treesize:35, output treesize:33 [2019-01-07 18:57:48,843 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:57:48,843 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, |v_#valid_8|]. (let ((.cse0 (store |v_#valid_8| ULTIMATE.start_main_p1 1))) (and (= |#memory_int| (store (store (store (store |v_#memory_int_28| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0)) (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0))) [2019-01-07 18:57:48,843 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-07 18:57:48,908 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 18:57:48,909 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:57:48,912 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 18:57:48,925 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:57:48,925 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-07 18:57:49,722 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 18:57:49,722 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_29|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_29| ULTIMATE.start_main_p2))) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_29| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= .cse0 0) (= (store |v_#memory_int_29| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= (select |v_#memory_int_29| ULTIMATE.start_main_p3) 0))) [2019-01-07 18:57:49,723 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:57:49,745 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {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:57:49,747 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_p2 := #memory_int[main_p2] - 1]; {397#(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:57:49,747 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#(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); {387#false} is VALID [2019-01-07 18:57:49,748 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:57:49,748 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 18:57:49,768 INFO L273 TraceCheckUtils]: 2: Hoare triple {401#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {387#false} is VALID [2019-01-07 18:57:49,769 INFO L273 TraceCheckUtils]: 1: Hoare triple {405#(<= 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]; {401#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-07 18:57:49,771 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {405#(<= 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:57:49,771 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:57:49,791 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-07 18:57:49,791 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-07 18:57:49,791 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-07 18:57:49,792 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:57:49,792 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 18:57:49,792 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-07 18:57:49,799 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:57:49,799 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-07 18:57:49,799 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-07 18:57:49,799 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-07 18:57:49,800 INFO L87 Difference]: Start difference. First operand 16 states and 40 transitions. Second operand 6 states. [2019-01-07 18:57:50,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:50,083 INFO L93 Difference]: Finished difference Result 32 states and 62 transitions. [2019-01-07 18:57:50,083 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-07 18:57:50,084 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-07 18:57:50,084 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 18:57:50,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:57:50,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2019-01-07 18:57:50,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-07 18:57:50,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2019-01-07 18:57:50,087 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2019-01-07 18:57:50,206 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:57:50,208 INFO L225 Difference]: With dead ends: 32 [2019-01-07 18:57:50,208 INFO L226 Difference]: Without dead ends: 31 [2019-01-07 18:57:50,208 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-07 18:57:50,209 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2019-01-07 18:57:50,241 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 18. [2019-01-07 18:57:50,241 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 18:57:50,241 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand 18 states. [2019-01-07 18:57:50,241 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 18 states. [2019-01-07 18:57:50,242 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 18 states. [2019-01-07 18:57:50,244 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:50,245 INFO L93 Difference]: Finished difference Result 31 states and 60 transitions. [2019-01-07 18:57:50,245 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 60 transitions. [2019-01-07 18:57:50,245 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:57:50,245 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:57:50,245 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand 31 states. [2019-01-07 18:57:50,246 INFO L87 Difference]: Start difference. First operand 18 states. Second operand 31 states. [2019-01-07 18:57:50,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 18:57:50,248 INFO L93 Difference]: Finished difference Result 31 states and 60 transitions. [2019-01-07 18:57:50,248 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 60 transitions. [2019-01-07 18:57:50,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 18:57:50,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 18:57:50,249 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 18:57:50,249 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 18:57:50,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2019-01-07 18:57:50,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 50 transitions. [2019-01-07 18:57:50,251 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 50 transitions. Word has length 3 [2019-01-07 18:57:50,251 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 18:57:50,251 INFO L480 AbstractCegarLoop]: Abstraction has 18 states and 50 transitions. [2019-01-07 18:57:50,251 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-07 18:57:50,251 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 50 transitions. [2019-01-07 18:57:50,252 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 18:57:50,252 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 18:57:50,252 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 18:57:50,252 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 18:57:50,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 18:57:50,252 INFO L82 PathProgramCache]: Analyzing trace with hash 939538, now seen corresponding path program 1 times [2019-01-07 18:57:50,253 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 18:57:50,253 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:57:50,253 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 18:57:50,254 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 18:57:50,254 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 18:57:50,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 18:57:50,348 INFO L273 TraceCheckUtils]: 0: Hoare triple {538#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {540#(and (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)))} is VALID [2019-01-07 18:57:50,349 INFO L273 TraceCheckUtils]: 1: Hoare triple {540#(and (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:57:50,350 INFO L273 TraceCheckUtils]: 2: Hoare triple {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 18:57:50,351 INFO L273 TraceCheckUtils]: 3: Hoare triple {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {539#false} is VALID [2019-01-07 18:57:50,351 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:57:50,351 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 18:57:50,352 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 18:57:50,352 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 18:57:50,352 INFO L207 CegarAbsIntRunner]: [0], [16], [20], [21] [2019-01-07 18:57:50,354 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 18:57:50,354 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 18:57:53,039 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:53,039 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:53,040 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:53,040 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:53,040 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_620 Int) (v_idx_625 Int) (v_idx_615 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_618 Int) (v_idx_619 Int) (v_idx_616 Int) (v_idx_617 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_617) 0) (< v_idx_617 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_617)) (or (< v_idx_625 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_625) v_v_44_4)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_623) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_623)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_624) (< v_idx_624 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_624))) (or (= (select |c_#memory_int| v_idx_618) v_v_56_4) (< v_idx_618 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_621 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_621) v_v_38_4)) (or (= (select |c_#memory_int| v_idx_616) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_616)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_619) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_619)) (= (select |c_old(#memory_int)| v_idx_615) v_v_4_4) (= (select |c_old(#valid)| v_idx_622) v_v_2_4) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_620) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_620) (< v_idx_620 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:57:53,040 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:57:53,040 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:57:53,040 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_630 Int) (v_idx_631 Int) (v_idx_636 Int) (v_idx_626 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_635) (< v_idx_635 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_635) 1)) (or (= (select |c_#valid| v_idx_634) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_634)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_627) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_627)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_630) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_630)) (or (< v_idx_636 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_4 (select |c_#valid| v_idx_636))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_626)) (= v_v_2_4 (select |c_old(#valid)| v_idx_633)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_628) (< v_idx_628 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_628) (- 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_631) (< v_idx_631 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_631))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_632) v_v_38_4) (< v_idx_632 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_629 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_629) v_v_56_4)))))} [2019-01-07 18:57:53,040 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:53,408 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:53,408 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:53,657 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(and (forall ((v_idx_620 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_620) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_620) (< v_idx_620 ULTIMATE.start_malloc_ptr))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_624 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_624) (< v_idx_624 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_624)))) (forall ((v_idx_617 Int)) (or (= (select |#memory_int| v_idx_617) 0) (< v_idx_617 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_617))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:53,657 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:57:53,657 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:57:53,696 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (forall ((v_idx_631 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_631) (< v_idx_631 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_631)))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_628 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_628) (< v_idx_628 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_628) (- 1)))) (forall ((v_idx_635 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_635) (< v_idx_635 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_635) 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:57:56,133 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:56,133 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:56,134 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:56,134 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:56,134 WARN L224 ngHoareTripleChecker]: Pre: {2147483601#(forall ((v_idx_643 Int) (v_idx_644 Int) (v_idx_641 Int) (v_idx_642 Int) (v_idx_647 Int) (v_idx_637 Int) (v_idx_645 Int) (v_idx_646 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_639)) (< v_idx_639 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_639)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_646) (= 1 (select |c_#valid| v_idx_646)) (< v_idx_646 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_641) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_641) v_v_36_4)) (or (< v_idx_647 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_647) v_v_44_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_642)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_642) (< v_idx_642 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_638) (= (select |c_#memory_int| v_idx_638) v_v_54_4)) (or (= (select |c_#memory_int| v_idx_640) v_v_56_4) (< v_idx_640 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_645) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_645)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_643) v_v_38_4) (< v_idx_643 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_637) v_v_4_4) (= (select |c_old(#valid)| v_idx_644) v_v_2_4) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:56,134 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:57:56,134 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:57:56,134 WARN L230 ngHoareTripleChecker]: Post: {2147483600#(forall ((v_idx_654 Int) (v_idx_655 Int) (v_idx_652 Int) (v_idx_653 Int) (v_idx_658 Int) (v_idx_648 Int) (v_idx_656 Int) (v_idx_657 Int) (v_idx_649 Int) (v_idx_650 Int) (v_idx_651 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_71_4 Int) (v_v_73_4 Int) (v_v_72_4 Int) (v_v_38_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- v_v_72_4) v_v_72_4) 0) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 0 v_v_72_4) (or (< v_idx_651 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_651) v_v_73_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_657) (< v_idx_657 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_657) 1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_652) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_652)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_654) v_v_38_4) (< v_idx_654 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_648) v_v_4_4) (or (< v_idx_658 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_658) v_v_44_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_653) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_653) (< v_idx_653 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_656) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_656)) (or (= (select |c_#memory_int| v_idx_649) v_v_71_4) (<= c_ULTIMATE.start_main_p1 v_idx_649)) (= v_v_2_4 (select |c_old(#valid)| v_idx_655)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_650) v_v_72_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_650) (< v_idx_650 c_ULTIMATE.start_main_p1)))))} [2019-01-07 18:57:56,135 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:57:56,732 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:57:56,733 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:57:56,922 WARN L270 ngHoareTripleChecker]: Pre: {2147483601#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_642 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_642)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_642) (< v_idx_642 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_639 Int)) (or (= 0 (select |#memory_int| v_idx_639)) (< v_idx_639 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_639))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_646 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_646) (= 1 (select |#valid| v_idx_646)) (< v_idx_646 ULTIMATE.start_malloc_ptr))))} [2019-01-07 18:57:56,923 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:57:56,923 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:57:56,967 WARN L276 ngHoareTripleChecker]: Post: {2147483600#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_650 Int)) (or (<= 0 (select |#memory_int| v_idx_650)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_650) (< v_idx_650 ULTIMATE.start_main_p1))) (forall ((v_prenex_14 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_14))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14) (< v_prenex_14 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_653 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_653) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_653) (< v_idx_653 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_657 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_657) (< v_idx_657 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_657) 1))))} [2019-01-07 18:57:59,704 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:57:59,704 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:57:59,704 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:57:59,704 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:57:59,705 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(or (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_663 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_659 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_661 Int) (v_idx_662 Int) (v_idx_660 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_663) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_663) v_v_36_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_665) v_v_38_4) (< v_idx_665 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_661) (< v_idx_661 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_661))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_669) v_v_44_4) (< v_idx_669 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_660) (= (select |c_#memory_int| v_idx_660) v_v_54_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_666)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_659)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_668) (= 1 (select |c_#valid| v_idx_668)) (< v_idx_668 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_56_4 (select |c_#memory_int| v_idx_662)) (< v_idx_662 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_667) (= v_v_42_4 (select |c_#valid| v_idx_667))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_664) (< v_idx_664 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_664)))))) (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_674 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_676 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_676) v_v_38_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_677)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_680 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_4 (select |c_#valid| v_idx_680))) (or (= (select |c_#valid| v_idx_678) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_678)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_673 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_673) v_v_56_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_679) (< v_idx_679 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_679) 1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_674) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_674) v_v_36_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_675)) (< v_idx_675 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_675)) (or (= (select |c_#memory_int| v_idx_672) (- 1)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_672) (< v_idx_672 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_670)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_671) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_671))))))} [2019-01-07 18:57:59,705 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:57:59,705 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:57:59,705 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(or (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_696 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_693) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_693)) (or (= (select |c_#memory_int| v_idx_695) v_v_56_4) (< v_idx_695 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_692)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_702 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_702) v_v_44_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_698) v_v_38_4) (< v_idx_698 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_696) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_696) v_v_36_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_697)) (< v_idx_697 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_697)) (or (< v_idx_694 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_694) (- 2)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_694)) (or (= v_v_42_4 (select |c_#valid| v_idx_700)) (<= c_ULTIMATE.start_malloc_ptr v_idx_700)) (or (= 1 (select |c_#valid| v_idx_701)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_701) (< v_idx_701 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_699))))) (forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_685 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_683 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_683) (= (select |c_#memory_int| v_idx_683) (- 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_687) v_v_38_4) (< v_idx_687 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_682) (= (select |c_#memory_int| v_idx_682) v_v_54_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_689) (= (select |c_#valid| v_idx_689) v_v_42_4)) (or (= (select |c_#memory_int| v_idx_684) v_v_56_4) (< v_idx_684 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_681)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_686) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_686)) (< v_idx_686 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_690 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_690) (= 1 (select |c_#valid| v_idx_690))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_685) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_685)) (or (= (select |c_#valid| v_idx_691) v_v_44_4) (< v_idx_691 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_688))))))} [2019-01-07 18:57:59,705 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:58:00,112 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:58:00,113 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:58:07,947 WARN L181 SmtUtils]: Spent 7.83 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-07 18:58:07,948 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(or (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_663 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_659 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_661 Int) (v_idx_662 Int) (v_idx_660 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_663) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_663) v_v_36_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_665) v_v_38_4) (< v_idx_665 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_661) (< v_idx_661 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_661))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= (select |#valid| v_idx_669) v_v_44_4) (< v_idx_669 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_660) (= (select |#memory_int| v_idx_660) v_v_54_4)) (= v_v_2_4 (select |old(#valid)| v_idx_666)) (= v_v_4_4 (select |old(#memory_int)| v_idx_659)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_668) (= 1 (select |#valid| v_idx_668)) (< v_idx_668 ULTIMATE.start_malloc_ptr)) (or (= v_v_56_4 (select |#memory_int| v_idx_662)) (< v_idx_662 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_667) (= v_v_42_4 (select |#valid| v_idx_667))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_664) (< v_idx_664 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_664)))))) (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_674 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_676 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_676) v_v_38_4)) (= v_v_2_4 (select |old(#valid)| v_idx_677)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_680 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_44_4 (select |#valid| v_idx_680))) (or (= (select |#valid| v_idx_678) v_v_42_4) (<= ULTIMATE.start_malloc_ptr v_idx_678)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_673 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_673) v_v_56_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_679) (< v_idx_679 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_679) 1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_674) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_674) v_v_36_4)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_675)) (< v_idx_675 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_675)) (or (= (select |#memory_int| v_idx_672) (- 1)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_672) (< v_idx_672 ULTIMATE.start_malloc_ptr)) (= v_v_4_4 (select |old(#memory_int)| v_idx_670)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_671) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_671))))))} [2019-01-07 18:58:07,948 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:58:07,948 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:58:15,678 WARN L181 SmtUtils]: Spent 7.73 s on a formula simplification that was a NOOP. DAG size: 143 [2019-01-07 18:58:15,678 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(or (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_696 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |#memory_int| v_idx_693) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_693)) (or (= (select |#memory_int| v_idx_695) v_v_56_4) (< v_idx_695 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_4 (select |old(#memory_int)| v_idx_692)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_702 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_702) v_v_44_4)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_698) v_v_38_4) (< v_idx_698 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_696) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_696) v_v_36_4)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_697)) (< v_idx_697 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_697)) (or (< v_idx_694 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_694) (- 2)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_694)) (or (= v_v_42_4 (select |#valid| v_idx_700)) (<= ULTIMATE.start_malloc_ptr v_idx_700)) (or (= 1 (select |#valid| v_idx_701)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_701) (< v_idx_701 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |old(#valid)| v_idx_699))))) (forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_685 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_683 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_683) (= (select |#memory_int| v_idx_683) (- 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_687) v_v_38_4) (< v_idx_687 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_682) (= (select |#memory_int| v_idx_682) v_v_54_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_689) (= (select |#valid| v_idx_689) v_v_42_4)) (or (= (select |#memory_int| v_idx_684) v_v_56_4) (< v_idx_684 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |old(#memory_int)| v_idx_681)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_686) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_686)) (< v_idx_686 ULTIMATE.start_malloc_ptr)) (or (< v_idx_690 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_690) (= 1 (select |#valid| v_idx_690))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_685) v_v_36_4) (<= ULTIMATE.start_malloc_ptr v_idx_685)) (or (= (select |#valid| v_idx_691) v_v_44_4) (< v_idx_691 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_2_4 (select |old(#valid)| v_idx_688))))))} [2019-01-07 18:58:29,445 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:58:29,445 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:58:29,446 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:58:29,446 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:58:29,446 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_703 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_710)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_704) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_704)) (or (< v_idx_705 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_705) (= (select |c_#memory_int| v_idx_705) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_708 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_708)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_708)) (= (select |c_old(#memory_int)| v_idx_703) v_v_4_4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_711) (= (select |c_#valid| v_idx_711) v_v_42_4)) (or (= (select |c_#memory_int| v_idx_706) v_v_56_4) (< v_idx_706 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_709 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_709) v_v_38_4)) (or (= (select |c_#valid| v_idx_713) v_v_44_4) (< v_idx_713 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_707) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_707)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_712 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_712)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_712))))) (forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_714 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_719 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_715) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_715)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_720) v_v_38_4) (< v_idx_720 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_724) v_v_44_4) (< v_idx_724 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_36_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_718)) (<= c_ULTIMATE.start_malloc_ptr v_idx_718)) (= v_v_2_4 (select |c_old(#valid)| v_idx_721)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_719) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_719)) (< v_idx_719 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_722) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_722)) (or (< v_idx_716 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_716) (= (select |c_#memory_int| v_idx_716) (- 1))) (or (= (select |c_#memory_int| v_idx_717) v_v_56_4) (< v_idx_717 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#memory_int)| v_idx_714) v_v_4_4) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_723) (< v_idx_723 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_723) 1))))))} [2019-01-07 18:58:29,446 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:58:29,446 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:58:29,446 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_731 Int) (v_idx_732 Int) (v_idx_730 Int) (v_idx_735 Int) (v_idx_725 Int) (v_idx_733 Int) (v_idx_734 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int)) (exists ((v_v_433_2 Int) (v_v_44_4 Int) (v_v_432_2 Int) (v_v_42_4 Int) (v_v_434_2 Int) (v_v_38_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_727) v_v_433_2) (< v_idx_727 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_727)) (or (< v_idx_734 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_734) (= 1 (select |c_#valid| v_idx_734))) (or (= v_v_36_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_729)) (<= c_ULTIMATE.start_malloc_ptr v_idx_729)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_732)) (= (select |c_old(#memory_int)| v_idx_725) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_730) (< v_idx_730 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_730))) (or (= (select |c_#valid| v_idx_735) v_v_44_4) (< v_idx_735 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- v_v_433_2) v_v_433_2) 0) (or (= (select |c_#memory_int| v_idx_726) v_v_432_2) (<= c_ULTIMATE.start_main_p1 v_idx_726)) (or (= v_v_434_2 (select |c_#memory_int| v_idx_728)) (< v_idx_728 (+ c_ULTIMATE.start_main_p1 1))) (<= 0 v_v_433_2) (or (< v_idx_731 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_731) v_v_38_4)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= v_v_42_4 (select |c_#valid| v_idx_733)) (<= c_ULTIMATE.start_malloc_ptr v_idx_733)))))} [2019-01-07 18:58:29,447 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:58:30,068 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:58:30,068 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:58:37,968 WARN L181 SmtUtils]: Spent 7.90 s on a formula simplification that was a NOOP. DAG size: 142 [2019-01-07 18:58:37,968 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_703 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |old(#valid)| v_idx_710)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_704) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_704)) (or (< v_idx_705 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_705) (= (select |#memory_int| v_idx_705) 0)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_708 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_708)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_708)) (= (select |old(#memory_int)| v_idx_703) v_v_4_4) (or (<= ULTIMATE.start_malloc_ptr v_idx_711) (= (select |#valid| v_idx_711) v_v_42_4)) (or (= (select |#memory_int| v_idx_706) v_v_56_4) (< v_idx_706 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_709 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_709) v_v_38_4)) (or (= (select |#valid| v_idx_713) v_v_44_4) (< v_idx_713 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_707) v_v_36_4) (<= ULTIMATE.start_malloc_ptr v_idx_707)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_712 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_712)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_712))))) (forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_714 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_719 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |#memory_int| v_idx_715) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_715)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_720) v_v_38_4) (< v_idx_720 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= (select |#valid| v_idx_724) v_v_44_4) (< v_idx_724 (+ ULTIMATE.start_malloc_ptr 1))) (or (= v_v_36_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_718)) (<= ULTIMATE.start_malloc_ptr v_idx_718)) (= v_v_2_4 (select |old(#valid)| v_idx_721)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_719) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_719)) (< v_idx_719 ULTIMATE.start_malloc_ptr)) (or (= (select |#valid| v_idx_722) v_v_42_4) (<= ULTIMATE.start_malloc_ptr v_idx_722)) (or (< v_idx_716 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_716) (= (select |#memory_int| v_idx_716) (- 1))) (or (= (select |#memory_int| v_idx_717) v_v_56_4) (< v_idx_717 (+ ULTIMATE.start_malloc_ptr 1))) (= (select |old(#memory_int)| v_idx_714) v_v_4_4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_723) (< v_idx_723 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_723) 1))))))} [2019-01-07 18:58:37,969 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:58:37,969 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:58:38,170 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (forall ((v_idx_727 Int)) (or (< v_idx_727 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_727))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_727))) (forall ((v_prenex_15 Int)) (or (<= 0 (select |#memory_int| v_prenex_15)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (< v_prenex_15 ULTIMATE.start_main_p1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_730 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_730) (< v_idx_730 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_730)))) (forall ((v_idx_734 Int)) (or (< v_idx_734 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_734) (= 1 (select |#valid| v_idx_734)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:58:40,401 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:58:40,401 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:58:40,401 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:58:40,401 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:58:40,402 WARN L224 ngHoareTripleChecker]: Pre: {2147483595#(forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_746 Int) (v_idx_736 Int) (v_idx_744 Int) (v_idx_745 Int) (v_idx_739 Int) (v_idx_737 Int) (v_idx_738 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_71_4 Int) (v_v_73_4 Int) (v_v_72_4 Int) (v_v_38_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_739 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_739) v_v_73_4)) (<= (- (- v_v_72_4) v_v_72_4) 0) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_742) v_v_38_4) (< v_idx_742 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_746 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_746) v_v_44_4)) (<= 0 v_v_72_4) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_737) (= (select |c_#memory_int| v_idx_737) v_v_71_4)) (or (< v_idx_745 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_745) (= (select |c_#valid| v_idx_745) 1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_744) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_744)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_741)) (< v_idx_741 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_741)) (= v_v_2_4 (select |c_old(#valid)| v_idx_743)) (or (= (select |c_#memory_int| v_idx_738) v_v_72_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_738) (< v_idx_738 c_ULTIMATE.start_main_p1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_740) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_740) v_v_36_4)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_736) v_v_4_4))))} [2019-01-07 18:58:40,402 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:58:40,402 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:58:40,402 WARN L230 ngHoareTripleChecker]: Post: {2147483594#(forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_757 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_44_4 Int) (v_v_473_2 Int) (v_v_42_4 Int) (v_v_472_2 Int) (v_v_38_4 Int) (v_v_471_2 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_756 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_756) (= (select |c_#valid| v_idx_756) 1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_749) v_v_472_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_749) (< v_idx_749 c_ULTIMATE.start_main_p2)) (= (select |c_old(#memory_int)| v_idx_747) v_v_4_4) (or (= (select |c_#memory_int| v_idx_750) v_v_473_2) (< v_idx_750 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_754)) (or (< v_idx_753 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_753) v_v_38_4)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_751) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_751)) (or (< v_idx_752 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_752) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_752))) (or (= (select |c_#valid| v_idx_755) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_755)) (or (= (select |c_#memory_int| v_idx_748) v_v_471_2) (<= c_ULTIMATE.start_main_p2 v_idx_748)) (or (= (select |c_#valid| v_idx_757) v_v_44_4) (< v_idx_757 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (<= 1 v_v_472_2) (<= (- (- v_v_472_2) v_v_472_2) (- 2)))))} [2019-01-07 18:58:40,402 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:58:40,925 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:58:40,925 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:58:41,092 WARN L270 ngHoareTripleChecker]: Pre: {2147483595#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_745 Int)) (or (< v_idx_745 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_745) (= (select |#valid| v_idx_745) 1))) (forall ((v_idx_741 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_741)) (< v_idx_741 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_741))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_738 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_738) (< v_idx_738 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_738))))) (forall ((v_prenex_16 Int)) (or (< v_prenex_16 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_16) (<= 0 (select |#memory_int| v_prenex_16)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:58:41,093 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-07 18:58:41,093 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-07 18:58:41,136 WARN L276 ngHoareTripleChecker]: Post: {2147483594#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_749 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_749) (<= 1 (select |#memory_int| v_idx_749)) (< v_idx_749 ULTIMATE.start_main_p2))) (forall ((v_idx_756 Int)) (or (< v_idx_756 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_756) (= (select |#valid| v_idx_756) 1))) (forall ((v_prenex_17 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_17) (< v_prenex_17 ULTIMATE.start_main_p2) (<= 2 (* 2 (select |#memory_int| v_prenex_17))))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_752 Int)) (or (< v_idx_752 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_752) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_752)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 18:58:43,880 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:58:43,881 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:58:43,881 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:58:43,881 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:58:43,881 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (= (select |c_old(#valid)| v_idx_765) v_v_2_4) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_763)) (< v_idx_763 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_763)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_759) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_759)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_762) (= v_v_36_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_762))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_767) (= 1 (select |c_#valid| v_idx_767)) (< v_idx_767 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= (select |c_old(#memory_int)| v_idx_758) v_v_4_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_764) v_v_38_4) (< v_idx_764 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#valid| v_idx_768) v_v_44_4) (< v_idx_768 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_760) (= (select |c_#memory_int| v_idx_760) (- 1)) (< v_idx_760 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_766) (= (select |c_#valid| v_idx_766) v_v_42_4)) (or (< v_idx_761 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_761) v_v_56_4))))) (forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_779 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_421_2 Int) (v_v_423_2 Int) (v_v_424_2 Int) (v_v_431_2 Int) (v_v_430_2 Int) (v_v_429_2 Int) (v_v_425_2 Int) (v_v_427_2 Int) (v_v_428_2 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_769) v_v_421_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_769)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_770) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_770) (< v_idx_770 c_ULTIMATE.start_malloc_ptr)) (<= (- (- v_v_429_2) v_v_429_2) 4) (or (< v_idx_774 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_774) (= (select |c_#valid| v_idx_774) 1)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_778) v_v_430_2) (< v_idx_778 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= v_v_429_2 0) (or (< v_idx_775 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_427_2 (select |c_#valid| v_idx_775))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_776) (= (select |c_#memory_int| v_idx_776) v_v_428_2)) (= v_v_424_2 (select |c_old(#valid)| v_idx_772)) (or (= (select |c_#memory_int| v_idx_777) v_v_429_2) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_777) (< v_idx_777 c_ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_429_2 2)) (<= (- v_v_429_2 (- v_v_429_2)) 0) (or (= v_v_423_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_771)) (< v_idx_771 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_431_2 (select |c_old(#memory_int)| v_idx_779)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_773) (= (select |c_#valid| v_idx_773) v_v_425_2))))))} [2019-01-07 18:58:43,881 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:58:43,881 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:58:43,882 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_790 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_421_2 Int) (v_v_423_2 Int) (v_v_424_2 Int) (v_v_478_2 Int) (v_v_431_2 Int) (v_v_430_2 Int) (v_v_425_2 Int) (v_v_427_2 Int) (v_v_428_2 Int)) (and (or (< v_idx_789 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_789)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_789)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_780) v_v_431_2) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_785 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_785)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_785)) (or (= (select |c_#memory_int| v_idx_783) v_v_430_2) (< v_idx_783 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= 0 (+ v_v_478_2 3)) (or (< v_idx_786 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_423_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_786))) (or (= v_v_425_2 (select |c_#valid| v_idx_788)) (<= c_ULTIMATE.start_malloc_ptr v_idx_788)) (or (< v_idx_782 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_782) v_v_478_2) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_782)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_781) (= (select |c_#memory_int| v_idx_781) v_v_428_2)) (or (= v_v_427_2 (select |c_#valid| v_idx_790)) (< v_idx_790 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_784) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_784) v_v_421_2)) (<= (+ v_v_478_2 1) 0) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_424_2 (select |c_old(#valid)| v_idx_787)) (<= (- v_v_478_2 (- v_v_478_2)) (- 2)) (<= (- (- v_v_478_2) v_v_478_2) 6))))} [2019-01-07 18:58:43,882 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:58:44,257 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:58:44,258 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 18:59:33,595 WARN L181 SmtUtils]: Spent 49.34 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 18:59:33,596 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_768 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (= (select |old(#valid)| v_idx_765) v_v_2_4) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_763)) (< v_idx_763 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_763)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_759) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_759)) (or (<= ULTIMATE.start_malloc_ptr v_idx_762) (= v_v_36_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_762))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_767) (= 1 (select |#valid| v_idx_767)) (< v_idx_767 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= (select |old(#memory_int)| v_idx_758) v_v_4_4) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_764) v_v_38_4) (< v_idx_764 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#valid| v_idx_768) v_v_44_4) (< v_idx_768 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_760) (= (select |#memory_int| v_idx_760) (- 1)) (< v_idx_760 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_766) (= (select |#valid| v_idx_766) v_v_42_4)) (or (< v_idx_761 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_761) v_v_56_4))))) (forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_779 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_421_2 Int) (v_v_423_2 Int) (v_v_424_2 Int) (v_v_431_2 Int) (v_v_430_2 Int) (v_v_429_2 Int) (v_v_425_2 Int) (v_v_427_2 Int) (v_v_428_2 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_769) v_v_421_2) (<= ULTIMATE.start_malloc_ptr v_idx_769)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_770) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_770) (< v_idx_770 ULTIMATE.start_malloc_ptr)) (<= (- (- v_v_429_2) v_v_429_2) 4) (or (< v_idx_774 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_774) (= (select |#valid| v_idx_774) 1)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_778) v_v_430_2) (< v_idx_778 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= v_v_429_2 0) (or (< v_idx_775 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_427_2 (select |#valid| v_idx_775))) (or (<= ULTIMATE.start_malloc_ptr v_idx_776) (= (select |#memory_int| v_idx_776) v_v_428_2)) (= v_v_424_2 (select |old(#valid)| v_idx_772)) (or (= (select |#memory_int| v_idx_777) v_v_429_2) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_777) (< v_idx_777 ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_429_2 2)) (<= (- v_v_429_2 (- v_v_429_2)) 0) (or (= v_v_423_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_771)) (< v_idx_771 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_431_2 (select |old(#memory_int)| v_idx_779)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_773) (= (select |#valid| v_idx_773) v_v_425_2))))))} [2019-01-07 18:59:33,596 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 18:59:33,596 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 18:59:33,844 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (forall ((v_prenex_19 Int)) (or (< v_prenex_19 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_19) (<= (+ (select |#memory_int| v_prenex_19) 1) 0))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_782 Int)) (or (< v_idx_782 ULTIMATE.start_malloc_ptr) (<= (+ (* 2 (select |#memory_int| v_idx_782)) 2) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_782))) (forall ((v_prenex_18 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_18) (< v_prenex_18 ULTIMATE.start_malloc_ptr) (<= 0 (+ (* 2 (select |#memory_int| v_prenex_18)) 6)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_789 Int)) (or (< v_idx_789 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_789)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_789))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_20 Int)) (or (<= 0 (+ (select |#memory_int| v_prenex_20) 3)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_20) (< v_prenex_20 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_785 Int)) (or (< v_idx_785 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_785)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_785))))} [2019-01-07 18:59:41,076 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 18:59:41,076 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 18:59:41,076 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 18:59:41,077 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 18:59:41,077 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_801 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_794) v_v_56_4) (< v_idx_794 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_801 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_801) v_v_44_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_799) (= (select |c_#valid| v_idx_799) v_v_42_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_796) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_796)) (< v_idx_796 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_795) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_795)) (or (= (select |c_#memory_int| v_idx_792) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_792)) (= (select |c_old(#valid)| v_idx_798) v_v_2_4) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_793) (= (select |c_#memory_int| v_idx_793) (- 1)) (< v_idx_793 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_797 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_797))) (= (select |c_old(#memory_int)| v_idx_791) v_v_4_4) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_800) (= (select |c_#valid| v_idx_800) 1) (< v_idx_800 c_ULTIMATE.start_malloc_ptr))))) (forall ((v_idx_812 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_421_2 Int) (v_v_423_2 Int) (v_v_424_2 Int) (v_v_431_2 Int) (v_v_430_2 Int) (v_v_429_2 Int) (v_v_425_2 Int) (v_v_427_2 Int) (v_v_428_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_431_2 (select |c_old(#memory_int)| v_idx_812)) (<= (- (- v_v_429_2) v_v_429_2) 4) (or (< v_idx_808 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_808) v_v_427_2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_802) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_802) v_v_421_2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_806) (= (select |c_#valid| v_idx_806) v_v_425_2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (<= v_v_429_2 0) (or (= v_v_423_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_804)) (< v_idx_804 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_807 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_807) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_807)) (or (< v_idx_803 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_803) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_803) 0)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_809) (= v_v_428_2 (select |c_#memory_int| v_idx_809))) (or (= v_v_430_2 (select |c_#memory_int| v_idx_811)) (< v_idx_811 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_424_2 (select |c_old(#valid)| v_idx_805)) (<= 0 (+ v_v_429_2 2)) (<= (- v_v_429_2 (- v_v_429_2)) 0) (or (= (select |c_#memory_int| v_idx_810) v_v_429_2) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_810) (< v_idx_810 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 18:59:41,077 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 18:59:41,077 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 18:59:41,077 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_820 Int) (v_idx_823 Int) (v_idx_813 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_669_2 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_667_2 Int) (v_v_668_2 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_823 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_823) v_v_44_4)) (<= 0 v_v_668_2) (or (= v_v_669_2 (select |c_#memory_int| v_idx_816)) (< v_idx_816 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_815 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_815) v_v_668_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_815)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_814) v_v_667_2) (<= c_ULTIMATE.start_main_p1 v_idx_814)) (<= (- (- v_v_668_2) v_v_668_2) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_817) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_817) v_v_36_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_821) (= (select |c_#valid| v_idx_821) v_v_42_4)) (= (select |c_old(#valid)| v_idx_820) v_v_2_4) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_813)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_818) 0) (< v_idx_818 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_818)) (or (< v_idx_819 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_819))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_822 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_822) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_822)))))} [2019-01-07 18:59:41,077 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 18:59:41,832 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 18:59:41,832 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:00:31,647 WARN L181 SmtUtils]: Spent 49.81 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 19:00:31,647 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_801 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |#memory_int| v_idx_794) v_v_56_4) (< v_idx_794 (+ ULTIMATE.start_malloc_ptr 1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_801 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_801) v_v_44_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_799) (= (select |#valid| v_idx_799) v_v_42_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_796) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_796)) (< v_idx_796 ULTIMATE.start_malloc_ptr)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_795) v_v_36_4) (<= ULTIMATE.start_malloc_ptr v_idx_795)) (or (= (select |#memory_int| v_idx_792) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_792)) (= (select |old(#valid)| v_idx_798) v_v_2_4) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_793) (= (select |#memory_int| v_idx_793) (- 1)) (< v_idx_793 ULTIMATE.start_malloc_ptr)) (or (< v_idx_797 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_38_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_797))) (= (select |old(#memory_int)| v_idx_791) v_v_4_4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_800) (= (select |#valid| v_idx_800) 1) (< v_idx_800 ULTIMATE.start_malloc_ptr))))) (forall ((v_idx_812 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_421_2 Int) (v_v_423_2 Int) (v_v_424_2 Int) (v_v_431_2 Int) (v_v_430_2 Int) (v_v_429_2 Int) (v_v_425_2 Int) (v_v_427_2 Int) (v_v_428_2 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_431_2 (select |old(#memory_int)| v_idx_812)) (<= (- (- v_v_429_2) v_v_429_2) 4) (or (< v_idx_808 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_808) v_v_427_2)) (or (<= ULTIMATE.start_malloc_ptr v_idx_802) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_802) v_v_421_2)) (or (<= ULTIMATE.start_malloc_ptr v_idx_806) (= (select |#valid| v_idx_806) v_v_425_2)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= v_v_429_2 0) (or (= v_v_423_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_804)) (< v_idx_804 (+ ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_807 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_807) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_807)) (or (< v_idx_803 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_803) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_803) 0)) (or (<= ULTIMATE.start_malloc_ptr v_idx_809) (= v_v_428_2 (select |#memory_int| v_idx_809))) (or (= v_v_430_2 (select |#memory_int| v_idx_811)) (< v_idx_811 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_424_2 (select |old(#valid)| v_idx_805)) (<= 0 (+ v_v_429_2 2)) (<= (- v_v_429_2 (- v_v_429_2)) 0) (or (= (select |#memory_int| v_idx_810) v_v_429_2) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_810) (< v_idx_810 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))))} [2019-01-07 19:00:31,647 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 19:00:31,647 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 19:00:31,839 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_815 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_815))) (< v_idx_815 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_815))) (forall ((v_prenex_21 Int)) (or (<= 0 (select |#memory_int| v_prenex_21)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_21) (< v_prenex_21 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_818 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_818) 0) (< v_idx_818 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_818))) (forall ((v_idx_822 Int)) (or (< v_idx_822 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_822) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_822))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:00:34,766 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:00:34,766 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:00:34,767 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:00:34,767 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:00:34,767 WARN L224 ngHoareTripleChecker]: Pre: {2147483589#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int)) (exists ((v_v_665_2 Int) (v_v_666_2 Int) (v_v_663_2 Int) (v_v_664_2 Int) (v_v_662_2 Int) (v_v_660_2 Int) (v_v_658_2 Int) (v_v_659_2 Int) (v_v_656_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_662_2 (select |c_#valid| v_idx_841)) (< v_idx_841 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= 0 (+ v_v_664_2 3)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= v_v_664_2 0) (= v_v_659_2 (select |c_old(#valid)| v_idx_838)) (or (< v_idx_840 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_840) (= 1 (select |c_#valid| v_idx_840))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_836 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_836)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_836)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_835) (= v_v_656_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_835))) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_843) (< v_idx_843 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_843) v_v_664_2)) (or (< v_idx_837 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_837) v_v_658_2)) (<= (- (- v_v_664_2) v_v_664_2) 6) (or (= (select |c_#valid| v_idx_839) v_v_660_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_839)) (or (= (select |c_#memory_int| v_idx_844) v_v_665_2) (< v_idx_844 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_666_2 (select |c_old(#memory_int)| v_idx_845)) (<= (- v_v_664_2 (- v_v_664_2)) 0) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_842) (= (select |c_#memory_int| v_idx_842) v_v_663_2))))) (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_834 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (= v_v_4_4 (select |c_old(#memory_int)| v_idx_824)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_832) (= (select |c_#valid| v_idx_832) v_v_42_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_829) (< v_idx_829 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_829))) (or (= (select |c_#valid| v_idx_834) v_v_44_4) (< v_idx_834 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_825) v_v_54_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_825)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_830) v_v_38_4) (< v_idx_830 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_828) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_828) v_v_36_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_831)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_826) (< v_idx_826 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_826) (- 1))) (or (= (select |c_#valid| v_idx_833) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_833) (< v_idx_833 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_827) v_v_56_4) (< v_idx_827 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-07 19:00:34,767 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:00:34,767 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:00:34,768 WARN L230 ngHoareTripleChecker]: Post: {2147483588#(forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_846 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_665_2 Int) (v_v_666_2 Int) (v_v_663_2 Int) (v_v_662_2 Int) (v_v_660_2 Int) (v_v_658_2 Int) (v_v_659_2 Int) (v_v_710_2 Int) (v_v_656_2 Int)) (and (or (= 1 (select |c_#valid| v_idx_855)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_855) (< v_idx_855 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_659_2 (select |c_old(#valid)| v_idx_853)) (<= (- v_v_710_2 (- v_v_710_2)) (- 2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= 0 (+ v_v_710_2 4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_852) v_v_658_2) (< v_idx_852 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_656_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_850)) (<= c_ULTIMATE.start_malloc_ptr v_idx_850)) (<= (+ v_v_710_2 1) 0) (or (= (select |c_#memory_int| v_idx_849) v_v_665_2) (< v_idx_849 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= v_v_660_2 (select |c_#valid| v_idx_854)) (<= c_ULTIMATE.start_malloc_ptr v_idx_854)) (<= (- (- v_v_710_2) v_v_710_2) 8) (or (< v_idx_856 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_662_2 (select |c_#valid| v_idx_856))) (or (< v_idx_851 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_851) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_851))) (or (< v_idx_848 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_848) v_v_710_2) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_848)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_847) v_v_663_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_847)) (= v_v_666_2 (select |c_old(#memory_int)| v_idx_846)))))} [2019-01-07 19:00:34,768 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:00:35,090 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:00:35,090 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:01:22,028 WARN L181 SmtUtils]: Spent 46.94 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 19:01:22,029 WARN L270 ngHoareTripleChecker]: Pre: {2147483589#(or (forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int)) (exists ((v_v_665_2 Int) (v_v_666_2 Int) (v_v_663_2 Int) (v_v_664_2 Int) (v_v_662_2 Int) (v_v_660_2 Int) (v_v_658_2 Int) (v_v_659_2 Int) (v_v_656_2 Int)) (and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_662_2 (select |#valid| v_idx_841)) (< v_idx_841 (+ ULTIMATE.start_malloc_ptr 1))) (<= 0 (+ v_v_664_2 3)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= v_v_664_2 0) (= v_v_659_2 (select |old(#valid)| v_idx_838)) (or (< v_idx_840 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_840) (= 1 (select |#valid| v_idx_840))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_836 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_836)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_836)) (or (<= ULTIMATE.start_malloc_ptr v_idx_835) (= v_v_656_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_835))) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_843) (< v_idx_843 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_843) v_v_664_2)) (or (< v_idx_837 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_837) v_v_658_2)) (<= (- (- v_v_664_2) v_v_664_2) 6) (or (= (select |#valid| v_idx_839) v_v_660_2) (<= ULTIMATE.start_malloc_ptr v_idx_839)) (or (= (select |#memory_int| v_idx_844) v_v_665_2) (< v_idx_844 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_666_2 (select |old(#memory_int)| v_idx_845)) (<= (- v_v_664_2 (- v_v_664_2)) 0) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_842) (= (select |#memory_int| v_idx_842) v_v_663_2))))) (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_834 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (= v_v_4_4 (select |old(#memory_int)| v_idx_824)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_832) (= (select |#valid| v_idx_832) v_v_42_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_829) (< v_idx_829 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_829))) (or (= (select |#valid| v_idx_834) v_v_44_4) (< v_idx_834 (+ ULTIMATE.start_malloc_ptr 1))) (or (= (select |#memory_int| v_idx_825) v_v_54_4) (<= ULTIMATE.start_malloc_ptr v_idx_825)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_830) v_v_38_4) (< v_idx_830 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_828) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_828) v_v_36_4)) (= v_v_2_4 (select |old(#valid)| v_idx_831)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_826) (< v_idx_826 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_826) (- 1))) (or (= (select |#valid| v_idx_833) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_833) (< v_idx_833 ULTIMATE.start_malloc_ptr)) (or (= (select |#memory_int| v_idx_827) v_v_56_4) (< v_idx_827 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))))} [2019-01-07 19:01:22,029 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:01:22,029 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:01:22,245 WARN L276 ngHoareTripleChecker]: Post: {2147483588#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_848 Int)) (or (< v_idx_848 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_848) (<= 0 (+ (select |#memory_int| v_idx_848) 4)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_23 Int)) (or (<= 0 (+ (* 2 (select |#memory_int| v_prenex_23)) 8)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_23) (< v_prenex_23 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_prenex_22 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_22) (< v_prenex_22 ULTIMATE.start_malloc_ptr) (<= (+ (select |#memory_int| v_prenex_22) 1) 0))) (forall ((v_prenex_24 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_24)) 2) 0) (< v_prenex_24 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_24))) (forall ((v_idx_855 Int)) (or (= 1 (select |#valid| v_idx_855)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_855) (< v_idx_855 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_851 Int)) (or (< v_idx_851 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_851) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_851)))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:01:32,758 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:01:32,758 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:01:32,758 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:01:32,759 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:01:32,759 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_867 Int) (v_idx_857 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_867 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_867) v_v_44_4)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_863 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_863) v_v_38_4)) (= v_v_2_4 (select |c_old(#valid)| v_idx_864)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_857)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_861) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_861)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_862)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_862) (< v_idx_862 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_860 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_860) v_v_56_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_858) (= (select |c_#memory_int| v_idx_858) v_v_54_4)) (or (< v_idx_859 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_859) (= (select |c_#memory_int| v_idx_859) (- 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_865) (= (select |c_#valid| v_idx_865) v_v_42_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_866) (= (select |c_#valid| v_idx_866) 1) (< v_idx_866 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_878 Int) (v_idx_868 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_665_2 Int) (v_v_666_2 Int) (v_v_663_2 Int) (v_v_664_2 Int) (v_v_662_2 Int) (v_v_660_2 Int) (v_v_658_2 Int) (v_v_659_2 Int) (v_v_656_2 Int)) (and (or (< v_idx_876 c_ULTIMATE.start_malloc_ptr) (= v_v_664_2 (select |c_#memory_int| v_idx_876)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_876)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_659_2 (select |c_old(#valid)| v_idx_871)) (or (= v_v_660_2 (select |c_#valid| v_idx_872)) (<= c_ULTIMATE.start_malloc_ptr v_idx_872)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_869)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_869) (< v_idx_869 c_ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_664_2 3)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= v_v_664_2 0) (or (< v_idx_874 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_662_2 (select |c_#valid| v_idx_874))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_877 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_665_2 (select |c_#memory_int| v_idx_877))) (or (< v_idx_873 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_873)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_873)) (<= (- (- v_v_664_2) v_v_664_2) 6) (<= (- v_v_664_2 (- v_v_664_2)) 0) (or (< v_idx_870 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_658_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_870))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_868) (= v_v_656_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_868))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_875) (= v_v_663_2 (select |c_#memory_int| v_idx_875))) (= (select |c_old(#memory_int)| v_idx_878) v_v_666_2)))))} [2019-01-07 19:01:32,759 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 19:01:32,759 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 19:01:32,759 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_889 Int) (v_idx_879 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_1033_2 Int) (v_v_38_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_1032_2 Int) (v_v_1031_2 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= 0 v_v_1032_2) (or (< v_idx_889 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_889) v_v_44_4)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_882 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_882) v_v_1033_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_888 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_888) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_888)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_883) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_883) v_v_36_4)) (or (= (select |c_#memory_int| v_idx_880) v_v_1031_2) (<= c_ULTIMATE.start_main_p1 v_idx_880)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_887) (= (select |c_#valid| v_idx_887) v_v_42_4)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_881) (= (select |c_#memory_int| v_idx_881) v_v_1032_2) (< v_idx_881 c_ULTIMATE.start_main_p1)) (<= (- (- v_v_1032_2) v_v_1032_2) 0) (or (< v_idx_884 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_884)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_884)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= v_v_38_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_885)) (< v_idx_885 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_879)) (= v_v_2_4 (select |c_old(#valid)| v_idx_886)))))} [2019-01-07 19:01:32,759 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:01:33,264 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:01:33,264 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:02:19,968 WARN L181 SmtUtils]: Spent 46.70 s on a formula simplification that was a NOOP. DAG size: 161 [2019-01-07 19:02:19,968 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_867 Int) (v_idx_857 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_867 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_867) v_v_44_4)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_863 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_863) v_v_38_4)) (= v_v_2_4 (select |old(#valid)| v_idx_864)) (= v_v_4_4 (select |old(#memory_int)| v_idx_857)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_861) v_v_36_4) (<= ULTIMATE.start_malloc_ptr v_idx_861)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_862)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_862) (< v_idx_862 ULTIMATE.start_malloc_ptr)) (or (< v_idx_860 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_860) v_v_56_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_858) (= (select |#memory_int| v_idx_858) v_v_54_4)) (or (< v_idx_859 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_859) (= (select |#memory_int| v_idx_859) (- 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_865) (= (select |#valid| v_idx_865) v_v_42_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_866) (= (select |#valid| v_idx_866) 1) (< v_idx_866 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_878 Int) (v_idx_868 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_665_2 Int) (v_v_666_2 Int) (v_v_663_2 Int) (v_v_664_2 Int) (v_v_662_2 Int) (v_v_660_2 Int) (v_v_658_2 Int) (v_v_659_2 Int) (v_v_656_2 Int)) (and (or (< v_idx_876 ULTIMATE.start_malloc_ptr) (= v_v_664_2 (select |#memory_int| v_idx_876)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_876)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_659_2 (select |old(#valid)| v_idx_871)) (or (= v_v_660_2 (select |#valid| v_idx_872)) (<= ULTIMATE.start_malloc_ptr v_idx_872)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_869)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_869) (< v_idx_869 ULTIMATE.start_malloc_ptr)) (<= 0 (+ v_v_664_2 3)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= v_v_664_2 0) (or (< v_idx_874 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_662_2 (select |#valid| v_idx_874))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_877 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_665_2 (select |#memory_int| v_idx_877))) (or (< v_idx_873 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_873)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_873)) (<= (- (- v_v_664_2) v_v_664_2) 6) (<= (- v_v_664_2 (- v_v_664_2)) 0) (or (< v_idx_870 (+ ULTIMATE.start_malloc_ptr 1)) (= v_v_658_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_870))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_868) (= v_v_656_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_868))) (or (<= ULTIMATE.start_malloc_ptr v_idx_875) (= v_v_663_2 (select |#memory_int| v_idx_875))) (= (select |old(#memory_int)| v_idx_878) v_v_666_2)))))} [2019-01-07 19:02:19,969 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 19:02:19,969 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 19:02:20,184 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (forall ((v_idx_881 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_881) (<= 0 (select |#memory_int| v_idx_881)) (< v_idx_881 ULTIMATE.start_main_p1))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_25 Int)) (or (< v_prenex_25 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_25))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_25))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_884 Int)) (or (< v_idx_884 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_884)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_884))) (forall ((v_idx_888 Int)) (or (< v_idx_888 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_888) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_888))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:02:23,116 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:02:23,116 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:02:23,116 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:02:23,117 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:02:23,117 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_911 Int) (v_idx_901 Int) (v_idx_910 Int) (v_idx_904 Int) (v_idx_905 Int) (v_idx_902 Int) (v_idx_903 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_767_2 Int) (v_v_777_2 Int) (v_v_769_2 Int) (v_v_770_2 Int) (v_v_771_2 Int) (v_v_774_2 Int) (v_v_773_2 Int) (v_v_776_2 Int) (v_v_775_2 Int)) (and (<= v_v_775_2 0) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_906 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_906) (= (select |c_#valid| v_idx_906) 1)) (or (< v_idx_910 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_910) v_v_776_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_902) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_902)) (< v_idx_902 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_901) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_901) v_v_767_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_770_2 (select |c_old(#valid)| v_idx_904)) (or (= (select |c_#valid| v_idx_907) v_v_773_2) (< v_idx_907 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_777_2 (select |c_old(#memory_int)| v_idx_911)) (<= (- v_v_775_2 (- v_v_775_2)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_908) (= (select |c_#memory_int| v_idx_908) v_v_774_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_909) (< v_idx_909 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_909) v_v_775_2)) (or (= v_v_769_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_903)) (< v_idx_903 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_905) (= (select |c_#valid| v_idx_905) v_v_771_2)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_900 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_899 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_899) (= (select |c_#valid| v_idx_899) 1)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_895) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_895)) (< v_idx_895 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_897)) (or (< v_idx_896 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_896) v_v_38_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_890)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_44_4 (select |c_#valid| v_idx_900)) (< v_idx_900 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_894) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_894) v_v_36_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_898) (= (select |c_#valid| v_idx_898) v_v_42_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_891) (= (select |c_#memory_int| v_idx_891) v_v_54_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_892) (< v_idx_892 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_892) (- 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_893 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_893) v_v_56_4))))))} [2019-01-07 19:02:23,117 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:02:23,117 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:02:23,117 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_922 Int) (v_idx_912 Int) (v_idx_920 Int) (v_idx_921 Int) (v_idx_915 Int) (v_idx_916 Int) (v_idx_913 Int) (v_idx_914 Int) (v_idx_919 Int) (v_idx_917 Int) (v_idx_918 Int)) (exists ((v_v_767_2 Int) (v_v_777_2 Int) (v_v_769_2 Int) (v_v_770_2 Int) (v_v_1074_2 Int) (v_v_771_2 Int) (v_v_774_2 Int) (v_v_773_2 Int) (v_v_776_2 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_767_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_916)) (<= c_ULTIMATE.start_malloc_ptr v_idx_916)) (or (< v_idx_914 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_914) (= (select |c_#memory_int| v_idx_914) v_v_1074_2)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_917) (< v_idx_917 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_917))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_919) v_v_770_2) (or (< v_idx_918 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_769_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_918))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_913) (= (select |c_#memory_int| v_idx_913) v_v_774_2)) (<= (- v_v_1074_2 (- v_v_1074_2)) (- 2)) (or (= (select |c_#valid| v_idx_920) v_v_771_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_920)) (or (< v_idx_921 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_921) (= (select |c_#valid| v_idx_921) 1)) (= v_v_777_2 (select |c_old(#memory_int)| v_idx_912)) (<= (+ v_v_1074_2 1) 0) (or (< v_idx_915 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_915) v_v_776_2)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_922 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_773_2 (select |c_#valid| v_idx_922))))))} [2019-01-07 19:02:23,118 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:02:23,529 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:02:23,529 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:02:41,764 WARN L181 SmtUtils]: Spent 18.23 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-07 19:02:41,764 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_911 Int) (v_idx_901 Int) (v_idx_910 Int) (v_idx_904 Int) (v_idx_905 Int) (v_idx_902 Int) (v_idx_903 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_767_2 Int) (v_v_777_2 Int) (v_v_769_2 Int) (v_v_770_2 Int) (v_v_771_2 Int) (v_v_774_2 Int) (v_v_773_2 Int) (v_v_776_2 Int) (v_v_775_2 Int)) (and (<= v_v_775_2 0) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_906 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_906) (= (select |#valid| v_idx_906) 1)) (or (< v_idx_910 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_910) v_v_776_2)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_902) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_902)) (< v_idx_902 ULTIMATE.start_malloc_ptr)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_901) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_901) v_v_767_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= v_v_770_2 (select |old(#valid)| v_idx_904)) (or (= (select |#valid| v_idx_907) v_v_773_2) (< v_idx_907 (+ ULTIMATE.start_malloc_ptr 1))) (= v_v_777_2 (select |old(#memory_int)| v_idx_911)) (<= (- v_v_775_2 (- v_v_775_2)) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_908) (= (select |#memory_int| v_idx_908) v_v_774_2)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_909) (< v_idx_909 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_909) v_v_775_2)) (or (= v_v_769_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_903)) (< v_idx_903 (+ ULTIMATE.start_malloc_ptr 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_905) (= (select |#valid| v_idx_905) v_v_771_2)) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_900 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_54_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_2_4 Int) (v_v_36_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_899 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_899) (= (select |#valid| v_idx_899) 1)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_895) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_895)) (< v_idx_895 ULTIMATE.start_malloc_ptr)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_4 (select |old(#valid)| v_idx_897)) (or (< v_idx_896 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_896) v_v_38_4)) (= v_v_4_4 (select |old(#memory_int)| v_idx_890)) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_44_4 (select |#valid| v_idx_900)) (< v_idx_900 (+ ULTIMATE.start_malloc_ptr 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (<= ULTIMATE.start_malloc_ptr v_idx_894) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_894) v_v_36_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_898) (= (select |#valid| v_idx_898) v_v_42_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_891) (= (select |#memory_int| v_idx_891) v_v_54_4)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_892) (< v_idx_892 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_892) (- 1))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (< v_idx_893 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_893) v_v_56_4))))))} [2019-01-07 19:02:41,764 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:02:41,764 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:02:41,964 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_914 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_914)) 2) 0) (< v_idx_914 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_914))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_26 Int)) (or (<= (+ (select |#memory_int| v_prenex_26) 1) 0) (< v_prenex_26 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_prenex_26))) (forall ((v_idx_921 Int)) (or (< v_idx_921 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_921) (= (select |#valid| v_idx_921) 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_917 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_917) (< v_idx_917 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_917)))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:02:44,959 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:02:44,959 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:02:44,959 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:02:44,959 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:02:44,959 WARN L224 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 Int) (v_idx_934 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_937 Int) (v_idx_938 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_939 Int)) (exists ((v_v_777_2 Int) (v_v_767_2 Int) (v_v_769_2 Int) (v_v_770_2 Int) (v_v_771_2 Int) (v_v_774_2 Int) (v_v_773_2 Int) (v_v_776_2 Int) (v_v_775_2 Int)) (and (or (= (select |c_#valid| v_idx_938) v_v_771_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_938)) (= (select |c_old(#valid)| v_idx_937) v_v_770_2) (<= v_v_775_2 0) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_940 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_940) v_v_773_2)) (or (= (select |c_#valid| v_idx_939) 1) (< v_idx_939 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_939)) (or (< v_idx_936 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_936) v_v_769_2)) (= v_v_777_2 (select |c_old(#memory_int)| v_idx_944)) (or (< v_idx_942 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_942) v_v_775_2) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_942)) (or (< v_idx_943 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_943) v_v_776_2)) (or (= v_v_774_2 (select |c_#memory_int| v_idx_941)) (<= c_ULTIMATE.start_malloc_ptr v_idx_941)) (<= (- v_v_775_2 (- v_v_775_2)) 0) (or (< v_idx_935 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_935)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_935)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_934) (= v_v_767_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_934))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_923 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_926 Int) (v_idx_927 Int) (v_idx_924 Int) (v_idx_925 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_927) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_927)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_924) (= (select |c_#memory_int| v_idx_924) v_v_54_4)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_925 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_925) (= (select |c_#memory_int| v_idx_925) (- 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_932) 1) (< v_idx_932 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_932)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= (select |c_old(#valid)| v_idx_930) v_v_2_4) (or (< v_idx_933 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_933) v_v_44_4)) (or (< v_idx_928 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_928)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_928)) (or (< v_idx_926 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_926) v_v_56_4)) (or (< v_idx_929 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_929) v_v_38_4)) (= (select |c_old(#memory_int)| v_idx_923) v_v_4_4) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_931) (= (select |c_#valid| v_idx_931) v_v_42_4))))))} [2019-01-07 19:02:44,960 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 19:02:44,960 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 19:02:44,960 WARN L230 ngHoareTripleChecker]: Post: {2147483582#(forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 Int) (v_idx_945 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_948 Int) (v_idx_949 Int) (v_idx_946 Int) (v_idx_947 Int)) (exists ((v_v_44_4 Int) (v_v_42_4 Int) (v_v_1122_2 Int) (v_v_1121_2 Int) (v_v_38_4 Int) (v_v_1120_2 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_947) v_v_1121_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_947) (< v_idx_947 c_ULTIMATE.start_main_p1)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_955 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_955) v_v_44_4)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_950) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_950)) (< v_idx_950 c_ULTIMATE.start_malloc_ptr)) (<= (- (- v_v_1121_2) v_v_1121_2) 0) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= 0 v_v_1121_2) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_954 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_954) (= (select |c_#valid| v_idx_954) 1)) (or (= (select |c_#memory_int| v_idx_946) v_v_1120_2) (<= c_ULTIMATE.start_main_p1 v_idx_946)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_951) v_v_38_4) (< v_idx_951 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_945)) (or (= (select |c_#valid| v_idx_953) v_v_42_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_953)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_949) v_v_36_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_949)) (or (= (select |c_#memory_int| v_idx_948) v_v_1122_2) (< v_idx_948 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (= v_v_2_4 (select |c_old(#valid)| v_idx_952)))))} [2019-01-07 19:02:44,960 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:02:45,535 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:02:45,536 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:03:03,461 WARN L181 SmtUtils]: Spent 17.93 s on a formula simplification that was a NOOP. DAG size: 155 [2019-01-07 19:03:03,462 WARN L270 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 Int) (v_idx_934 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_937 Int) (v_idx_938 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_939 Int)) (exists ((v_v_777_2 Int) (v_v_767_2 Int) (v_v_769_2 Int) (v_v_770_2 Int) (v_v_771_2 Int) (v_v_774_2 Int) (v_v_773_2 Int) (v_v_776_2 Int) (v_v_775_2 Int)) (and (or (= (select |#valid| v_idx_938) v_v_771_2) (<= ULTIMATE.start_malloc_ptr v_idx_938)) (= (select |old(#valid)| v_idx_937) v_v_770_2) (<= v_v_775_2 0) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (or (< v_idx_940 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_940) v_v_773_2)) (or (= (select |#valid| v_idx_939) 1) (< v_idx_939 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_939)) (or (< v_idx_936 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_936) v_v_769_2)) (= v_v_777_2 (select |old(#memory_int)| v_idx_944)) (or (< v_idx_942 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_942) v_v_775_2) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_942)) (or (< v_idx_943 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_943) v_v_776_2)) (or (= v_v_774_2 (select |#memory_int| v_idx_941)) (<= ULTIMATE.start_malloc_ptr v_idx_941)) (<= (- v_v_775_2 (- v_v_775_2)) 0) (or (< v_idx_935 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_935)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_935)) (or (<= ULTIMATE.start_malloc_ptr v_idx_934) (= v_v_767_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_934))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_923 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_926 Int) (v_idx_927 Int) (v_idx_924 Int) (v_idx_925 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_44_4 Int) (v_v_54_4 Int) (v_v_42_4 Int) (v_v_38_4 Int) (v_v_56_4 Int) (v_v_36_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_927) v_v_36_4) (<= ULTIMATE.start_malloc_ptr v_idx_927)) (or (<= ULTIMATE.start_malloc_ptr v_idx_924) (= (select |#memory_int| v_idx_924) v_v_54_4)) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_925 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_925) (= (select |#memory_int| v_idx_925) (- 1))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_932) 1) (< v_idx_932 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_932)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (= (select |old(#valid)| v_idx_930) v_v_2_4) (or (< v_idx_933 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#valid| v_idx_933) v_v_44_4)) (or (< v_idx_928 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_928)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_928)) (or (< v_idx_926 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |#memory_int| v_idx_926) v_v_56_4)) (or (< v_idx_929 (+ ULTIMATE.start_malloc_ptr 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_929) v_v_38_4)) (= (select |old(#memory_int)| v_idx_923) v_v_4_4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_931) (= (select |#valid| v_idx_931) v_v_42_4))))))} [2019-01-07 19:03:03,462 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-07 19:03:03,462 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-07 19:03:03,677 WARN L276 ngHoareTripleChecker]: Post: {2147483582#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_950 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_950) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_950)) (< v_idx_950 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_27 Int)) (or (< v_prenex_27 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_27) (<= 0 (select |#memory_int| v_prenex_27)))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_947 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_947))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_947) (< v_idx_947 ULTIMATE.start_main_p1))) (forall ((v_idx_954 Int)) (or (< v_idx_954 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_954) (= (select |#valid| v_idx_954) 1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:03:03,965 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-07 19:03:03,965 INFO L272 AbstractInterpreter]: Visited 4 different actions 12 times. Merged at 1 different actions 4 times. Widened at 1 different actions 1 times. Found 5 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-07 19:03:03,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 19:03:03,966 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-07 19:03:03,966 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 19:03:03,966 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 19:03:03,977 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 19:03:03,977 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-07 19:03:03,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 19:03:03,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 19:03:03,987 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-07 19:03:04,024 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,025 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 40 [2019-01-07 19:03:04,064 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,066 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,067 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 42 [2019-01-07 19:03:04,122 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,124 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,125 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,126 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,127 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 25 [2019-01-07 19:03:04,131 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,143 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,155 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,175 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 18 [2019-01-07 19:03:04,188 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 24 [2019-01-07 19:03:04,198 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 20 treesize of output 34 [2019-01-07 19:03:04,211 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 22 treesize of output 45 [2019-01-07 19:03:04,216 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,233 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,243 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,252 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,280 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 19:03:04,280 INFO L202 ElimStorePlain]: Needed 8 recursive calls to eliminate 4 variables, input treesize:49, output treesize:45 [2019-01-07 19:03:04,286 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 19:03:04,286 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_31|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= |#memory_int| (store (store (store (store |v_#memory_int_31| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0)) (= (select (store .cse1 ULTIMATE.start_main_p3 1) ULTIMATE.start_main_p4) 0)))) [2019-01-07 19:03:04,286 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p1]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-07 19:03:04,359 INFO L701 Elim1Store]: detected not equals via solver [2019-01-07 19:03:04,361 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 45 [2019-01-07 19:03:04,363 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-07 19:03:04,385 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-01-07 19:03:04,385 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:55, output treesize:33 [2019-01-07 19:03:06,412 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-07 19:03:06,413 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_32|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p1]. (let ((.cse0 (select |v_#memory_int_32| ULTIMATE.start_main_p4))) (and (= (store |v_#memory_int_32| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (= (select |v_#memory_int_32| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_32| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_32| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) [2019-01-07 19:03:06,413 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) (- 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-07 19:03:06,476 INFO L273 TraceCheckUtils]: 0: Hoare triple {538#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {545#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))} is VALID [2019-01-07 19:03:06,479 INFO L273 TraceCheckUtils]: 1: Hoare triple {545#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {549#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-07 19:03:06,480 INFO L273 TraceCheckUtils]: 2: Hoare triple {549#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} assume #memory_int[main_p1] >= 0; {549#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-07 19:03:06,482 INFO L273 TraceCheckUtils]: 3: Hoare triple {549#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (exists ((ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} assume !(#memory_int[main_p2] <= 0); {539#false} is VALID [2019-01-07 19:03:06,482 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-07 19:03:06,482 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-07 19:03:06,496 INFO L273 TraceCheckUtils]: 3: Hoare triple {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {539#false} is VALID [2019-01-07 19:03:06,497 INFO L273 TraceCheckUtils]: 2: Hoare triple {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 19:03:06,498 INFO L273 TraceCheckUtils]: 1: Hoare triple {562#(<= (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {541#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 19:03:06,500 INFO L273 TraceCheckUtils]: 0: Hoare triple {538#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {562#(<= (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2) 0)} is VALID [2019-01-07 19:03:06,500 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 19:03:06,520 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-07 19:03:06,520 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-07 19:03:06,520 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-07 19:03:06,521 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-07 19:03:06,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-07 19:03:06,521 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-07 19:03:06,525 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 19:03:06,525 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-07 19:03:06,525 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-07 19:03:06,525 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-07 19:03:06,526 INFO L87 Difference]: Start difference. First operand 18 states and 50 transitions. Second operand 4 states. [2019-01-07 19:03:06,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 19:03:06,665 INFO L93 Difference]: Finished difference Result 22 states and 58 transitions. [2019-01-07 19:03:06,666 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-07 19:03:06,666 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-07 19:03:06,666 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-07 19:03:06,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 19:03:06,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 20 transitions. [2019-01-07 19:03:06,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-07 19:03:06,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 20 transitions. [2019-01-07 19:03:06,667 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 20 transitions. [2019-01-07 19:03:06,685 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-07 19:03:06,686 INFO L225 Difference]: With dead ends: 22 [2019-01-07 19:03:06,686 INFO L226 Difference]: Without dead ends: 21 [2019-01-07 19:03:06,687 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 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 19:03:06,687 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2019-01-07 19:03:06,719 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2019-01-07 19:03:06,719 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-07 19:03:06,719 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand 20 states. [2019-01-07 19:03:06,719 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand 20 states. [2019-01-07 19:03:06,719 INFO L87 Difference]: Start difference. First operand 21 states. Second operand 20 states. [2019-01-07 19:03:06,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 19:03:06,722 INFO L93 Difference]: Finished difference Result 21 states and 57 transitions. [2019-01-07 19:03:06,722 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 57 transitions. [2019-01-07 19:03:06,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 19:03:06,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 19:03:06,723 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 21 states. [2019-01-07 19:03:06,723 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 21 states. [2019-01-07 19:03:06,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-07 19:03:06,724 INFO L93 Difference]: Finished difference Result 21 states and 57 transitions. [2019-01-07 19:03:06,725 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 57 transitions. [2019-01-07 19:03:06,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-07 19:03:06,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-07 19:03:06,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-07 19:03:06,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-07 19:03:06,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2019-01-07 19:03:06,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 57 transitions. [2019-01-07 19:03:06,727 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 57 transitions. Word has length 4 [2019-01-07 19:03:06,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-07 19:03:06,727 INFO L480 AbstractCegarLoop]: Abstraction has 20 states and 57 transitions. [2019-01-07 19:03:06,727 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-07 19:03:06,727 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 57 transitions. [2019-01-07 19:03:06,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-07 19:03:06,728 INFO L394 BasicCegarLoop]: Found error trace [2019-01-07 19:03:06,728 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-07 19:03:06,728 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-01-07 19:03:06,728 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-07 19:03:06,728 INFO L82 PathProgramCache]: Analyzing trace with hash 939226, now seen corresponding path program 1 times [2019-01-07 19:03:06,728 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-07 19:03:06,729 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 19:03:06,729 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-07 19:03:06,729 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-07 19:03:06,729 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-07 19:03:06,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-07 19:03:06,814 INFO L273 TraceCheckUtils]: 0: Hoare triple {667#true} havoc main_p1, main_p2, main_p3, main_p4;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0]; {669#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-07 19:03:06,815 INFO L273 TraceCheckUtils]: 1: Hoare triple {669#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {670#(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 19:03:06,816 INFO L273 TraceCheckUtils]: 2: Hoare triple {670#(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]; {671#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-07 19:03:06,817 INFO L273 TraceCheckUtils]: 3: Hoare triple {671#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {668#false} is VALID [2019-01-07 19:03:06,817 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 19:03:06,818 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-07 19:03:06,818 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-07 19:03:06,818 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-07 19:03:06,818 INFO L207 CegarAbsIntRunner]: [0], [10], [16], [19] [2019-01-07 19:03:06,821 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-07 19:03:06,821 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-07 19:03:09,241 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:03:09,241 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:03:09,241 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:03:09,242 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:03:09,242 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_982 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_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_36_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_976)) (<= c_ULTIMATE.start_malloc_ptr v_idx_976)) (or (< v_idx_977 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_977) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_977)) (or (< v_idx_982 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_982) v_v_44_5)) (or (= 1 (select |c_#valid| v_idx_981)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_981) (< v_idx_981 c_ULTIMATE.start_malloc_ptr)) (= v_v_2_5 (select |c_old(#valid)| v_idx_979)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_972) v_v_4_5) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_980) v_v_42_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_980)) (or (= v_v_54_5 (select |c_#memory_int| v_idx_973)) (<= c_ULTIMATE.start_malloc_ptr v_idx_973)) (or (< v_idx_975 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_975) v_v_56_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_978) v_v_38_5) (< v_idx_978 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= 0 (select |c_#memory_int| v_idx_974)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_974) (< v_idx_974 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 19:03:09,242 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:03:09,242 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:03:09,242 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_993 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_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (= v_v_2_5 (select |c_old(#valid)| v_idx_990)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_984) (= (select |c_#memory_int| v_idx_984) v_v_54_5)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_985) (< v_idx_985 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_985) (- 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_992) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_992) (< v_idx_992 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_988 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_988)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_988)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_987) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_987) v_v_36_5)) (or (< v_idx_993 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_993) v_v_44_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_983)) (or (< v_idx_989 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_989) v_v_38_5)) (or (= v_v_42_5 (select |c_#valid| v_idx_991)) (<= c_ULTIMATE.start_malloc_ptr v_idx_991)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_986) v_v_56_5) (< v_idx_986 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 19:03:09,242 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:03:09,626 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:03:09,626 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:03:09,661 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_977 Int)) (or (< v_idx_977 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_977) 0) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_977))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_981 Int)) (or (= 1 (select |#valid| v_idx_981)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_981) (< v_idx_981 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_974 Int)) (or (= 0 (select |#memory_int| v_idx_974)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_974) (< v_idx_974 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:03:09,662 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:03:09,662 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:03:09,909 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_992 Int)) (or (= (select |#valid| v_idx_992) 1) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_992) (< v_idx_992 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_988 Int)) (or (< v_idx_988 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_988)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_988))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_985 Int)) (or (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_985) (< v_idx_985 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_985) (- 1)))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:03:12,276 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:03:12,276 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:03:12,276 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:03:12,277 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:03:12,277 WARN L224 ngHoareTripleChecker]: Pre: {2147483577#(forall ((v_idx_995 Int) (v_idx_1004 Int) (v_idx_996 Int) (v_idx_1003 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_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_998) v_v_36_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_998)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_999)) (< v_idx_999 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_999)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_995) v_v_54_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_995)) (or (= (select |c_#valid| v_idx_1003) 1) (< v_idx_1003 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1003)) (= v_v_2_5 (select |c_old(#valid)| v_idx_1001)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (< v_idx_997 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_997) v_v_56_5)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1002) (= v_v_42_5 (select |c_#valid| v_idx_1002))) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_994)) (or (= 0 (select |c_#memory_int| v_idx_996)) (< v_idx_996 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_996)) (or (< v_idx_1000 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1000))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= v_v_44_5 (select |c_#valid| v_idx_1004)) (< v_idx_1004 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 19:03:12,277 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 19:03:12,277 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 19:03:12,277 WARN L230 ngHoareTripleChecker]: Post: {2147483576#(forall ((v_idx_1005 Int) (v_idx_1015 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_73_5 Int) (v_v_72_5 Int) (v_v_71_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_1012) v_v_2_5) (or (= v_v_72_5 (select |c_#memory_int| v_idx_1007)) (< v_idx_1007 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1007)) (<= (- v_v_72_5 (- v_v_72_5)) (- 2)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_1006) (= (select |c_#memory_int| v_idx_1006) v_v_71_5)) (or (< v_idx_1010 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1010) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1010) 0)) (or (= (select |c_#valid| v_idx_1013) v_v_42_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1013)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1009) v_v_36_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1009)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1005)) (or (= 1 (select |c_#valid| v_idx_1014)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1014) (< v_idx_1014 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_1008) v_v_73_5) (< v_idx_1008 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_1015 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1015) v_v_44_5)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (<= (+ v_v_72_5 1) 0) (or (= v_v_38_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1011)) (< v_idx_1011 (+ c_ULTIMATE.start_malloc_ptr 1))))))} [2019-01-07 19:03:12,277 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:03:12,808 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:03:12,808 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:03:12,842 WARN L270 ngHoareTripleChecker]: Pre: {2147483577#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_999 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_999)) (< v_idx_999 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_999))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_996 Int)) (or (= 0 (select |#memory_int| v_idx_996)) (< v_idx_996 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_996))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1003 Int)) (or (= (select |#valid| v_idx_1003) 1) (< v_idx_1003 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1003))))} [2019-01-07 19:03:12,842 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-07 19:03:12,843 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-07 19:03:13,070 WARN L276 ngHoareTripleChecker]: Post: {2147483576#(and (forall ((v_prenex_28 Int)) (or (< v_prenex_28 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_28) (<= (+ (* 2 (select |#memory_int| v_prenex_28)) 2) 0))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_1007 Int)) (or (< v_idx_1007 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_1007) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1007))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1010 Int)) (or (< v_idx_1010 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1010) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1010) 0))) (forall ((v_idx_1014 Int)) (or (= 1 (select |#valid| v_idx_1014)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1014) (< v_idx_1014 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:03:15,166 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:03:15,167 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:03:15,167 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:03:15,167 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:03:15,167 WARN L224 ngHoareTripleChecker]: Pre: {2147483575#(forall ((v_idx_1016 Int) (v_idx_1026 Int) (v_idx_1025 Int) (v_idx_1024 Int) (v_idx_1023 Int) (v_idx_1022 Int) (v_idx_1021 Int) (v_idx_1020 Int) (v_idx_1019 Int) (v_idx_1018 Int) (v_idx_1017 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1021)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1021) (< v_idx_1021 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_1017) v_v_54_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1017)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1022) v_v_38_5) (< v_idx_1022 (+ c_ULTIMATE.start_malloc_ptr 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_1023)) (or (< v_idx_1026 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1026) v_v_44_5)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_1025 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1025) (= 1 (select |c_#valid| v_idx_1025))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_1024) v_v_42_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1024)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1020) v_v_36_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1020)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1016)) (or (= 0 (select |c_#memory_int| v_idx_1018)) (< v_idx_1018 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1018)) (or (= (select |c_#memory_int| v_idx_1019) v_v_56_5) (< v_idx_1019 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 19:03:15,167 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 19:03:15,168 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 19:03:15,168 WARN L230 ngHoareTripleChecker]: Post: {2147483574#(forall ((v_idx_1027 Int) (v_idx_1037 Int) (v_idx_1036 Int) (v_idx_1035 Int) (v_idx_1034 Int) (v_idx_1033 Int) (v_idx_1032 Int) (v_idx_1031 Int) (v_idx_1030 Int) (v_idx_1029 Int) (v_idx_1028 Int)) (exists ((v_v_4_5 Int) (v_v_74_5 Int) (v_v_42_5 Int) (v_v_76_5 Int) (v_v_75_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1027)) (= (select |c_old(#valid)| v_idx_1034) v_v_2_5) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1030 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_1030) v_v_76_5)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_1037 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_44_5 (select |c_#valid| v_idx_1037))) (or (= (select |c_#memory_int| v_idx_1028) v_v_74_5) (<= c_ULTIMATE.start_main_p2 v_idx_1028)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1031) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1031) v_v_36_5)) (or (< v_idx_1032 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1032) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1032))) (or (< v_idx_1029 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_1029) v_v_75_5) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1029)) (or (= v_v_42_5 (select |c_#valid| v_idx_1035)) (<= c_ULTIMATE.start_malloc_ptr v_idx_1035)) (or (< v_idx_1036 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1036) (= 1 (select |c_#valid| v_idx_1036))) (or (< v_idx_1033 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1033) v_v_38_5)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr))))} [2019-01-07 19:03:15,168 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:03:15,534 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:03:15,535 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:03:15,770 WARN L270 ngHoareTripleChecker]: Pre: {2147483575#(and (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_1018 Int)) (or (= 0 (select |#memory_int| v_idx_1018)) (< v_idx_1018 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1018))) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1025 Int)) (or (< v_idx_1025 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1025) (= 1 (select |#valid| v_idx_1025)))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1021 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1021)) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1021) (< v_idx_1021 ULTIMATE.start_malloc_ptr))))} [2019-01-07 19:03:15,770 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-07 19:03:15,770 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 19:03:15,804 WARN L276 ngHoareTripleChecker]: Post: {2147483574#(and (forall ((v_idx_1036 Int)) (or (< v_idx_1036 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1036) (= 1 (select |#valid| v_idx_1036)))) (<= (- (- ULTIMATE.start_main_p4) (- ULTIMATE.start_malloc_ptr)) 0) (<= (- ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p4) (forall ((v_idx_1032 Int)) (or (< v_idx_1032 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_malloc_ptr 1) v_idx_1032) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1032)))) (<= ULTIMATE.start_main_p4 ULTIMATE.start_malloc_ptr))} [2019-01-07 19:03:22,082 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-07 19:03:22,082 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-07 19:03:22,082 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-07 19:03:22,082 WARN L223 ngHoareTripleChecker]: -- [2019-01-07 19:03:22,083 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(or (forall ((v_idx_1038 Int) (v_idx_1048 Int) (v_idx_1047 Int) (v_idx_1046 Int) (v_idx_1045 Int) (v_idx_1044 Int) (v_idx_1043 Int) (v_idx_1042 Int) (v_idx_1041 Int) (v_idx_1040 Int) (v_idx_1039 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_1048 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1048) v_v_44_5)) (= (select |c_old(#valid)| v_idx_1045) v_v_2_5) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_1039) v_v_54_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1039)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1047) (< v_idx_1047 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_1047))) (or (< v_idx_1043 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1043) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1043))) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1038)) (or (< v_idx_1040 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_1040) 0) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1040)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1042) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1042) v_v_36_5)) (or (< v_idx_1041 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_1041) v_v_56_5)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1046) (= (select |c_#valid| v_idx_1046) v_v_42_5)) (or (< v_idx_1044 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_38_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1044))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr)))) (forall ((v_idx_1049 Int) (v_idx_1059 Int) (v_idx_1058 Int) (v_idx_1057 Int) (v_idx_1056 Int) (v_idx_1055 Int) (v_idx_1054 Int) (v_idx_1053 Int) (v_idx_1052 Int) (v_idx_1051 Int) (v_idx_1050 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1049)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_54_5 (select |c_#memory_int| v_idx_1050)) (<= c_ULTIMATE.start_malloc_ptr v_idx_1050)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1051) (< v_idx_1051 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_1051) (- 1))) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1053) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1053) v_v_36_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1055) v_v_38_5) (< v_idx_1055 (+ c_ULTIMATE.start_malloc_ptr 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (= (select |c_#valid| v_idx_1058) 1) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1058) (< v_idx_1058 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_1057) v_v_42_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1057)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1054) 0) (< v_idx_1054 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1054)) (= (select |c_old(#valid)| v_idx_1056) v_v_2_5) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1052 (+ c_ULTIMATE.start_malloc_ptr 1)) (= v_v_56_5 (select |c_#memory_int| v_idx_1052))) (or (= v_v_44_5 (select |c_#valid| v_idx_1059)) (< v_idx_1059 (+ c_ULTIMATE.start_malloc_ptr 1)))))))} [2019-01-07 19:03:22,083 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-07 19:03:22,083 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-07 19:03:22,083 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(or (forall ((v_idx_1069 Int) (v_idx_1068 Int) (v_idx_1067 Int) (v_idx_1066 Int) (v_idx_1065 Int) (v_idx_1064 Int) (v_idx_1063 Int) (v_idx_1062 Int) (v_idx_1061 Int) (v_idx_1060 Int) (v_idx_1070 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (or (= (select |c_#valid| v_idx_1068) v_v_42_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1068)) (or (< v_idx_1069 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_1069)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1069)) (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1064) v_v_36_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1064)) (or (< v_idx_1062 c_ULTIMATE.start_malloc_ptr) (= (- 1) (select |c_#memory_int| v_idx_1062)) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1062)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_1070) v_v_44_5) (< v_idx_1070 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_1067) v_v_2_5) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1060)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1066) v_v_38_5) (< v_idx_1066 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (< v_idx_1063 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#memory_int| v_idx_1063) v_v_56_5)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1065) (< v_idx_1065 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1065))) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_1061) v_v_54_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1061))))) (forall ((v_idx_1079 Int) (v_idx_1078 Int) (v_idx_1077 Int) (v_idx_1076 Int) (v_idx_1075 Int) (v_idx_1074 Int) (v_idx_1073 Int) (v_idx_1072 Int) (v_idx_1071 Int) (v_idx_1081 Int) (v_idx_1080 Int)) (exists ((v_v_4_5 Int) (v_v_42_5 Int) (v_v_54_5 Int) (v_v_38_5 Int) (v_v_36_5 Int) (v_v_56_5 Int) (v_v_2_5 Int) (v_v_44_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p4) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_1071)) (<= (- c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1075) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1075) v_v_36_5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1079) (= v_v_42_5 (select |c_#valid| v_idx_1079))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1077) v_v_38_5) (< v_idx_1077 (+ c_ULTIMATE.start_malloc_ptr 1))) (= (select |c_old(#valid)| v_idx_1078) v_v_2_5) (or (< v_idx_1081 (+ c_ULTIMATE.start_malloc_ptr 1)) (= (select |c_#valid| v_idx_1081) v_v_44_5)) (or (= (select |c_#memory_int| v_idx_1074) v_v_56_5) (< v_idx_1074 (+ c_ULTIMATE.start_malloc_ptr 1))) (or (= (select |c_#memory_int| v_idx_1072) v_v_54_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_1072)) (<= c_ULTIMATE.start_main_p4 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1076) (< v_idx_1076 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1076) 0)) (or (= (- 2) (select |c_#memory_int| v_idx_1073)) (< v_idx_1073 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1073)) (or (<= (+ c_ULTIMATE.start_malloc_ptr 1) v_idx_1080) (< v_idx_1080 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_1080)))))))} [2019-01-07 19:03:22,083 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-07 19:03:22,514 WARN L268 ngHoareTripleChecker]: -- [2019-01-07 19:03:22,514 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-07 19:03:25,365 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-07 19:03:25,367 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 19:03:25,371 INFO L168 Benchmark]: Toolchain (without parser) took 685971.81 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 881.3 MB). Free memory was 1.4 GB in the beginning and 1.6 GB in the end (delta: -161.3 MB). Peak memory consumption was 720.1 MB. Max. memory is 7.1 GB. [2019-01-07 19:03:25,372 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 19:03:25,372 INFO L168 Benchmark]: Boogie Procedure Inliner took 68.90 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 19:03:25,373 INFO L168 Benchmark]: Boogie Preprocessor took 29.20 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-07 19:03:25,373 INFO L168 Benchmark]: RCFGBuilder took 726.75 ms. Allocated memory is still 1.5 GB. Free memory was 1.4 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 19:03:25,374 INFO L168 Benchmark]: TraceAbstraction took 685142.28 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 881.3 MB). Free memory was 1.4 GB in the beginning and 1.6 GB in the end (delta: -182.4 MB). Peak memory consumption was 698.9 MB. Max. memory is 7.1 GB. [2019-01-07 19:03:25,377 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.4 GB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 68.90 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Preprocessor took 29.20 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. * RCFGBuilder took 726.75 ms. Allocated memory is still 1.5 GB. Free memory was 1.4 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 685142.28 ms. Allocated memory was 1.5 GB in the beginning and 2.4 GB in the end (delta: 881.3 MB). Free memory was 1.4 GB in the beginning and 1.6 GB in the end (delta: -182.4 MB). Peak memory consumption was 698.9 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...