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-7-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b7bd044-m [2019-01-18 14:52:15,794 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-18 14:52:15,796 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-18 14:52:15,809 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-18 14:52:15,809 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-18 14:52:15,810 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-18 14:52:15,812 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-18 14:52:15,814 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-18 14:52:15,816 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-18 14:52:15,817 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-18 14:52:15,818 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-18 14:52:15,818 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-18 14:52:15,819 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-18 14:52:15,820 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-18 14:52:15,822 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-18 14:52:15,823 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-18 14:52:15,823 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-18 14:52:15,826 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-18 14:52:15,828 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-18 14:52:15,830 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-18 14:52:15,831 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-18 14:52:15,833 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-18 14:52:15,836 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-18 14:52:15,836 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-18 14:52:15,836 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-18 14:52:15,837 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-18 14:52:15,838 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-18 14:52:15,839 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-18 14:52:15,840 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-18 14:52:15,842 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-18 14:52:15,842 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-18 14:52:15,843 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-18 14:52:15,843 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-18 14:52:15,843 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-18 14:52:15,844 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-18 14:52:15,845 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-18 14:52:15,845 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf [2019-01-18 14:52:15,871 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-18 14:52:15,872 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-18 14:52:15,873 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-18 14:52:15,874 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-18 14:52:15,874 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-18 14:52:15,874 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-18 14:52:15,874 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-18 14:52:15,875 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-18 14:52:15,875 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-18 14:52:15,876 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-18 14:52:15,876 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-18 14:52:15,876 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-18 14:52:15,876 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-18 14:52:15,877 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-18 14:52:15,877 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-18 14:52:15,878 INFO L133 SettingsManager]: * Use SBE=true [2019-01-18 14:52:15,878 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-18 14:52:15,878 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-18 14:52:15,878 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-18 14:52:15,878 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-18 14:52:15,879 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-18 14:52:15,879 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-18 14:52:15,879 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-18 14:52:15,879 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-18 14:52:15,879 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-18 14:52:15,880 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-18 14:52:15,881 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-18 14:52:15,882 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-18 14:52:15,882 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-18 14:52:15,882 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-18 14:52:15,882 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:52:15,883 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-18 14:52:15,883 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-18 14:52:15,883 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-18 14:52:15,883 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-18 14:52:15,884 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-18 14:52:15,884 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-18 14:52:15,884 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-18 14:52:15,884 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-18 14:52:15,943 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-18 14:52:15,960 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-18 14:52:15,964 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-18 14:52:15,968 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-18 14:52:15,969 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-18 14:52:15,969 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-7-unlimited.bpl [2019-01-18 14:52:15,970 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-7-unlimited.bpl' [2019-01-18 14:52:16,039 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-18 14:52:16,041 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-18 14:52:16,041 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-18 14:52:16,042 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-18 14:52:16,042 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-18 14:52:16,062 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,077 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,112 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-18 14:52:16,113 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-18 14:52:16,113 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-18 14:52:16,113 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-18 14:52:16,125 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,125 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,128 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,128 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,132 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,137 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,138 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... [2019-01-18 14:52:16,141 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-18 14:52:16,141 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-18 14:52:16,141 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-18 14:52:16,142 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-18 14:52:16,143 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:52:16,211 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-18 14:52:16,212 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-18 14:52:17,124 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-18 14:52:17,125 INFO L286 CfgBuilder]: Removed 17 assue(true) statements. [2019-01-18 14:52:17,126 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:52:17 BoogieIcfgContainer [2019-01-18 14:52:17,126 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-18 14:52:17,128 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-18 14:52:17,128 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-18 14:52:17,131 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-18 14:52:17,132 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:52:16" (1/2) ... [2019-01-18 14:52:17,133 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7799bcc5 and model type speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.01 02:52:17, skipping insertion in model container [2019-01-18 14:52:17,133 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-7-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:52:17" (2/2) ... [2019-01-18 14:52:17,135 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-7-unlimited.bpl [2019-01-18 14:52:17,145 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-18 14:52:17,154 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2019-01-18 14:52:17,172 INFO L257 AbstractCegarLoop]: Starting to check reachability of 7 error locations. [2019-01-18 14:52:17,206 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-18 14:52:17,206 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-18 14:52:17,207 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-18 14:52:17,207 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-18 14:52:17,207 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-18 14:52:17,207 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-18 14:52:17,207 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-18 14:52:17,208 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-18 14:52:17,236 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states. [2019-01-18 14:52:17,247 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-18 14:52:17,248 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:17,249 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-18 14:52:17,252 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:17,260 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:17,260 INFO L82 PathProgramCache]: Analyzing trace with hash 992, now seen corresponding path program 1 times [2019-01-18 14:52:17,263 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:17,320 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:17,320 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:17,320 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:17,321 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:17,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:17,591 INFO L273 TraceCheckUtils]: 0: Hoare triple {20#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {22#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:52:17,608 INFO L273 TraceCheckUtils]: 1: Hoare triple {22#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {21#false} is VALID [2019-01-18 14:52:17,611 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:17,613 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:52:17,614 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:52:17,614 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:52:17,620 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:52:17,645 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:17,649 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:52:17,685 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2 edges. 2 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:17,685 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:52:17,696 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:52:17,697 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:52:17,700 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 3 states. [2019-01-18 14:52:18,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,032 INFO L93 Difference]: Finished difference Result 33 states and 45 transitions. [2019-01-18 14:52:18,032 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:52:18,032 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:52:18,032 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:18,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:52:18,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2019-01-18 14:52:18,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:52:18,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 45 transitions. [2019-01-18 14:52:18,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 45 transitions. [2019-01-18 14:52:18,265 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:18,278 INFO L225 Difference]: With dead ends: 33 [2019-01-18 14:52:18,278 INFO L226 Difference]: Without dead ends: 28 [2019-01-18 14:52:18,282 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:52:18,298 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2019-01-18 14:52:18,312 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 16. [2019-01-18 14:52:18,312 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:18,313 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand 16 states. [2019-01-18 14:52:18,313 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 16 states. [2019-01-18 14:52:18,314 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 16 states. [2019-01-18 14:52:18,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,319 INFO L93 Difference]: Finished difference Result 28 states and 40 transitions. [2019-01-18 14:52:18,319 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 40 transitions. [2019-01-18 14:52:18,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:18,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:18,320 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand 28 states. [2019-01-18 14:52:18,320 INFO L87 Difference]: Start difference. First operand 16 states. Second operand 28 states. [2019-01-18 14:52:18,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,325 INFO L93 Difference]: Finished difference Result 28 states and 40 transitions. [2019-01-18 14:52:18,325 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 40 transitions. [2019-01-18 14:52:18,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:18,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:18,326 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:18,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:18,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-01-18 14:52:18,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 29 transitions. [2019-01-18 14:52:18,331 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 29 transitions. Word has length 2 [2019-01-18 14:52:18,331 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:18,331 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 29 transitions. [2019-01-18 14:52:18,331 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:52:18,333 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 29 transitions. [2019-01-18 14:52:18,333 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:18,333 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:18,334 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:18,334 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:18,334 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:18,335 INFO L82 PathProgramCache]: Analyzing trace with hash 30816, now seen corresponding path program 1 times [2019-01-18 14:52:18,335 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:18,338 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:18,338 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:18,338 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:18,338 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:18,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:18,465 INFO L273 TraceCheckUtils]: 0: Hoare triple {134#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {136#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:52:18,467 INFO L273 TraceCheckUtils]: 1: Hoare triple {136#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {136#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:52:18,469 INFO L273 TraceCheckUtils]: 2: Hoare triple {136#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {135#false} is VALID [2019-01-18 14:52:18,469 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:18,469 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:52:18,470 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:52:18,470 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:52:18,472 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:52:18,473 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:18,473 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:52:18,503 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:18,503 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:52:18,503 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:52:18,504 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:52:18,504 INFO L87 Difference]: Start difference. First operand 16 states and 29 transitions. Second operand 3 states. [2019-01-18 14:52:18,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:18,970 INFO L93 Difference]: Finished difference Result 28 states and 40 transitions. [2019-01-18 14:52:18,970 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:52:18,970 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:52:18,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:18,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:52:18,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2019-01-18 14:52:18,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:52:18,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2019-01-18 14:52:18,974 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 40 transitions. [2019-01-18 14:52:19,059 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:19,061 INFO L225 Difference]: With dead ends: 28 [2019-01-18 14:52:19,061 INFO L226 Difference]: Without dead ends: 27 [2019-01-18 14:52:19,062 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:52:19,063 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2019-01-18 14:52:19,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 17. [2019-01-18 14:52:19,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:19,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 17 states. [2019-01-18 14:52:19,074 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 17 states. [2019-01-18 14:52:19,074 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 17 states. [2019-01-18 14:52:19,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:19,077 INFO L93 Difference]: Finished difference Result 27 states and 39 transitions. [2019-01-18 14:52:19,078 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 39 transitions. [2019-01-18 14:52:19,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:19,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:19,079 INFO L74 IsIncluded]: Start isIncluded. First operand 17 states. Second operand 27 states. [2019-01-18 14:52:19,079 INFO L87 Difference]: Start difference. First operand 17 states. Second operand 27 states. [2019-01-18 14:52:19,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:19,082 INFO L93 Difference]: Finished difference Result 27 states and 39 transitions. [2019-01-18 14:52:19,082 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 39 transitions. [2019-01-18 14:52:19,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:19,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:19,083 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:19,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:19,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2019-01-18 14:52:19,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 30 transitions. [2019-01-18 14:52:19,085 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 30 transitions. Word has length 3 [2019-01-18 14:52:19,085 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:19,085 INFO L480 AbstractCegarLoop]: Abstraction has 17 states and 30 transitions. [2019-01-18 14:52:19,086 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:52:19,086 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 30 transitions. [2019-01-18 14:52:19,086 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:19,086 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:19,086 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:19,087 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:19,087 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:19,087 INFO L82 PathProgramCache]: Analyzing trace with hash 30380, now seen corresponding path program 1 times [2019-01-18 14:52:19,088 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:19,089 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:19,089 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:19,089 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:19,089 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:19,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:19,208 INFO L273 TraceCheckUtils]: 0: Hoare triple {242#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {244#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:52:19,210 INFO L273 TraceCheckUtils]: 1: Hoare triple {244#(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]; {245#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:52:19,211 INFO L273 TraceCheckUtils]: 2: Hoare triple {245#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {243#false} is VALID [2019-01-18 14:52:19,211 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:19,212 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:19,212 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:19,213 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:52:19,214 INFO L207 CegarAbsIntRunner]: [0], [18], [31] [2019-01-18 14:52:19,276 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:19,277 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:52:23,643 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:23,643 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:23,644 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:23,645 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:23,646 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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_2_1 Int) (v_v_72_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (= (select |c_old(#valid)| v_idx_20) v_v_2_1) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_24)) (or (= (select |c_#memory_int| v_idx_27) v_v_95_1) (< v_idx_27 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_25) (= v_v_93_1 (select |c_#memory_int| v_idx_25))) (or (< v_idx_22 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_22) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_22)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_18)) (< v_idx_18 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_18)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_17) v_v_66_1) (<= c_ULTIMATE.start_main_p7 v_idx_17)) (or (< v_idx_26 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_26) (= (select |c_#memory_int| v_idx_26) 0)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_23) v_v_74_1) (< v_idx_23 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#valid| v_idx_21) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_21)) (or (< v_idx_19 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_19) v_v_68_1)))))} [2019-01-18 14:52:23,646 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:23,647 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:52:23,647 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_66_1 Int) (v_v_97_1 Int) (v_v_98_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_96_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_29)) (< v_idx_29 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_29)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_34) v_v_74_1) (< v_idx_34 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_66_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_28)) (<= c_ULTIMATE.start_main_p7 v_idx_28)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_35)) (or (= (select |c_#memory_int| v_idx_38) v_v_98_1) (< v_idx_38 (+ c_ULTIMATE.start_main_p4 1))) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_37) (< v_idx_37 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_37) v_v_97_1)) (or (<= c_ULTIMATE.start_main_p4 v_idx_36) (= (select |c_#memory_int| v_idx_36) v_v_96_1)) (or (<= c_ULTIMATE.start_main_p7 v_idx_32) (= (select |c_#valid| v_idx_32) v_v_72_1)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_31)) (or (< v_idx_30 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_30))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_33) (< v_idx_33 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_33))))))} [2019-01-18 14:52:23,648 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:23,979 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:23,979 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:24,320 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_18 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_18)) (< v_idx_18 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_18))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_22 Int)) (or (< v_idx_22 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_22) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_22))) (forall ((v_idx_26 Int)) (or (< v_idx_26 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_26) (= (select |#memory_int| v_idx_26) 0))))} [2019-01-18 14:52:24,321 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:24,322 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:52:24,476 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_33 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_33) (< v_idx_33 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_33)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_29 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_29)) (< v_idx_29 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_29))))} [2019-01-18 14:52:27,597 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:27,597 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:27,598 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:27,598 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:27,598 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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_40) (< v_idx_40 c_ULTIMATE.start_main_p7)) (or (= 1 (select |c_#valid| v_idx_44)) (< v_idx_44 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_44)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_45 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_45) v_v_74_1)) (or (= (select |c_#memory_int| v_idx_49) v_v_95_1) (< v_idx_49 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_41) v_v_68_1) (< v_idx_41 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#valid| v_idx_43) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_43)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_46)) (= v_v_2_1 (select |c_old(#valid)| v_idx_42)) (or (<= c_ULTIMATE.start_main_p7 v_idx_47) (= (select |c_#memory_int| v_idx_47) v_v_93_1)) (or (< v_idx_48 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_48) (= 0 (select |c_#memory_int| v_idx_48))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_39) v_v_66_1) (<= c_ULTIMATE.start_main_p7 v_idx_39)))))} [2019-01-18 14:52:27,598 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:27,598 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:27,599 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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_2_1 Int) (v_v_72_1 Int) (v_v_112_1 Int) (v_v_4_1 Int) (v_v_110_1 Int) (v_v_111_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (<= c_ULTIMATE.start_main_p7 v_idx_50) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_50) v_v_66_1)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_55 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_55) (= 1 (select |c_#valid| v_idx_55))) (<= (+ v_v_111_1 1) 0) (or (< v_idx_51 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_51) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_51))) (or (= v_v_68_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_52)) (< v_idx_52 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_74_1 (select |c_#valid| v_idx_56)) (< v_idx_56 (+ c_ULTIMATE.start_main_p7 1))) (<= (- v_v_111_1 (- v_v_111_1)) (- 2)) (or (< v_idx_60 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_112_1 (select |c_#memory_int| v_idx_60))) (= v_v_2_1 (select |c_old(#valid)| v_idx_53)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_57) v_v_4_1) (or (= v_v_72_1 (select |c_#valid| v_idx_54)) (<= c_ULTIMATE.start_main_p7 v_idx_54)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_59) (= (select |c_#memory_int| v_idx_59) v_v_111_1) (< v_idx_59 c_ULTIMATE.start_main_p1)) (or (= v_v_110_1 (select |c_#memory_int| v_idx_58)) (<= c_ULTIMATE.start_main_p1 v_idx_58)))))} [2019-01-18 14:52:27,599 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:27,988 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:27,989 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:28,360 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_48 Int)) (or (< v_idx_48 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_48) (= 0 (select |#memory_int| v_idx_48)))) (forall ((v_idx_44 Int)) (or (= 1 (select |#valid| v_idx_44)) (< v_idx_44 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_44))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_40 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_40) (< v_idx_40 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:52:28,360 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:28,361 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:28,424 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_59 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_59) (< v_idx_59 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_59) 1) 0))) (forall ((v_prenex_1 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_1)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_1) (< v_prenex_1 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_55 Int)) (or (< v_idx_55 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_55) (= 1 (select |#valid| v_idx_55)))) (forall ((v_idx_51 Int)) (or (< v_idx_51 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_51) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_51)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:52:31,270 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:31,270 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:31,271 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:31,271 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:31,272 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_97_1 Int) (v_v_66_1 Int) (v_v_98_1 Int) (v_v_68_1 Int) (v_v_96_1 Int) (v_v_74_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_79)) (or (< v_idx_82 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_82) v_v_98_1)) (or (< v_idx_81 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_81) (= (select |c_#memory_int| v_idx_81) v_v_97_1)) (or (< v_idx_77 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_77) (= (select |c_#valid| v_idx_77) 1)) (or (< v_idx_74 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_68_1)) (or (= (select |c_#valid| v_idx_76) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_76)) (or (<= c_ULTIMATE.start_main_p4 v_idx_80) (= (select |c_#memory_int| v_idx_80) v_v_96_1)) (or (< v_idx_73 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_73) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_78 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_78) v_v_74_1)) (or (<= c_ULTIMATE.start_main_p7 v_idx_72) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_66_1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_75))))) (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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_66_1) (<= c_ULTIMATE.start_main_p7 v_idx_61)) (or (< v_idx_70 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_70) (= 0 (select |c_#memory_int| v_idx_70))) (= (select |c_old(#memory_int)| v_idx_68) v_v_4_1) (or (= (select |c_#valid| v_idx_65) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_65)) (= v_v_2_1 (select |c_old(#valid)| v_idx_64)) (or (< v_idx_63 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_63))) (or (= (select |c_#memory_int| v_idx_69) v_v_93_1) (<= c_ULTIMATE.start_main_p7 v_idx_69)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_62 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_62) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_62) 0)) (or (< v_idx_66 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_66) (= 1 (select |c_#valid| v_idx_66))) (or (< v_idx_67 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_67) v_v_74_1)) (or (= v_v_95_1 (select |c_#memory_int| v_idx_71)) (< v_idx_71 (+ c_ULTIMATE.start_main_p7 1)))))))} [2019-01-18 14:52:31,272 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:31,272 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:52:31,272 WARN L230 ngHoareTripleChecker]: Post: {2147483640#(forall ((v_idx_89 Int) (v_idx_87 Int) (v_idx_88 Int) (v_idx_85 Int) (v_idx_86 Int) (v_idx_83 Int) (v_idx_84 Int) (v_idx_92 Int) (v_idx_93 Int) (v_idx_90 Int) (v_idx_91 Int)) (exists ((v_v_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_2_1 Int) (v_v_114_1 Int) (v_v_72_1 Int) (v_v_115_1 Int) (v_v_4_1 Int) (v_v_113_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= v_v_68_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_85)) (< v_idx_85 (+ c_ULTIMATE.start_main_p7 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_84)) (or (= v_v_66_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_83)) (<= c_ULTIMATE.start_main_p7 v_idx_83)) (= v_v_2_1 (select |c_old(#valid)| v_idx_86)) (= (select |c_old(#memory_int)| v_idx_90) v_v_4_1) (or (= (select |c_#memory_int| v_idx_92) v_v_114_1) (< v_idx_92 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_92)) (or (= v_v_113_1 (select |c_#memory_int| v_idx_91)) (<= c_ULTIMATE.start_main_p4 v_idx_91)) (or (< v_idx_89 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_89) v_v_74_1)) (or (= (select |c_#valid| v_idx_88) 1) (< v_idx_88 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_88)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_93 (+ c_ULTIMATE.start_main_p4 1)) (= v_v_115_1 (select |c_#memory_int| v_idx_93))) (or (= (select |c_#valid| v_idx_87) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_87)))))} [2019-01-18 14:52:31,272 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:31,730 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:31,730 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:39,675 WARN L181 SmtUtils]: Spent 7.94 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:39,675 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_97_1 Int) (v_v_66_1 Int) (v_v_98_1 Int) (v_v_68_1 Int) (v_v_96_1 Int) (v_v_74_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (= v_v_4_1 (select |old(#memory_int)| v_idx_79)) (or (< v_idx_82 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_82) v_v_98_1)) (or (< v_idx_81 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_81) (= (select |#memory_int| v_idx_81) v_v_97_1)) (or (< v_idx_77 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_77) (= (select |#valid| v_idx_77) 1)) (or (< v_idx_74 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_68_1)) (or (= (select |#valid| v_idx_76) v_v_72_1) (<= ULTIMATE.start_main_p7 v_idx_76)) (or (<= ULTIMATE.start_main_p4 v_idx_80) (= (select |#memory_int| v_idx_80) v_v_96_1)) (or (< v_idx_73 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_73) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_73) 0)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_78 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_78) v_v_74_1)) (or (<= ULTIMATE.start_main_p7 v_idx_72) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_66_1)) (= v_v_2_1 (select |old(#valid)| v_idx_75))))) (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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_66_1) (<= ULTIMATE.start_main_p7 v_idx_61)) (or (< v_idx_70 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_70) (= 0 (select |#memory_int| v_idx_70))) (= (select |old(#memory_int)| v_idx_68) v_v_4_1) (or (= (select |#valid| v_idx_65) v_v_72_1) (<= ULTIMATE.start_main_p7 v_idx_65)) (= v_v_2_1 (select |old(#valid)| v_idx_64)) (or (< v_idx_63 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_63))) (or (= (select |#memory_int| v_idx_69) v_v_93_1) (<= ULTIMATE.start_main_p7 v_idx_69)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_62 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_62) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_62) 0)) (or (< v_idx_66 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_66) (= 1 (select |#valid| v_idx_66))) (or (< v_idx_67 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_67) v_v_74_1)) (or (= v_v_95_1 (select |#memory_int| v_idx_71)) (< v_idx_71 (+ ULTIMATE.start_main_p7 1)))))))} [2019-01-18 14:52:39,675 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:52:39,676 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:52:39,759 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_88 Int)) (or (= (select |#valid| v_idx_88) 1) (< v_idx_88 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_88))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_84 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_84)) (< v_idx_84 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_84))))} [2019-01-18 14:52:43,453 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:43,453 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:43,454 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:43,454 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:43,454 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_97_1 Int) (v_v_66_1 Int) (v_v_98_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_96_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_114 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_114) (= (select |c_#memory_int| v_idx_114) v_v_97_1)) (or (< v_idx_110 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_110)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_110)) (or (< v_idx_111 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_1 (select |c_#valid| v_idx_111))) (or (<= c_ULTIMATE.start_main_p4 v_idx_113) (= (select |c_#memory_int| v_idx_113) v_v_96_1)) (or (< v_idx_115 (+ c_ULTIMATE.start_main_p4 1)) (= v_v_98_1 (select |c_#memory_int| v_idx_115))) (or (= v_v_72_1 (select |c_#valid| v_idx_109)) (<= c_ULTIMATE.start_main_p7 v_idx_109)) (or (= v_v_68_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_107)) (< v_idx_107 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_108)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_66_1) (<= c_ULTIMATE.start_main_p7 v_idx_105)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_112)) (or (< v_idx_106 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_106) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_106) 0))))) (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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_2_1 Int) (v_v_72_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (or (<= c_ULTIMATE.start_main_p7 v_idx_102) (= (select |c_#memory_int| v_idx_102) v_v_93_1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_100 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_1 (select |c_#valid| v_idx_100))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_101)) (or (< v_idx_99 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_99) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_99)) (or (<= c_ULTIMATE.start_main_p7 v_idx_94) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_66_1)) (= (select |c_old(#valid)| v_idx_97) v_v_2_1) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_96 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_68_1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_95)) (or (= (select |c_#valid| v_idx_98) v_v_72_1) (<= c_ULTIMATE.start_main_p7 v_idx_98)) (or (= (select |c_#memory_int| v_idx_103) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_103) (< v_idx_103 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_104) v_v_95_1) (< v_idx_104 (+ c_ULTIMATE.start_main_p7 1)))))))} [2019-01-18 14:52:43,455 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:43,455 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:43,455 WARN L230 ngHoareTripleChecker]: Post: {2147483638#(forall ((v_idx_126 Int) (v_idx_116 Int) (v_idx_124 Int) (v_idx_125 Int) (v_idx_119 Int) (v_idx_117 Int) (v_idx_118 Int) (v_idx_122 Int) (v_idx_123 Int) (v_idx_120 Int) (v_idx_121 Int)) (exists ((v_v_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_159_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_158_1 Int) (v_v_4_1 Int) (v_v_157_1 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_122 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_1 (select |c_#valid| v_idx_122))) (or (< v_idx_126 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_159_1 (select |c_#memory_int| v_idx_126))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_123)) (or (< v_idx_117 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_117) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_117))) (or (= v_v_72_1 (select |c_#valid| v_idx_120)) (<= c_ULTIMATE.start_main_p7 v_idx_120)) (or (<= c_ULTIMATE.start_main_p7 v_idx_116) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_116) v_v_66_1)) (or (= v_v_158_1 (select |c_#memory_int| v_idx_125)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 c_ULTIMATE.start_main_p1)) (= v_v_2_1 (select |c_old(#valid)| v_idx_119)) (or (= 1 (select |c_#valid| v_idx_121)) (< v_idx_121 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_121)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_118 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_118) v_v_68_1)) (or (<= c_ULTIMATE.start_main_p1 v_idx_124) (= (select |c_#memory_int| v_idx_124) v_v_157_1)) (<= (- v_v_158_1 (- v_v_158_1)) (- 2)) (<= (+ v_v_158_1 1) 0))))} [2019-01-18 14:52:43,455 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:44,079 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:44,079 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:52,000 WARN L181 SmtUtils]: Spent 7.92 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:52,000 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_97_1 Int) (v_v_66_1 Int) (v_v_98_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_96_1 Int) (v_v_72_1 Int) (v_v_2_1 Int) (v_v_4_1 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_114 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_114) (= (select |#memory_int| v_idx_114) v_v_97_1)) (or (< v_idx_110 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_110)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_110)) (or (< v_idx_111 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_1 (select |#valid| v_idx_111))) (or (<= ULTIMATE.start_main_p4 v_idx_113) (= (select |#memory_int| v_idx_113) v_v_96_1)) (or (< v_idx_115 (+ ULTIMATE.start_main_p4 1)) (= v_v_98_1 (select |#memory_int| v_idx_115))) (or (= v_v_72_1 (select |#valid| v_idx_109)) (<= ULTIMATE.start_main_p7 v_idx_109)) (or (= v_v_68_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_107)) (< v_idx_107 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_1 (select |old(#valid)| v_idx_108)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_66_1) (<= ULTIMATE.start_main_p7 v_idx_105)) (= v_v_4_1 (select |old(#memory_int)| v_idx_112)) (or (< v_idx_106 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_106) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_106) 0))))) (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_66_1 Int) (v_v_68_1 Int) (v_v_74_1 Int) (v_v_95_1 Int) (v_v_2_1 Int) (v_v_72_1 Int) (v_v_93_1 Int) (v_v_4_1 Int)) (and (or (<= ULTIMATE.start_main_p7 v_idx_102) (= (select |#memory_int| v_idx_102) v_v_93_1)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_100 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_1 (select |#valid| v_idx_100))) (= v_v_4_1 (select |old(#memory_int)| v_idx_101)) (or (< v_idx_99 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_99) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_99)) (or (<= ULTIMATE.start_main_p7 v_idx_94) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_66_1)) (= (select |old(#valid)| v_idx_97) v_v_2_1) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_96 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_68_1)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_95)) (or (= (select |#valid| v_idx_98) v_v_72_1) (<= ULTIMATE.start_main_p7 v_idx_98)) (or (= (select |#memory_int| v_idx_103) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_103) (< v_idx_103 ULTIMATE.start_main_p7)) (or (= (select |#memory_int| v_idx_104) v_v_95_1) (< v_idx_104 (+ ULTIMATE.start_main_p7 1)))))))} [2019-01-18 14:52:52,000 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:52,001 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:52,209 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_117 Int)) (or (< v_idx_117 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_117) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_117)))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_125 Int)) (or (<= (+ (select |#memory_int| v_idx_125) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 ULTIMATE.start_main_p1))) (forall ((v_idx_121 Int)) (or (= 1 (select |#valid| v_idx_121)) (< v_idx_121 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_121))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_2 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_2)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))))} [2019-01-18 14:52:52,597 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:52:52,599 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:52:52,603 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:52,605 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:52:52,605 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:52,606 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:52:52,616 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:52,616 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:52:52,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:52,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:52,638 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:52:52,761 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,768 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:52:52,847 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,849 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,851 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:52:52,976 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,978 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,982 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,985 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:52,987 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:52:53,122 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,125 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,127 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,131 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,133 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,139 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,141 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:52:53,269 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,272 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,278 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,280 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,283 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,286 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,288 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,297 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:53,298 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:52:53,303 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,366 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,425 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,497 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,543 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,602 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 27 [2019-01-18 14:52:53,619 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 9 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 33 [2019-01-18 14:52:53,636 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 12 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 43 [2019-01-18 14:52:53,659 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 14 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:52:53,682 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 15 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:52:53,712 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:52:53,756 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:52:53,760 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,808 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,845 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,878 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,901 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:53,921 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:54,042 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:54,602 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:54,603 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 7 variables, input treesize:95, output treesize:96 [2019-01-18 14:52:55,990 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:55,991 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_37|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p2 1))) (let ((.cse3 (store .cse1 ULTIMATE.start_main_p3 1))) (let ((.cse2 (store .cse3 ULTIMATE.start_main_p4 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= (select (store .cse2 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6) 0) (= 0 (select .cse2 ULTIMATE.start_main_p5)) (= |#memory_int| (store (store (store (store (store (store (store |v_#memory_int_37| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0)) (= (select .cse3 ULTIMATE.start_main_p4) 0)))))) [2019-01-18 14:52:55,991 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:52:56,333 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:56,335 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 91 [2019-01-18 14:52:56,344 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:56,415 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:56,416 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:52:58,435 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:58,436 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_38|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_38| ULTIMATE.start_main_p4))) (and (= (select |v_#memory_int_38| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_38| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (= (select |v_#memory_int_38| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 .cse0) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:52:58,436 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:52:58,502 INFO L273 TraceCheckUtils]: 0: Hoare triple {242#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {249#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:52:58,510 INFO L273 TraceCheckUtils]: 1: Hoare triple {249#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (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]; {253#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-18 14:52:58,511 INFO L273 TraceCheckUtils]: 2: Hoare triple {253#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} assume !(#memory_int[main_p1] >= 0); {243#false} is VALID [2019-01-18 14:52:58,512 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:58,512 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:52:58,541 INFO L273 TraceCheckUtils]: 2: Hoare triple {257#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {243#false} is VALID [2019-01-18 14:52:58,542 INFO L273 TraceCheckUtils]: 1: Hoare triple {261#(<= 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]; {257#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:58,545 INFO L273 TraceCheckUtils]: 0: Hoare triple {242#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {261#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:58,545 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:58,567 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:52:58,567 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:52:58,567 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:52:58,567 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:58,568 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:58,568 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:52:58,591 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:58,591 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:52:58,592 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:52:58,592 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:52:58,592 INFO L87 Difference]: Start difference. First operand 17 states and 30 transitions. Second operand 6 states. [2019-01-18 14:52:59,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,584 INFO L93 Difference]: Finished difference Result 54 states and 79 transitions. [2019-01-18 14:52:59,584 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:52:59,584 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:52:59,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:59,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:59,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 79 transitions. [2019-01-18 14:52:59,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:59,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 79 transitions. [2019-01-18 14:52:59,589 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 79 transitions. [2019-01-18 14:52:59,815 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:59,819 INFO L225 Difference]: With dead ends: 54 [2019-01-18 14:52:59,819 INFO L226 Difference]: Without dead ends: 52 [2019-01-18 14:52:59,820 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:52:59,820 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2019-01-18 14:52:59,848 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 20. [2019-01-18 14:52:59,848 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:59,848 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand 20 states. [2019-01-18 14:52:59,849 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand 20 states. [2019-01-18 14:52:59,849 INFO L87 Difference]: Start difference. First operand 52 states. Second operand 20 states. [2019-01-18 14:52:59,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,853 INFO L93 Difference]: Finished difference Result 52 states and 76 transitions. [2019-01-18 14:52:59,853 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 76 transitions. [2019-01-18 14:52:59,854 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:59,854 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:59,854 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 52 states. [2019-01-18 14:52:59,854 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 52 states. [2019-01-18 14:52:59,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:59,858 INFO L93 Difference]: Finished difference Result 52 states and 76 transitions. [2019-01-18 14:52:59,858 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 76 transitions. [2019-01-18 14:52:59,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:59,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:59,859 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:59,859 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:59,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2019-01-18 14:52:59,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 41 transitions. [2019-01-18 14:52:59,861 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 41 transitions. Word has length 3 [2019-01-18 14:52:59,861 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:59,861 INFO L480 AbstractCegarLoop]: Abstraction has 20 states and 41 transitions. [2019-01-18 14:52:59,861 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:52:59,862 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 41 transitions. [2019-01-18 14:52:59,862 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:52:59,862 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:59,862 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:52:59,863 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:59,863 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:59,863 INFO L82 PathProgramCache]: Analyzing trace with hash 30008, now seen corresponding path program 1 times [2019-01-18 14:52:59,863 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:59,864 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:59,864 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:59,865 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:59,865 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:59,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:59,949 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {453#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:52:59,951 INFO L273 TraceCheckUtils]: 1: Hoare triple {453#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {454#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:59,953 INFO L273 TraceCheckUtils]: 2: Hoare triple {454#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:52:59,953 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:59,954 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:59,954 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:59,954 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:52:59,954 INFO L207 CegarAbsIntRunner]: [0], [6], [31] [2019-01-18 14:52:59,957 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:59,957 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:03,184 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:03,184 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:03,184 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:03,185 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:03,185 WARN L224 ngHoareTripleChecker]: Pre: {2147483635#(forall ((v_idx_148 Int) (v_idx_149 Int) (v_idx_146 Int) (v_idx_147 Int) (v_idx_151 Int) (v_idx_152 Int) (v_idx_150 Int) (v_idx_144 Int) (v_idx_145 Int) (v_idx_153 Int) (v_idx_143 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (or (= (select |c_#memory_int| v_idx_153) v_v_95_2) (< v_idx_153 (+ c_ULTIMATE.start_main_p7 1))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_143) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) v_v_66_2)) (or (<= c_ULTIMATE.start_main_p7 v_idx_151) (= (select |c_#memory_int| v_idx_151) v_v_93_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_146)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_145) v_v_68_2) (< v_idx_145 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_152) 0) (< v_idx_152 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_152)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_150)) (or (< v_idx_144 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_144)) (or (< v_idx_149 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_149))) (or (= v_v_72_2 (select |c_#valid| v_idx_147)) (<= c_ULTIMATE.start_main_p7 v_idx_147)) (or (< v_idx_148 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_148)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_148)))))} [2019-01-18 14:53:03,185 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:03,185 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:53:03,185 WARN L230 ngHoareTripleChecker]: Post: {2147483634#(forall ((v_idx_159 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_164 Int) (v_idx_154 Int)) (exists ((v_v_97_2 Int) (v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_98_2 Int) (v_v_74_2 Int) (v_v_96_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_163) (= (select |c_#memory_int| v_idx_163) v_v_97_2) (< v_idx_163 c_ULTIMATE.start_main_p1)) (or (<= c_ULTIMATE.start_main_p7 v_idx_158) (= v_v_72_2 (select |c_#valid| v_idx_158))) (or (= 1 (select |c_#valid| v_idx_159)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_159) (< v_idx_159 c_ULTIMATE.start_main_p7)) (or (< v_idx_160 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_160))) (or (= v_v_68_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_156)) (< v_idx_156 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_155 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_155) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_155) 0)) (or (= (select |c_#memory_int| v_idx_164) v_v_98_2) (< v_idx_164 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#memory_int| v_idx_162) v_v_96_2) (<= c_ULTIMATE.start_main_p1 v_idx_162)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_161)) (or (<= c_ULTIMATE.start_main_p7 v_idx_154) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_154) v_v_66_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_157)))))} [2019-01-18 14:53:03,185 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:03,569 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:03,569 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:03,620 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_152 Int)) (or (= (select |#memory_int| v_idx_152) 0) (< v_idx_152 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_152))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_144 Int)) (or (< v_idx_144 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_144)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_144))) (forall ((v_idx_148 Int)) (or (< v_idx_148 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_148)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_148))))} [2019-01-18 14:53:03,621 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:03,621 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:53:03,840 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_155 Int)) (or (< v_idx_155 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_155) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_155) 0))) (forall ((v_idx_159 Int)) (or (= 1 (select |#valid| v_idx_159)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_159) (< v_idx_159 ULTIMATE.start_main_p7))))} [2019-01-18 14:53:06,256 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:06,257 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:06,257 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:06,258 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:06,258 WARN L224 ngHoareTripleChecker]: Pre: {2147483633#(forall ((v_idx_168 Int) (v_idx_169 Int) (v_idx_170 Int) (v_idx_173 Int) (v_idx_174 Int) (v_idx_171 Int) (v_idx_172 Int) (v_idx_166 Int) (v_idx_167 Int) (v_idx_175 Int) (v_idx_165 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (= v_v_2_2 (select |c_old(#valid)| v_idx_168)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_169) (= v_v_72_2 (select |c_#valid| v_idx_169))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_165) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) v_v_66_2)) (or (< v_idx_171 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_171))) (or (<= c_ULTIMATE.start_main_p7 v_idx_173) (= (select |c_#memory_int| v_idx_173) v_v_93_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (< v_idx_166 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_166)) (or (= v_v_68_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_167)) (< v_idx_167 (+ c_ULTIMATE.start_main_p7 1))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_170) (= 1 (select |c_#valid| v_idx_170)) (< v_idx_170 c_ULTIMATE.start_main_p7)) (or (< v_idx_175 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_175) v_v_95_2)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_174) (< v_idx_174 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_174) 0)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_172)))))} [2019-01-18 14:53:06,258 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:06,258 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:06,259 WARN L230 ngHoareTripleChecker]: Post: {2147483632#(forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_186 Int) (v_idx_176 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_111_2 Int) (v_v_4_2 Int) (v_v_112_2 Int) (v_v_110_2 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_181) (= 1 (select |c_#valid| v_idx_181)) (< v_idx_181 c_ULTIMATE.start_main_p7)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= (- v_v_111_2 (- v_v_111_2)) (- 2)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_176) (= v_v_66_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176))) (= v_v_2_2 (select |c_old(#valid)| v_idx_179)) (or (= (select |c_#memory_int| v_idx_185) v_v_111_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 c_ULTIMATE.start_main_p1)) (or (= v_v_74_2 (select |c_#valid| v_idx_182)) (< v_idx_182 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_183)) (or (<= c_ULTIMATE.start_main_p1 v_idx_184) (= v_v_110_2 (select |c_#memory_int| v_idx_184))) (or (= v_v_72_2 (select |c_#valid| v_idx_180)) (<= c_ULTIMATE.start_main_p7 v_idx_180)) (<= (+ v_v_111_2 1) 0) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_177) (< v_idx_177 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_178) v_v_68_2) (< v_idx_178 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_112_2 (select |c_#memory_int| v_idx_186)) (< v_idx_186 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-18 14:53:06,259 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:06,756 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:06,756 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:06,968 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (forall ((v_idx_170 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_170) (= 1 (select |#valid| v_idx_170)) (< v_idx_170 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_174 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_174) (< v_idx_174 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_174) 0))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_166 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (< v_idx_166 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_166))))} [2019-01-18 14:53:06,968 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:06,968 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:07,052 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (forall ((v_prenex_3 Int)) (or (<= (+ (select |#memory_int| v_prenex_3) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_185 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_185)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_181 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_181) (= 1 (select |#valid| v_idx_181)) (< v_idx_181 ULTIMATE.start_main_p7))) (forall ((v_idx_177 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_177) (< v_idx_177 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_177) 0))))} [2019-01-18 14:53:10,047 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:10,047 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:10,047 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:10,048 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:10,048 WARN L224 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_197 Int) (v_idx_187 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |c_old(#valid)| v_idx_190)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_192) (= 1 (select |c_#valid| v_idx_192)) (< v_idx_192 c_ULTIMATE.start_main_p7)) (= (select |c_old(#memory_int)| v_idx_194) v_v_4_2) (or (= v_v_68_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_193 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_193))) (or (= v_v_72_2 (select |c_#valid| v_idx_191)) (<= c_ULTIMATE.start_main_p7 v_idx_191)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_188) (< v_idx_188 c_ULTIMATE.start_main_p7)) (or (< v_idx_196 c_ULTIMATE.start_main_p7) (= 0 (select |c_#memory_int| v_idx_196)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_196)) (or (= (select |c_#memory_int| v_idx_197) v_v_95_2) (< v_idx_197 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_195) (= (select |c_#memory_int| v_idx_195) v_v_93_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_66_2) (<= c_ULTIMATE.start_main_p7 v_idx_187))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_66_2 Int) (v_v_97_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_98_2 Int) (v_v_96_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_66_2) (<= c_ULTIMATE.start_main_p7 v_idx_198)) (or (< v_idx_200 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_68_2)) (or (= (select |c_#memory_int| v_idx_206) v_v_96_2) (<= c_ULTIMATE.start_main_p1 v_idx_206)) (or (<= c_ULTIMATE.start_main_p7 v_idx_202) (= v_v_72_2 (select |c_#valid| v_idx_202))) (or (= v_v_74_2 (select |c_#valid| v_idx_204)) (< v_idx_204 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_199)) (< v_idx_199 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_199)) (or (= (select |c_#memory_int| v_idx_208) v_v_98_2) (< v_idx_208 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_203 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_203)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_203)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_205)) (or (= (select |c_#memory_int| v_idx_207) v_v_97_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_207) (< v_idx_207 c_ULTIMATE.start_main_p1)) (= v_v_2_2 (select |c_old(#valid)| v_idx_201))))))} [2019-01-18 14:53:10,048 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:10,048 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:53:10,048 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(forall ((v_idx_214 Int) (v_idx_215 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_115_2 Int) (v_v_113_2 Int) (v_v_114_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_214)) (< v_idx_214 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_214)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_68_2) (< v_idx_211 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_113_2 (select |c_#memory_int| v_idx_217)) (<= c_ULTIMATE.start_main_p1 v_idx_217)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_218) (= v_v_114_2 (select |c_#memory_int| v_idx_218)) (< v_idx_218 c_ULTIMATE.start_main_p1)) (or (<= c_ULTIMATE.start_main_p7 v_idx_213) (= v_v_72_2 (select |c_#valid| v_idx_213))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_216)) (= (select |c_old(#valid)| v_idx_212) v_v_2_2) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_115_2 (select |c_#memory_int| v_idx_219)) (< v_idx_219 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_215 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_215))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_66_2) (<= c_ULTIMATE.start_main_p7 v_idx_209)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_210)))))} [2019-01-18 14:53:10,049 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:10,474 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:10,474 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:18,345 WARN L181 SmtUtils]: Spent 7.87 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:18,346 WARN L270 ngHoareTripleChecker]: Pre: {2147483631#(or (forall ((v_idx_191 Int) (v_idx_192 Int) (v_idx_190 Int) (v_idx_195 Int) (v_idx_196 Int) (v_idx_193 Int) (v_idx_194 Int) (v_idx_188 Int) (v_idx_189 Int) (v_idx_197 Int) (v_idx_187 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_2 (select |old(#valid)| v_idx_190)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_192) (= 1 (select |#valid| v_idx_192)) (< v_idx_192 ULTIMATE.start_main_p7)) (= (select |old(#memory_int)| v_idx_194) v_v_4_2) (or (= v_v_68_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 (+ ULTIMATE.start_main_p7 1))) (or (< v_idx_193 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |#valid| v_idx_193))) (or (= v_v_72_2 (select |#valid| v_idx_191)) (<= ULTIMATE.start_main_p7 v_idx_191)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_188) (< v_idx_188 ULTIMATE.start_main_p7)) (or (< v_idx_196 ULTIMATE.start_main_p7) (= 0 (select |#memory_int| v_idx_196)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_196)) (or (= (select |#memory_int| v_idx_197) v_v_95_2) (< v_idx_197 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_195) (= (select |#memory_int| v_idx_195) v_v_93_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_66_2) (<= ULTIMATE.start_main_p7 v_idx_187))))) (forall ((v_idx_203 Int) (v_idx_204 Int) (v_idx_201 Int) (v_idx_202 Int) (v_idx_207 Int) (v_idx_208 Int) (v_idx_205 Int) (v_idx_206 Int) (v_idx_199 Int) (v_idx_200 Int) (v_idx_198 Int)) (exists ((v_v_66_2 Int) (v_v_97_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_98_2 Int) (v_v_96_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_66_2) (<= ULTIMATE.start_main_p7 v_idx_198)) (or (< v_idx_200 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_68_2)) (or (= (select |#memory_int| v_idx_206) v_v_96_2) (<= ULTIMATE.start_main_p1 v_idx_206)) (or (<= ULTIMATE.start_main_p7 v_idx_202) (= v_v_72_2 (select |#valid| v_idx_202))) (or (= v_v_74_2 (select |#valid| v_idx_204)) (< v_idx_204 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_199)) (< v_idx_199 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_199)) (or (= (select |#memory_int| v_idx_208) v_v_98_2) (< v_idx_208 (+ ULTIMATE.start_main_p1 1))) (or (< v_idx_203 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_203)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_203)) (= v_v_4_2 (select |old(#memory_int)| v_idx_205)) (or (= (select |#memory_int| v_idx_207) v_v_97_2) (<= (+ ULTIMATE.start_main_p1 1) v_idx_207) (< v_idx_207 ULTIMATE.start_main_p1)) (= v_v_2_2 (select |old(#valid)| v_idx_201))))))} [2019-01-18 14:53:18,346 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:53:18,346 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:53:18,369 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(and (forall ((v_idx_214 Int)) (or (= 1 (select |#valid| v_idx_214)) (< v_idx_214 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_214))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_210 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_210) 0) (< v_idx_210 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_210))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:53:21,888 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:21,888 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:21,888 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:21,888 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:21,889 WARN L224 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_97_2 Int) (v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_98_2 Int) (v_v_96_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= v_v_72_2 (select |c_#valid| v_idx_235)) (<= c_ULTIMATE.start_main_p7 v_idx_235)) (or (= (select |c_#memory_int| v_idx_239) v_v_96_2) (<= c_ULTIMATE.start_main_p1 v_idx_239)) (or (= (select |c_#memory_int| v_idx_240) v_v_97_2) (< v_idx_240 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_240)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_66_2) (<= c_ULTIMATE.start_main_p7 v_idx_231)) (or (= v_v_74_2 (select |c_#valid| v_idx_237)) (< v_idx_237 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_2_2 (select |c_old(#valid)| v_idx_234)) (or (= 1 (select |c_#valid| v_idx_236)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_236) (< v_idx_236 c_ULTIMATE.start_main_p7)) (or (< v_idx_241 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_241) v_v_98_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_68_2) (< v_idx_233 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_238)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_232))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_225) (= 1 (select |c_#valid| v_idx_225)) (< v_idx_225 c_ULTIMATE.start_main_p7)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_68_2) (< v_idx_222 (+ c_ULTIMATE.start_main_p7 1))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_221) (< v_idx_221 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_221) 0)) (= (select |c_old(#valid)| v_idx_223) v_v_2_2) (or (= (select |c_#memory_int| v_idx_230) v_v_95_2) (< v_idx_230 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_227)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_228) (= (select |c_#memory_int| v_idx_228) v_v_93_2)) (or (<= c_ULTIMATE.start_main_p7 v_idx_220) (= v_v_66_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (= v_v_72_2 (select |c_#valid| v_idx_224)) (<= c_ULTIMATE.start_main_p7 v_idx_224)) (or (< v_idx_226 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_226))) (or (< v_idx_229 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_229) (= 0 (select |c_#memory_int| v_idx_229)))))))} [2019-01-18 14:53:21,889 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:21,889 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:21,889 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_159_2 Int) (v_v_158_2 Int) (v_v_157_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_249)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_66_2) (<= c_ULTIMATE.start_main_p7 v_idx_242)) (or (<= c_ULTIMATE.start_main_p1 v_idx_250) (= v_v_157_2 (select |c_#memory_int| v_idx_250))) (or (= v_v_159_2 (select |c_#memory_int| v_idx_252)) (< v_idx_252 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_68_2) (< v_idx_244 (+ c_ULTIMATE.start_main_p7 1))) (<= (+ v_v_158_2 1) 0) (or (= (select |c_#memory_int| v_idx_251) v_v_158_2) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_251) (< v_idx_251 c_ULTIMATE.start_main_p1)) (<= (- v_v_158_2 (- v_v_158_2)) (- 2)) (= (select |c_old(#valid)| v_idx_245) v_v_2_2) (or (= 1 (select |c_#valid| v_idx_247)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_247) (< v_idx_247 c_ULTIMATE.start_main_p7)) (or (< v_idx_243 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_243) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_243))) (or (< v_idx_248 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |c_#valid| v_idx_248))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_246) (= v_v_72_2 (select |c_#valid| v_idx_246))))))} [2019-01-18 14:53:21,889 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:22,450 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:22,450 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:30,492 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:30,492 WARN L270 ngHoareTripleChecker]: Pre: {2147483629#(or (forall ((v_idx_236 Int) (v_idx_237 Int) (v_idx_234 Int) (v_idx_235 Int) (v_idx_238 Int) (v_idx_239 Int) (v_idx_240 Int) (v_idx_232 Int) (v_idx_233 Int) (v_idx_241 Int) (v_idx_231 Int)) (exists ((v_v_97_2 Int) (v_v_66_2 Int) (v_v_68_2 Int) (v_v_72_2 Int) (v_v_98_2 Int) (v_v_96_2 Int) (v_v_74_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= v_v_72_2 (select |#valid| v_idx_235)) (<= ULTIMATE.start_main_p7 v_idx_235)) (or (= (select |#memory_int| v_idx_239) v_v_96_2) (<= ULTIMATE.start_main_p1 v_idx_239)) (or (= (select |#memory_int| v_idx_240) v_v_97_2) (< v_idx_240 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_240)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_66_2) (<= ULTIMATE.start_main_p7 v_idx_231)) (or (= v_v_74_2 (select |#valid| v_idx_237)) (< v_idx_237 (+ ULTIMATE.start_main_p7 1))) (= v_v_2_2 (select |old(#valid)| v_idx_234)) (or (= 1 (select |#valid| v_idx_236)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_236) (< v_idx_236 ULTIMATE.start_main_p7)) (or (< v_idx_241 (+ ULTIMATE.start_main_p1 1)) (= (select |#memory_int| v_idx_241) v_v_98_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_68_2) (< v_idx_233 (+ ULTIMATE.start_main_p7 1))) (= v_v_4_2 (select |old(#memory_int)| v_idx_238)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_232))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_66_2 Int) (v_v_68_2 Int) (v_v_95_2 Int) (v_v_72_2 Int) (v_v_74_2 Int) (v_v_93_2 Int) (v_v_2_2 Int) (v_v_4_2 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_225) (= 1 (select |#valid| v_idx_225)) (< v_idx_225 ULTIMATE.start_main_p7)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_68_2) (< v_idx_222 (+ ULTIMATE.start_main_p7 1))) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_221) (< v_idx_221 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_221) 0)) (= (select |old(#valid)| v_idx_223) v_v_2_2) (or (= (select |#memory_int| v_idx_230) v_v_95_2) (< v_idx_230 (+ ULTIMATE.start_main_p7 1))) (= v_v_4_2 (select |old(#memory_int)| v_idx_227)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_228) (= (select |#memory_int| v_idx_228) v_v_93_2)) (or (<= ULTIMATE.start_main_p7 v_idx_220) (= v_v_66_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_220))) (or (= v_v_72_2 (select |#valid| v_idx_224)) (<= ULTIMATE.start_main_p7 v_idx_224)) (or (< v_idx_226 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_2 (select |#valid| v_idx_226))) (or (< v_idx_229 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_229) (= 0 (select |#memory_int| v_idx_229)))))))} [2019-01-18 14:53:30,493 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:30,493 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:30,759 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (forall ((v_prenex_4 Int)) (or (<= (+ (select |#memory_int| v_prenex_4) 1) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (forall ((v_idx_247 Int)) (or (= 1 (select |#valid| v_idx_247)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_247) (< v_idx_247 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_243 Int)) (or (< v_idx_243 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_243) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_243)))) (forall ((v_idx_251 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_251)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_251) (< v_idx_251 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:53:30,914 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:53:30,914 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:53:30,915 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:30,915 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:53:30,915 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:30,915 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:53:30,924 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:30,925 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:53:30,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:30,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:30,936 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:53:31,010 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 24 treesize of output 27 [2019-01-18 14:53:31,017 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 27 treesize of output 33 [2019-01-18 14:53:31,026 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,028 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,029 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 29 treesize of output 43 [2019-01-18 14:53:31,040 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,042 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,043 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,045 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:53:31,061 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,063 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,064 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,066 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,068 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:53:31,090 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,092 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,093 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,095 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,097 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,099 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:53:31,134 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:53:31,137 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,184 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,219 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,248 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,269 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,291 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,311 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,360 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,361 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:53:31,453 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,455 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,457 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:53:31,543 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,544 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,546 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,547 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,549 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:53:31,633 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,635 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,636 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,638 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,639 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,641 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,642 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:53:31,770 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,772 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,773 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,774 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,811 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,813 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,814 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,814 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:31,816 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:53:31,823 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,852 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,883 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,912 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:31,949 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:32,047 INFO L267 ElimStorePlain]: Start of recursive call 1: 6 dim-0 vars, 2 dim-1 vars, End of recursive call: 6 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:32,048 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 8 variables, input treesize:95, output treesize:96 [2019-01-18 14:53:33,209 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:33,209 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_40|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_10|]. (let ((.cse2 (store |v_#valid_10| ULTIMATE.start_main_p1 1))) (let ((.cse3 (store .cse2 ULTIMATE.start_main_p2 1))) (let ((.cse0 (store .cse3 ULTIMATE.start_main_p3 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p4 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p4)) (= (select .cse1 ULTIMATE.start_main_p5) 0) (= (select (store .cse1 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6) 0) (= (store (store (store (store (store (store (store |v_#memory_int_40| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|) (= (select .cse2 ULTIMATE.start_main_p2) 0) (= 0 (select .cse3 ULTIMATE.start_main_p3))))))) [2019-01-18 14:53:33,209 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:53:33,465 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:33,466 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 97 [2019-01-18 14:53:33,471 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:33,532 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:33,533 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:53:34,363 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:34,364 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_41|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_41| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_41| ULTIMATE.start_main_p2)) (= (select |v_#memory_int_41| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_41| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_41| ULTIMATE.start_main_p5) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_41| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_41| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:53:34,364 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:53:34,479 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {458#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:53:34,500 INFO L273 TraceCheckUtils]: 1: Hoare triple {458#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {462#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:53:34,501 INFO L273 TraceCheckUtils]: 2: Hoare triple {462#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 1))} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:53:34,502 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:34,502 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:53:34,515 INFO L273 TraceCheckUtils]: 2: Hoare triple {454#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {452#false} is VALID [2019-01-18 14:53:34,516 INFO L273 TraceCheckUtils]: 1: Hoare triple {469#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {454#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:34,519 INFO L273 TraceCheckUtils]: 0: Hoare triple {451#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {469#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:53:34,520 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:34,540 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:53:34,540 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 14:53:34,540 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:53:34,541 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:53:34,541 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:53:34,541 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:53:34,545 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:53:34,545 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:53:34,545 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:53:34,545 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:53:34,545 INFO L87 Difference]: Start difference. First operand 20 states and 41 transitions. Second operand 4 states. [2019-01-18 14:53:34,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:34,747 INFO L93 Difference]: Finished difference Result 25 states and 67 transitions. [2019-01-18 14:53:34,747 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:53:34,747 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:53:34,747 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:53:34,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:53:34,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 39 transitions. [2019-01-18 14:53:34,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:53:34,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 39 transitions. [2019-01-18 14:53:34,750 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 39 transitions. [2019-01-18 14:53:34,840 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:53:34,841 INFO L225 Difference]: With dead ends: 25 [2019-01-18 14:53:34,841 INFO L226 Difference]: Without dead ends: 24 [2019-01-18 14:53:34,842 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:53:34,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2019-01-18 14:53:34,896 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 23. [2019-01-18 14:53:34,896 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:53:34,896 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand 23 states. [2019-01-18 14:53:34,897 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand 23 states. [2019-01-18 14:53:34,897 INFO L87 Difference]: Start difference. First operand 24 states. Second operand 23 states. [2019-01-18 14:53:34,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:34,899 INFO L93 Difference]: Finished difference Result 24 states and 66 transitions. [2019-01-18 14:53:34,899 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 66 transitions. [2019-01-18 14:53:34,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:34,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:34,900 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 24 states. [2019-01-18 14:53:34,900 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 24 states. [2019-01-18 14:53:34,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:34,902 INFO L93 Difference]: Finished difference Result 24 states and 66 transitions. [2019-01-18 14:53:34,902 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 66 transitions. [2019-01-18 14:53:34,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:34,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:34,903 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:53:34,903 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:53:34,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-01-18 14:53:34,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 66 transitions. [2019-01-18 14:53:34,905 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 66 transitions. Word has length 3 [2019-01-18 14:53:34,905 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:53:34,905 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 66 transitions. [2019-01-18 14:53:34,905 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:53:34,905 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 66 transitions. [2019-01-18 14:53:34,906 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:53:34,906 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:53:34,906 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:53:34,906 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:53:34,907 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:34,907 INFO L82 PathProgramCache]: Analyzing trace with hash 30132, now seen corresponding path program 1 times [2019-01-18 14:53:34,907 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:53:34,908 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:34,908 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:34,908 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:34,908 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:53:34,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:35,004 INFO L273 TraceCheckUtils]: 0: Hoare triple {580#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {582#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:53:35,005 INFO L273 TraceCheckUtils]: 1: Hoare triple {582#(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]; {583#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:53:35,006 INFO L273 TraceCheckUtils]: 2: Hoare triple {583#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {581#false} is VALID [2019-01-18 14:53:35,007 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:35,007 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:35,007 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:53:35,007 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:53:35,008 INFO L207 CegarAbsIntRunner]: [0], [10], [31] [2019-01-18 14:53:35,010 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:53:35,010 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:37,837 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:37,837 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:37,838 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:37,838 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:37,838 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(forall ((v_idx_269 Int) (v_idx_278 Int) (v_idx_279 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_274 Int) (v_idx_275 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_275 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_275))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_278) (= 0 (select |c_#memory_int| v_idx_278)) (< v_idx_278 c_ULTIMATE.start_main_p7)) (= (select |c_old(#valid)| v_idx_272) v_v_2_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_269) v_v_66_3) (<= c_ULTIMATE.start_main_p7 v_idx_269)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_276)) (or (= v_v_72_3 (select |c_#valid| v_idx_273)) (<= c_ULTIMATE.start_main_p7 v_idx_273)) (or (< v_idx_274 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_274)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_274)) (or (= (select |c_#memory_int| v_idx_279) v_v_95_3) (< v_idx_279 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_68_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_271)) (< v_idx_271 (+ c_ULTIMATE.start_main_p7 1))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_270) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_270)) (< v_idx_270 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_277) (= (select |c_#memory_int| v_idx_277) v_v_93_3)))))} [2019-01-18 14:53:37,838 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:37,838 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:53:37,838 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_285 Int) (v_idx_286 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_96_3 Int) (v_v_97_3 Int) (v_v_74_3 Int) (v_v_98_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_72_3 (select |c_#valid| v_idx_284)) (<= c_ULTIMATE.start_main_p7 v_idx_284)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p2 v_idx_288) (= (select |c_#memory_int| v_idx_288) v_v_96_3)) (or (< v_idx_282 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_282) v_v_68_3)) (or (< v_idx_290 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_290) v_v_98_3)) (or (<= c_ULTIMATE.start_main_p7 v_idx_280) (= v_v_66_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_280))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_287)) (= v_v_2_3 (select |c_old(#valid)| v_idx_283)) (or (= (select |c_#memory_int| v_idx_289) v_v_97_3) (< v_idx_289 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_289)) (or (< v_idx_286 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_286))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_281) (< v_idx_281 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_285) (< v_idx_285 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_285))))))} [2019-01-18 14:53:37,839 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:38,225 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:38,225 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:38,471 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_274 Int)) (or (< v_idx_274 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_274)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_274))) (forall ((v_idx_270 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_270) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_270)) (< v_idx_270 ULTIMATE.start_main_p7))) (forall ((v_idx_278 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_278) (= 0 (select |#memory_int| v_idx_278)) (< v_idx_278 ULTIMATE.start_main_p7))))} [2019-01-18 14:53:38,471 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:38,471 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:53:38,497 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_285 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_285) (< v_idx_285 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_285)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_281 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_281) (< v_idx_281 ULTIMATE.start_main_p7))))} [2019-01-18 14:53:40,825 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:40,825 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:40,826 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:40,826 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:40,826 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(forall ((v_idx_300 Int) (v_idx_301 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_296 Int) (v_idx_297 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#valid)| v_idx_294) v_v_2_3) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_299) v_v_93_3) (<= c_ULTIMATE.start_main_p7 v_idx_299)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_296) (< v_idx_296 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_296))) (or (= (select |c_#memory_int| v_idx_300) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_300) (< v_idx_300 c_ULTIMATE.start_main_p7)) (or (< v_idx_301 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_301) v_v_95_3)) (or (< v_idx_293 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_293) v_v_68_3)) (or (= v_v_74_3 (select |c_#valid| v_idx_297)) (< v_idx_297 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_295) (= v_v_72_3 (select |c_#valid| v_idx_295))) (or (<= c_ULTIMATE.start_main_p7 v_idx_291) (= v_v_66_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_291))) (or (< v_idx_292 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_292) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_292))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_298)))))} [2019-01-18 14:53:40,826 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:40,826 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:40,826 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_74_3 Int) (v_v_112_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_110_3 Int) (v_v_111_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_72_3 (select |c_#valid| v_idx_306)) (<= c_ULTIMATE.start_main_p7 v_idx_306)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= v_v_111_3 (select |c_#memory_int| v_idx_311)) (< v_idx_311 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_311)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_309)) (or (= 1 (select |c_#valid| v_idx_307)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_307) (< v_idx_307 c_ULTIMATE.start_main_p7)) (or (< v_idx_308 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_308))) (or (= v_v_68_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_304)) (< v_idx_304 (+ c_ULTIMATE.start_main_p7 1))) (<= (+ v_v_111_3 1) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_303) (< v_idx_303 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_303))) (= v_v_2_3 (select |c_old(#valid)| v_idx_305)) (or (<= c_ULTIMATE.start_main_p1 v_idx_310) (= (select |c_#memory_int| v_idx_310) v_v_110_3)) (or (= v_v_112_3 (select |c_#memory_int| v_idx_312)) (< v_idx_312 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_66_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_302)) (<= c_ULTIMATE.start_main_p7 v_idx_302)) (<= (- v_v_111_3 (- v_v_111_3)) (- 2)))))} [2019-01-18 14:53:40,826 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:41,498 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:41,499 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:41,698 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(and (forall ((v_idx_300 Int)) (or (= (select |#memory_int| v_idx_300) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_300) (< v_idx_300 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_296 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_296) (< v_idx_296 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_296)))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_292 Int)) (or (< v_idx_292 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_292) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_292)))))} [2019-01-18 14:53:41,698 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:41,698 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:41,749 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_5 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_5)) 2) 0) (< v_prenex_5 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_5))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_311 Int)) (or (< v_idx_311 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_311) (<= (+ (select |#memory_int| v_idx_311) 1) 0))) (forall ((v_idx_307 Int)) (or (= 1 (select |#valid| v_idx_307)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_307) (< v_idx_307 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_303 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_303) (< v_idx_303 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_303)))))} [2019-01-18 14:53:44,570 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:44,571 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:44,571 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:44,571 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:44,571 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_323 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_323) v_v_95_3)) (or (< v_idx_314 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_314) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_314) 0)) (or (<= c_ULTIMATE.start_main_p7 v_idx_317) (= v_v_72_3 (select |c_#valid| v_idx_317))) (or (< v_idx_319 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_319))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_315) v_v_68_3) (< v_idx_315 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_321) v_v_93_3) (<= c_ULTIMATE.start_main_p7 v_idx_321)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_316)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_318) (= 1 (select |c_#valid| v_idx_318)) (< v_idx_318 c_ULTIMATE.start_main_p7)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_320)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_322) (< v_idx_322 c_ULTIMATE.start_main_p7) (= 0 (select |c_#memory_int| v_idx_322))) (or (<= c_ULTIMATE.start_main_p7 v_idx_313) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_313) v_v_66_3))))) (forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_74_3 Int) (v_v_97_3 Int) (v_v_96_3 Int) (v_v_98_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_330 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_330))) (or (= (select |c_#memory_int| v_idx_334) v_v_98_3) (< v_idx_334 (+ c_ULTIMATE.start_main_p2 1))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_329) (= 1 (select |c_#valid| v_idx_329)) (< v_idx_329 c_ULTIMATE.start_main_p7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_325) (< v_idx_325 c_ULTIMATE.start_main_p7)) (or (= v_v_72_3 (select |c_#valid| v_idx_328)) (<= c_ULTIMATE.start_main_p7 v_idx_328)) (or (< v_idx_333 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_333) (= v_v_97_3 (select |c_#memory_int| v_idx_333))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_324) v_v_66_3) (<= c_ULTIMATE.start_main_p7 v_idx_324)) (= v_v_2_3 (select |c_old(#valid)| v_idx_327)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_326) v_v_68_3) (< v_idx_326 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_331) v_v_4_3) (or (<= c_ULTIMATE.start_main_p2 v_idx_332) (= (select |c_#memory_int| v_idx_332) v_v_96_3))))))} [2019-01-18 14:53:44,572 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:44,572 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:53:44,572 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_74_3 Int) (v_v_114_3 Int) (v_v_115_3 Int) (v_v_113_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (or (= v_v_72_3 (select |c_#valid| v_idx_339)) (<= c_ULTIMATE.start_main_p7 v_idx_339)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_340)) (< v_idx_340 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_340)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_2_3 (select |c_old(#valid)| v_idx_338)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_342)) (or (<= c_ULTIMATE.start_main_p7 v_idx_335) (= v_v_66_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_335))) (or (= v_v_114_3 (select |c_#memory_int| v_idx_344)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_344) (< v_idx_344 c_ULTIMATE.start_main_p2)) (or (<= c_ULTIMATE.start_main_p2 v_idx_343) (= (select |c_#memory_int| v_idx_343) v_v_113_3)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_337) v_v_68_3) (< v_idx_337 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_341 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_341))) (or (< v_idx_345 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_115_3 (select |c_#memory_int| v_idx_345))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_336) (< v_idx_336 c_ULTIMATE.start_main_p7)))))} [2019-01-18 14:53:44,572 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:45,052 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:45,052 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:53,027 WARN L181 SmtUtils]: Spent 7.97 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:53,027 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(or (forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_323 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_323) v_v_95_3)) (or (< v_idx_314 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_314) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_314) 0)) (or (<= ULTIMATE.start_main_p7 v_idx_317) (= v_v_72_3 (select |#valid| v_idx_317))) (or (< v_idx_319 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |#valid| v_idx_319))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_315) v_v_68_3) (< v_idx_315 (+ ULTIMATE.start_main_p7 1))) (or (= (select |#memory_int| v_idx_321) v_v_93_3) (<= ULTIMATE.start_main_p7 v_idx_321)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |old(#valid)| v_idx_316)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_318) (= 1 (select |#valid| v_idx_318)) (< v_idx_318 ULTIMATE.start_main_p7)) (= v_v_4_3 (select |old(#memory_int)| v_idx_320)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_322) (< v_idx_322 ULTIMATE.start_main_p7) (= 0 (select |#memory_int| v_idx_322))) (or (<= ULTIMATE.start_main_p7 v_idx_313) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_313) v_v_66_3))))) (forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_74_3 Int) (v_v_97_3 Int) (v_v_96_3 Int) (v_v_98_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_330 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |#valid| v_idx_330))) (or (= (select |#memory_int| v_idx_334) v_v_98_3) (< v_idx_334 (+ ULTIMATE.start_main_p2 1))) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_329) (= 1 (select |#valid| v_idx_329)) (< v_idx_329 ULTIMATE.start_main_p7)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_325) (< v_idx_325 ULTIMATE.start_main_p7)) (or (= v_v_72_3 (select |#valid| v_idx_328)) (<= ULTIMATE.start_main_p7 v_idx_328)) (or (< v_idx_333 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_333) (= v_v_97_3 (select |#memory_int| v_idx_333))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_324) v_v_66_3) (<= ULTIMATE.start_main_p7 v_idx_324)) (= v_v_2_3 (select |old(#valid)| v_idx_327)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_326) v_v_68_3) (< v_idx_326 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#memory_int)| v_idx_331) v_v_4_3) (or (<= ULTIMATE.start_main_p2 v_idx_332) (= (select |#memory_int| v_idx_332) v_v_96_3))))))} [2019-01-18 14:53:53,028 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:53,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-18 14:53:53,075 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (forall ((v_idx_336 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_336) (< v_idx_336 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_340 Int)) (or (= 1 (select |#valid| v_idx_340)) (< v_idx_340 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_340))))} [2019-01-18 14:53:56,343 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:56,344 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:56,344 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:56,344 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:56,344 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_354) (= (select |c_#memory_int| v_idx_354) v_v_93_3)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_355) (= 0 (select |c_#memory_int| v_idx_355)) (< v_idx_355 c_ULTIMATE.start_main_p7)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_353)) (or (< v_idx_352 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_352))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_347) (< v_idx_347 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_347) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_66_3) (<= c_ULTIMATE.start_main_p7 v_idx_346)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_68_3) (< v_idx_348 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |c_old(#valid)| v_idx_349)) (or (<= c_ULTIMATE.start_main_p7 v_idx_350) (= v_v_72_3 (select |c_#valid| v_idx_350))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_351) (< v_idx_351 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_351))) (or (< v_idx_356 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_95_3 (select |c_#memory_int| v_idx_356)))))) (forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_96_3 Int) (v_v_74_3 Int) (v_v_97_3 Int) (v_v_98_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_367 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_367) v_v_98_3)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_362) (< v_idx_362 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_362))) (or (<= c_ULTIMATE.start_main_p7 v_idx_357) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_357) v_v_66_3)) (or (<= c_ULTIMATE.start_main_p2 v_idx_365) (= (select |c_#memory_int| v_idx_365) v_v_96_3)) (or (<= c_ULTIMATE.start_main_p7 v_idx_361) (= v_v_72_3 (select |c_#valid| v_idx_361))) (or (< v_idx_358 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_358)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_358)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_74_3 (select |c_#valid| v_idx_363)) (< v_idx_363 (+ c_ULTIMATE.start_main_p7 1))) (= (select |c_old(#valid)| v_idx_360) v_v_2_3) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_364)) (or (= v_v_68_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_359)) (< v_idx_359 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_97_3 (select |c_#memory_int| v_idx_366)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_366) (< v_idx_366 c_ULTIMATE.start_main_p2))))))} [2019-01-18 14:53:56,345 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:56,345 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:56,345 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_74_3 Int) (v_v_159_3 Int) (v_v_158_3 Int) (v_v_157_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (<= (- v_v_158_3 (- v_v_158_3)) (- 2)) (= (select |c_old(#valid)| v_idx_371) v_v_2_3) (or (< v_idx_369 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_369) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_369))) (or (= v_v_68_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_370)) (< v_idx_370 (+ c_ULTIMATE.start_main_p7 1))) (<= (+ v_v_158_3 1) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_368) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_368) v_v_66_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_375)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_377) (< v_idx_377 c_ULTIMATE.start_main_p1) (= v_v_158_3 (select |c_#memory_int| v_idx_377))) (or (= v_v_159_3 (select |c_#memory_int| v_idx_378)) (< v_idx_378 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_374 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |c_#valid| v_idx_374))) (or (< v_idx_373 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_373)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_373)) (or (<= c_ULTIMATE.start_main_p1 v_idx_376) (= (select |c_#memory_int| v_idx_376) v_v_157_3)) (or (= v_v_72_3 (select |c_#valid| v_idx_372)) (<= c_ULTIMATE.start_main_p7 v_idx_372)))))} [2019-01-18 14:53:56,345 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:56,882 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:56,883 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:04,832 WARN L181 SmtUtils]: Spent 7.95 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:04,833 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_93_3 Int) (v_v_74_3 Int) (v_v_95_3 Int) (v_v_68_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p7 v_idx_354) (= (select |#memory_int| v_idx_354) v_v_93_3)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_355) (= 0 (select |#memory_int| v_idx_355)) (< v_idx_355 ULTIMATE.start_main_p7)) (= v_v_4_3 (select |old(#memory_int)| v_idx_353)) (or (< v_idx_352 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_3 (select |#valid| v_idx_352))) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_347) (< v_idx_347 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_347) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_66_3) (<= ULTIMATE.start_main_p7 v_idx_346)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_68_3) (< v_idx_348 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_3 (select |old(#valid)| v_idx_349)) (or (<= ULTIMATE.start_main_p7 v_idx_350) (= v_v_72_3 (select |#valid| v_idx_350))) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_351) (< v_idx_351 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_351))) (or (< v_idx_356 (+ ULTIMATE.start_main_p7 1)) (= v_v_95_3 (select |#memory_int| v_idx_356)))))) (forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_66_3 Int) (v_v_72_3 Int) (v_v_96_3 Int) (v_v_74_3 Int) (v_v_97_3 Int) (v_v_98_3 Int) (v_v_2_3 Int) (v_v_68_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_367 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_367) v_v_98_3)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_362) (< v_idx_362 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_362))) (or (<= ULTIMATE.start_main_p7 v_idx_357) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_357) v_v_66_3)) (or (<= ULTIMATE.start_main_p2 v_idx_365) (= (select |#memory_int| v_idx_365) v_v_96_3)) (or (<= ULTIMATE.start_main_p7 v_idx_361) (= v_v_72_3 (select |#valid| v_idx_361))) (or (< v_idx_358 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_358)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_358)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_74_3 (select |#valid| v_idx_363)) (< v_idx_363 (+ ULTIMATE.start_main_p7 1))) (= (select |old(#valid)| v_idx_360) v_v_2_3) (= v_v_4_3 (select |old(#memory_int)| v_idx_364)) (or (= v_v_68_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_359)) (< v_idx_359 (+ ULTIMATE.start_main_p7 1))) (or (= v_v_97_3 (select |#memory_int| v_idx_366)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_366) (< v_idx_366 ULTIMATE.start_main_p2))))))} [2019-01-18 14:54:04,833 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:04,833 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:05,065 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_377 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_377) (< v_idx_377 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_377) 1) 0))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_6 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_6)) 2) 0) (< v_prenex_6 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_6))) (forall ((v_idx_369 Int)) (or (< v_idx_369 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_369) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_369)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_373 Int)) (or (< v_idx_373 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_373)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_373))))} [2019-01-18 14:54:05,218 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:54:05,219 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:54:05,219 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:05,219 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:54:05,219 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:05,219 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:54:05,228 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:05,229 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:54:05,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:05,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:05,238 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:54:05,306 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 24 treesize of output 27 [2019-01-18 14:54:05,315 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 27 treesize of output 33 [2019-01-18 14:54:05,325 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,327 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,329 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 29 treesize of output 43 [2019-01-18 14:54:05,341 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,343 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,345 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,347 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:54:05,363 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,365 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,367 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,369 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,371 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:54:05,390 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,391 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,392 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,393 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,394 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,396 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:54:05,433 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:54:05,436 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,482 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,520 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,565 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,586 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,608 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,626 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:05,669 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,670 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:54:05,732 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,734 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,736 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:54:05,819 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,820 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,822 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,825 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,826 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:54:05,908 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,910 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,911 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,912 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,914 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,915 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:05,916 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:54:06,022 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,024 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,025 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,026 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,028 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,032 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,033 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,033 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,035 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:54:06,038 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,069 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,100 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,134 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,164 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,235 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:06,236 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 7 variables, input treesize:95, output treesize:96 [2019-01-18 14:54:06,372 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:06,373 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_43|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_11|]. (let ((.cse1 (store |v_#valid_11| ULTIMATE.start_main_p1 1))) (let ((.cse3 (store .cse1 ULTIMATE.start_main_p2 1))) (let ((.cse2 (store .cse3 ULTIMATE.start_main_p3 1))) (let ((.cse0 (store .cse2 ULTIMATE.start_main_p4 1))) (and (= (select .cse0 ULTIMATE.start_main_p5) 0) (= 0 (select .cse1 ULTIMATE.start_main_p2)) (= (select .cse2 ULTIMATE.start_main_p4) 0) (= (select .cse3 ULTIMATE.start_main_p3) 0) (= (store (store (store (store (store (store (store |v_#memory_int_43| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|) (= 0 (select (store .cse0 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6))))))) [2019-01-18 14:54:06,373 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:54:06,537 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:06,539 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 97 [2019-01-18 14:54:06,543 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:06,614 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:06,614 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:54:07,181 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:07,181 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_44|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_44| ULTIMATE.start_main_p2))) (and (= |#memory_int| (store |v_#memory_int_44| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))) (= .cse0 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_44| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_44| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_44| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_44| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_44| ULTIMATE.start_main_p3)))) [2019-01-18 14:54:07,181 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:54:07,249 INFO L273 TraceCheckUtils]: 0: Hoare triple {580#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {587#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:54:07,253 INFO L273 TraceCheckUtils]: 1: Hoare triple {587#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (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]; {591#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-01-18 14:54:07,254 INFO L273 TraceCheckUtils]: 2: Hoare triple {591#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} assume !(#memory_int[main_p1] >= 0); {581#false} is VALID [2019-01-18 14:54:07,255 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:07,255 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:54:07,277 INFO L273 TraceCheckUtils]: 2: Hoare triple {595#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {581#false} is VALID [2019-01-18 14:54:07,278 INFO L273 TraceCheckUtils]: 1: Hoare triple {599#(<= 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]; {595#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:07,281 INFO L273 TraceCheckUtils]: 0: Hoare triple {580#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {599#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:07,282 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:07,301 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:54:07,301 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:54:07,302 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:54:07,302 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:54:07,302 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:07,302 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:54:07,319 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:07,319 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:54:07,320 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:54:07,320 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:54:07,320 INFO L87 Difference]: Start difference. First operand 23 states and 66 transitions. Second operand 6 states. [2019-01-18 14:54:08,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:08,098 INFO L93 Difference]: Finished difference Result 57 states and 111 transitions. [2019-01-18 14:54:08,098 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:54:08,098 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:54:08,098 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:08,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:54:08,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2019-01-18 14:54:08,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:54:08,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2019-01-18 14:54:08,101 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2019-01-18 14:54:08,327 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:08,329 INFO L225 Difference]: With dead ends: 57 [2019-01-18 14:54:08,330 INFO L226 Difference]: Without dead ends: 56 [2019-01-18 14:54:08,330 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:54:08,330 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2019-01-18 14:54:08,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 25. [2019-01-18 14:54:08,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:08,414 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand 25 states. [2019-01-18 14:54:08,414 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand 25 states. [2019-01-18 14:54:08,414 INFO L87 Difference]: Start difference. First operand 56 states. Second operand 25 states. [2019-01-18 14:54:08,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:08,417 INFO L93 Difference]: Finished difference Result 56 states and 109 transitions. [2019-01-18 14:54:08,417 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 109 transitions. [2019-01-18 14:54:08,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:08,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:08,418 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 56 states. [2019-01-18 14:54:08,418 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 56 states. [2019-01-18 14:54:08,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:08,421 INFO L93 Difference]: Finished difference Result 56 states and 109 transitions. [2019-01-18 14:54:08,421 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 109 transitions. [2019-01-18 14:54:08,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:08,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:08,422 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:08,422 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:08,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-01-18 14:54:08,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 82 transitions. [2019-01-18 14:54:08,424 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 82 transitions. Word has length 3 [2019-01-18 14:54:08,425 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:08,425 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 82 transitions. [2019-01-18 14:54:08,425 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:54:08,425 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 82 transitions. [2019-01-18 14:54:08,425 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:54:08,425 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:08,426 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:54:08,426 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:08,426 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:08,426 INFO L82 PathProgramCache]: Analyzing trace with hash 30628, now seen corresponding path program 1 times [2019-01-18 14:54:08,426 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:08,427 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:08,427 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:08,427 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:08,427 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:08,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:08,528 INFO L273 TraceCheckUtils]: 0: Hoare triple {814#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {816#(= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:08,529 INFO L273 TraceCheckUtils]: 1: Hoare triple {816#(= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {817#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:54:08,530 INFO L273 TraceCheckUtils]: 2: Hoare triple {817#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {815#false} is VALID [2019-01-18 14:54:08,530 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:08,530 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:08,531 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:54:08,531 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:54:08,531 INFO L207 CegarAbsIntRunner]: [0], [26], [31] [2019-01-18 14:54:08,533 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:54:08,533 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:54:11,068 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:11,068 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:11,068 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:11,068 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:11,068 WARN L224 ngHoareTripleChecker]: Pre: {2147483615#(forall ((v_idx_401 Int) (v_idx_402 Int) (v_idx_399 Int) (v_idx_400 Int) (v_idx_405 Int) (v_idx_403 Int) (v_idx_404 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_395 Int) (v_idx_396 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_2_4 Int) (v_v_68_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_404 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_404) (= (select |c_#memory_int| v_idx_404) 0)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_402)) (= v_v_2_4 (select |c_old(#valid)| v_idx_398)) (or (= (select |c_#valid| v_idx_401) v_v_74_4) (< v_idx_401 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_400 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_400) (= 1 (select |c_#valid| v_idx_400))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_396) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_396) 0) (< v_idx_396 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_405) v_v_95_4) (< v_idx_405 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_66_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_395)) (<= c_ULTIMATE.start_main_p7 v_idx_395)) (or (< v_idx_397 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_397) v_v_68_4)) (or (= v_v_72_4 (select |c_#valid| v_idx_399)) (<= c_ULTIMATE.start_main_p7 v_idx_399)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_403) v_v_93_4) (<= c_ULTIMATE.start_main_p7 v_idx_403)))))} [2019-01-18 14:54:11,069 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:11,069 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:11,069 WARN L230 ngHoareTripleChecker]: Post: {2147483614#(forall ((v_idx_412 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_411 Int) (v_idx_416 Int) (v_idx_406 Int) (v_idx_414 Int) (v_idx_415 Int) (v_idx_409 Int) (v_idx_407 Int) (v_idx_408 Int)) (exists ((v_v_74_4 Int) (v_v_96_4 Int) (v_v_66_4 Int) (v_v_98_4 Int) (v_v_72_4 Int) (v_v_97_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_413)) (or (< v_idx_411 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_411) (= 1 (select |c_#valid| v_idx_411))) (or (< v_idx_408 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_408))) (or (<= c_ULTIMATE.start_main_p7 v_idx_410) (= (select |c_#valid| v_idx_410) v_v_72_4)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_407) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_407)) (< v_idx_407 c_ULTIMATE.start_main_p7)) (= v_v_2_4 (select |c_old(#valid)| v_idx_409)) (or (= (select |c_#memory_int| v_idx_415) v_v_97_4) (< v_idx_415 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_main_p6 1) v_idx_415)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_406) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_406)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_412) v_v_74_4) (< v_idx_412 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_416) v_v_98_4) (< v_idx_416 (+ c_ULTIMATE.start_main_p6 1))) (or (<= c_ULTIMATE.start_main_p6 v_idx_414) (= (select |c_#memory_int| v_idx_414) v_v_96_4)))))} [2019-01-18 14:54:11,069 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:11,467 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:11,467 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:11,705 WARN L270 ngHoareTripleChecker]: Pre: {2147483615#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_404 Int)) (or (< v_idx_404 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_404) (= (select |#memory_int| v_idx_404) 0))) (forall ((v_idx_400 Int)) (or (< v_idx_400 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_400) (= 1 (select |#valid| v_idx_400)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_396 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_396) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_396) 0) (< v_idx_396 ULTIMATE.start_main_p7))))} [2019-01-18 14:54:11,706 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:11,706 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:11,733 WARN L276 ngHoareTripleChecker]: Post: {2147483614#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_407 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_407) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_407)) (< v_idx_407 ULTIMATE.start_main_p7))) (forall ((v_idx_411 Int)) (or (< v_idx_411 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_411) (= 1 (select |#valid| v_idx_411)))))} [2019-01-18 14:54:14,062 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:14,062 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:14,062 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:14,063 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:14,063 WARN L224 ngHoareTripleChecker]: Pre: {2147483613#(forall ((v_idx_423 Int) (v_idx_424 Int) (v_idx_421 Int) (v_idx_422 Int) (v_idx_427 Int) (v_idx_417 Int) (v_idx_425 Int) (v_idx_426 Int) (v_idx_418 Int) (v_idx_419 Int) (v_idx_420 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_419 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_419) v_v_68_4)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_74_4 (select |c_#valid| v_idx_423)) (< v_idx_423 (+ c_ULTIMATE.start_main_p7 1))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_418) (< v_idx_418 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_418) 0)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_417) (= v_v_66_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_417))) (or (< v_idx_422 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_422)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_422)) (or (= (select |c_#memory_int| v_idx_427) v_v_95_4) (< v_idx_427 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_426 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_426) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_426)) (or (<= c_ULTIMATE.start_main_p7 v_idx_421) (= v_v_72_4 (select |c_#valid| v_idx_421))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_424)) (= (select |c_old(#valid)| v_idx_420) v_v_2_4) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_425) v_v_93_4) (<= c_ULTIMATE.start_main_p7 v_idx_425)))))} [2019-01-18 14:54:14,063 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:14,063 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:14,063 WARN L230 ngHoareTripleChecker]: Post: {2147483612#(forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_428 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_72_4 Int) (v_v_111_4 Int) (v_v_112_4 Int) (v_v_110_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= (- v_v_111_4 (- v_v_111_4)) (- 2)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_436) v_v_110_4) (<= c_ULTIMATE.start_main_p1 v_idx_436)) (or (< v_idx_430 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_430) v_v_68_4)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_429) (< v_idx_429 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_429))) (or (< v_idx_433 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_433) (= 1 (select |c_#valid| v_idx_433))) (or (< v_idx_434 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_434) v_v_74_4)) (or (<= c_ULTIMATE.start_main_p7 v_idx_432) (= (select |c_#valid| v_idx_432) v_v_72_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_435)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_437) v_v_111_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_437) (< v_idx_437 c_ULTIMATE.start_main_p1)) (<= (+ v_v_111_4 1) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_431)) (or (= (select |c_#memory_int| v_idx_438) v_v_112_4) (< v_idx_438 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_66_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_428)) (<= c_ULTIMATE.start_main_p7 v_idx_428)))))} [2019-01-18 14:54:14,064 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:14,510 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:14,510 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:14,722 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_422 Int)) (or (< v_idx_422 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_422)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_422))) (forall ((v_idx_426 Int)) (or (< v_idx_426 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_426) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_426))) (forall ((v_idx_418 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_418) (< v_idx_418 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_418) 0))))} [2019-01-18 14:54:14,722 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:14,722 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:14,829 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_433 Int)) (or (< v_idx_433 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_433) (= 1 (select |#valid| v_idx_433)))) (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_437 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_437) (< v_idx_437 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_437) 1) 0))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_429 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_429) (< v_idx_429 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_429)))))} [2019-01-18 14:54:17,214 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:17,214 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:17,214 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:17,214 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:17,214 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(or (forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_450 Int) (v_idx_451 Int)) (exists ((v_v_96_4 Int) (v_v_74_4 Int) (v_v_66_4 Int) (v_v_98_4 Int) (v_v_72_4 Int) (v_v_97_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_455 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_455) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_455)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_453) v_v_2_4) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_457)) (or (< v_idx_452 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_452))) (or (< v_idx_460 (+ c_ULTIMATE.start_main_p6 1)) (= (select |c_#memory_int| v_idx_460) v_v_98_4)) (or (= v_v_72_4 (select |c_#valid| v_idx_454)) (<= c_ULTIMATE.start_main_p7 v_idx_454)) (or (<= (+ c_ULTIMATE.start_main_p6 1) v_idx_459) (< v_idx_459 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_459) v_v_97_4)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_451) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_451)) (< v_idx_451 c_ULTIMATE.start_main_p7)) (or (<= c_ULTIMATE.start_main_p6 v_idx_458) (= (select |c_#memory_int| v_idx_458) v_v_96_4)) (or (= (select |c_#valid| v_idx_456) v_v_74_4) (< v_idx_456 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_450) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_450))))) (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_439 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_449) v_v_95_4) (< v_idx_449 (+ c_ULTIMATE.start_main_p7 1))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_439) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_439)) (or (= (select |c_#valid| v_idx_445) v_v_74_4) (< v_idx_445 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_446)) (or (= (select |c_#valid| v_idx_443) v_v_72_4) (<= c_ULTIMATE.start_main_p7 v_idx_443)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_444) (< v_idx_444 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_444) 1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_440)) (< v_idx_440 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_440)) (or (= (select |c_#memory_int| v_idx_448) 0) (< v_idx_448 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_448)) (or (= v_v_68_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_441)) (< v_idx_441 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_442) v_v_2_4) (or (<= c_ULTIMATE.start_main_p7 v_idx_447) (= (select |c_#memory_int| v_idx_447) v_v_93_4))))))} [2019-01-18 14:54:17,215 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:17,215 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:17,215 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(forall ((v_idx_467 Int) (v_idx_468 Int) (v_idx_465 Int) (v_idx_466 Int) (v_idx_469 Int) (v_idx_470 Int) (v_idx_471 Int) (v_idx_463 Int) (v_idx_464 Int) (v_idx_461 Int) (v_idx_462 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_115_4 Int) (v_v_72_4 Int) (v_v_113_4 Int) (v_v_114_4 Int) (v_v_2_4 Int) (v_v_68_4 Int) (v_v_4_4 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_468)) (= (select |c_old(#valid)| v_idx_464) v_v_2_4) (or (= v_v_115_4 (select |c_#memory_int| v_idx_471)) (< v_idx_471 (+ c_ULTIMATE.start_main_p6 1))) (or (< v_idx_466 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_466) (= (select |c_#valid| v_idx_466) 1)) (or (<= c_ULTIMATE.start_main_p7 v_idx_461) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_461) v_v_66_4)) (or (= (select |c_#memory_int| v_idx_469) v_v_113_4) (<= c_ULTIMATE.start_main_p6 v_idx_469)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_462)) (< v_idx_462 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_462)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p6 1) v_idx_470) (< v_idx_470 c_ULTIMATE.start_main_p6) (= (select |c_#memory_int| v_idx_470) v_v_114_4)) (or (< v_idx_463 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_463) v_v_68_4)) (or (= (select |c_#valid| v_idx_467) v_v_74_4) (< v_idx_467 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_465) (= (select |c_#valid| v_idx_465) v_v_72_4)))))} [2019-01-18 14:54:17,215 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:17,614 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:17,614 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:25,650 WARN L181 SmtUtils]: Spent 8.04 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:25,650 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(or (forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_450 Int) (v_idx_451 Int)) (exists ((v_v_96_4 Int) (v_v_74_4 Int) (v_v_66_4 Int) (v_v_98_4 Int) (v_v_72_4 Int) (v_v_97_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (< v_idx_455 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_455) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_455)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (= (select |old(#valid)| v_idx_453) v_v_2_4) (= v_v_4_4 (select |old(#memory_int)| v_idx_457)) (or (< v_idx_452 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_452))) (or (< v_idx_460 (+ ULTIMATE.start_main_p6 1)) (= (select |#memory_int| v_idx_460) v_v_98_4)) (or (= v_v_72_4 (select |#valid| v_idx_454)) (<= ULTIMATE.start_main_p7 v_idx_454)) (or (<= (+ ULTIMATE.start_main_p6 1) v_idx_459) (< v_idx_459 ULTIMATE.start_main_p6) (= (select |#memory_int| v_idx_459) v_v_97_4)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_451) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_451)) (< v_idx_451 ULTIMATE.start_main_p7)) (or (<= ULTIMATE.start_main_p6 v_idx_458) (= (select |#memory_int| v_idx_458) v_v_96_4)) (or (= (select |#valid| v_idx_456) v_v_74_4) (< v_idx_456 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_450) v_v_66_4) (<= ULTIMATE.start_main_p7 v_idx_450))))) (forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_439 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_449) v_v_95_4) (< v_idx_449 (+ ULTIMATE.start_main_p7 1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_439) v_v_66_4) (<= ULTIMATE.start_main_p7 v_idx_439)) (or (= (select |#valid| v_idx_445) v_v_74_4) (< v_idx_445 (+ ULTIMATE.start_main_p7 1))) (= v_v_4_4 (select |old(#memory_int)| v_idx_446)) (or (= (select |#valid| v_idx_443) v_v_72_4) (<= ULTIMATE.start_main_p7 v_idx_443)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_444) (< v_idx_444 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_444) 1)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_440)) (< v_idx_440 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_440)) (or (= (select |#memory_int| v_idx_448) 0) (< v_idx_448 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_448)) (or (= v_v_68_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_441)) (< v_idx_441 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_442) v_v_2_4) (or (<= ULTIMATE.start_main_p7 v_idx_447) (= (select |#memory_int| v_idx_447) v_v_93_4))))))} [2019-01-18 14:54:25,650 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; [2019-01-18 14:54:25,650 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p6 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p6) (- 1)))) [2019-01-18 14:54:25,844 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_462 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_462)) (< v_idx_462 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_462))) (forall ((v_idx_466 Int)) (or (< v_idx_466 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_466) (= (select |#valid| v_idx_466) 1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:54:28,710 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:28,711 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:28,711 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:28,711 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:28,712 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (= (select |c_old(#memory_int)| v_idx_479) v_v_4_4) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_481 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_481) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_481)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_477 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_477) (= 1 (select |c_#valid| v_idx_477))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_473) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_473)) (< v_idx_473 c_ULTIMATE.start_main_p7)) (or (< v_idx_474 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_474))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_472) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_472)) (or (<= c_ULTIMATE.start_main_p7 v_idx_480) (= (select |c_#memory_int| v_idx_480) v_v_93_4)) (or (= v_v_72_4 (select |c_#valid| v_idx_476)) (<= c_ULTIMATE.start_main_p7 v_idx_476)) (or (< v_idx_478 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_4 (select |c_#valid| v_idx_478))) (= v_v_2_4 (select |c_old(#valid)| v_idx_475)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_482) v_v_95_4) (< v_idx_482 (+ c_ULTIMATE.start_main_p7 1)))))) (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_74_4 Int) (v_v_96_4 Int) (v_v_66_4 Int) (v_v_98_4 Int) (v_v_97_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_484) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_484)) (< v_idx_484 c_ULTIMATE.start_main_p7)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_483) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_483)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_485) v_v_68_4) (< v_idx_485 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_490)) (or (< v_idx_493 (+ c_ULTIMATE.start_main_p6 1)) (= (select |c_#memory_int| v_idx_493) v_v_98_4)) (or (= (select |c_#memory_int| v_idx_492) v_v_97_4) (< v_idx_492 c_ULTIMATE.start_main_p6) (<= (+ c_ULTIMATE.start_main_p6 1) v_idx_492)) (= (select |c_old(#valid)| v_idx_486) v_v_2_4) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_487) (= (select |c_#valid| v_idx_487) v_v_72_4)) (or (< v_idx_489 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_489) v_v_74_4)) (or (= (select |c_#memory_int| v_idx_491) v_v_96_4) (<= c_ULTIMATE.start_main_p6 v_idx_491)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_488) (= 1 (select |c_#valid| v_idx_488)) (< v_idx_488 c_ULTIMATE.start_main_p7))))))} [2019-01-18 14:54:28,712 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:28,712 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:28,712 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_504 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_159_4 Int) (v_v_72_4 Int) (v_v_158_4 Int) (v_v_157_4 Int) (v_v_2_4 Int) (v_v_68_4 Int) (v_v_4_4 Int)) (and (or (= (select |c_#memory_int| v_idx_504) v_v_159_4) (< v_idx_504 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_501)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_503) (= v_v_158_4 (select |c_#memory_int| v_idx_503)) (< v_idx_503 c_ULTIMATE.start_main_p1)) (= v_v_2_4 (select |c_old(#valid)| v_idx_497)) (<= (+ v_v_158_4 1) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_494) v_v_66_4) (<= c_ULTIMATE.start_main_p7 v_idx_494)) (or (<= c_ULTIMATE.start_main_p7 v_idx_498) (= (select |c_#valid| v_idx_498) v_v_72_4)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_495) (< v_idx_495 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_495))) (or (<= c_ULTIMATE.start_main_p1 v_idx_502) (= v_v_157_4 (select |c_#memory_int| v_idx_502))) (<= (- v_v_158_4 (- v_v_158_4)) (- 2)) (or (< v_idx_500 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_500) v_v_74_4)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_496) v_v_68_4) (< v_idx_496 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_499 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_499)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_499)))))} [2019-01-18 14:54:28,712 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:29,160 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:29,160 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:37,303 WARN L181 SmtUtils]: Spent 8.14 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:37,304 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(or (forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_74_4 Int) (v_v_66_4 Int) (v_v_93_4 Int) (v_v_95_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (= (select |old(#memory_int)| v_idx_479) v_v_4_4) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_481 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_481) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_481)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_477 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_477) (= 1 (select |#valid| v_idx_477))) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_473) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_473)) (< v_idx_473 ULTIMATE.start_main_p7)) (or (< v_idx_474 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_4 (select |ULTIMATE.start_malloc_old_#valid| v_idx_474))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_472) v_v_66_4) (<= ULTIMATE.start_main_p7 v_idx_472)) (or (<= ULTIMATE.start_main_p7 v_idx_480) (= (select |#memory_int| v_idx_480) v_v_93_4)) (or (= v_v_72_4 (select |#valid| v_idx_476)) (<= ULTIMATE.start_main_p7 v_idx_476)) (or (< v_idx_478 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_4 (select |#valid| v_idx_478))) (= v_v_2_4 (select |old(#valid)| v_idx_475)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_482) v_v_95_4) (< v_idx_482 (+ ULTIMATE.start_main_p7 1)))))) (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_74_4 Int) (v_v_96_4 Int) (v_v_66_4 Int) (v_v_98_4 Int) (v_v_97_4 Int) (v_v_72_4 Int) (v_v_68_4 Int) (v_v_2_4 Int) (v_v_4_4 Int)) (and (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_484) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_484)) (< v_idx_484 ULTIMATE.start_main_p7)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_483) v_v_66_4) (<= ULTIMATE.start_main_p7 v_idx_483)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_485) v_v_68_4) (< v_idx_485 (+ ULTIMATE.start_main_p7 1))) (= v_v_4_4 (select |old(#memory_int)| v_idx_490)) (or (< v_idx_493 (+ ULTIMATE.start_main_p6 1)) (= (select |#memory_int| v_idx_493) v_v_98_4)) (or (= (select |#memory_int| v_idx_492) v_v_97_4) (< v_idx_492 ULTIMATE.start_main_p6) (<= (+ ULTIMATE.start_main_p6 1) v_idx_492)) (= (select |old(#valid)| v_idx_486) v_v_2_4) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_487) (= (select |#valid| v_idx_487) v_v_72_4)) (or (< v_idx_489 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_489) v_v_74_4)) (or (= (select |#memory_int| v_idx_491) v_v_96_4) (<= ULTIMATE.start_main_p6 v_idx_491)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_488) (= 1 (select |#valid| v_idx_488)) (< v_idx_488 ULTIMATE.start_main_p7))))))} [2019-01-18 14:54:37,304 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:37,304 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:37,550 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_495 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_495) (< v_idx_495 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_495)))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_503 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_503) (<= (+ (* 2 (select |#memory_int| v_idx_503)) 2) 0) (< v_idx_503 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_prenex_8) 1) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_8))) (forall ((v_idx_499 Int)) (or (< v_idx_499 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_499)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_499))))} [2019-01-18 14:54:37,731 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:54:37,731 INFO L272 AbstractInterpreter]: Visited 3 different actions 5 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:54:37,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:37,732 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:54:37,732 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:37,732 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:54:37,741 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:37,741 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:54:37,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:37,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:37,752 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:54:37,818 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 24 treesize of output 27 [2019-01-18 14:54:37,826 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 27 treesize of output 33 [2019-01-18 14:54:37,833 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,835 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,836 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 29 treesize of output 43 [2019-01-18 14:54:37,848 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,849 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,850 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,851 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:54:37,867 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,868 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,869 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,871 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,873 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:54:37,895 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,897 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,898 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,899 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,901 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:37,903 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:54:37,948 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:54:37,954 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,000 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,037 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,065 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,090 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,109 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,128 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,177 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,178 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:54:38,240 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,241 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,242 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:54:38,313 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,315 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,316 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,317 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,318 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:54:38,400 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,402 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,403 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,404 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,406 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,407 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,408 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:54:38,536 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,538 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,542 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,545 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,547 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,548 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,548 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,550 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:38,551 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:54:38,557 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,588 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,628 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,662 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,695 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:38,759 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:38,760 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 7 variables, input treesize:95, output treesize:96 [2019-01-18 14:54:38,870 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:38,870 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_46|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p7, |v_#valid_12|]. (let ((.cse2 (store |v_#valid_12| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse2 ULTIMATE.start_main_p2 1))) (let ((.cse3 (store .cse1 ULTIMATE.start_main_p3 1))) (let ((.cse0 (store .cse3 ULTIMATE.start_main_p4 1))) (and (= (select (store .cse0 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6) 0) (= 0 (select .cse1 ULTIMATE.start_main_p3)) (= 0 (select .cse0 ULTIMATE.start_main_p5)) (= 0 (select .cse2 ULTIMATE.start_main_p2)) (= 0 (select .cse3 ULTIMATE.start_main_p4)) (= (store (store (store (store (store (store (store |v_#memory_int_46| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|)))))) [2019-01-18 14:54:38,871 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:54:39,057 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:39,058 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 97 [2019-01-18 14:54:39,063 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:39,121 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:39,122 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:54:41,163 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:41,164 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_47|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_47| ULTIMATE.start_main_p6))) (and (= (select |v_#memory_int_47| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_47| ULTIMATE.start_main_p6 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_47| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_47| ULTIMATE.start_main_p3) 0) (= (select |v_#memory_int_47| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= .cse0 0) (= (select |v_#memory_int_47| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:54:41,164 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-01-18 14:54:41,229 INFO L273 TraceCheckUtils]: 0: Hoare triple {814#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {821#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} is VALID [2019-01-18 14:54:41,234 INFO L273 TraceCheckUtils]: 1: Hoare triple {821#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {825#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} is VALID [2019-01-18 14:54:41,235 INFO L273 TraceCheckUtils]: 2: Hoare triple {825#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))))} assume !(#memory_int[main_p1] >= 0); {815#false} is VALID [2019-01-18 14:54:41,236 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:41,236 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:54:41,262 INFO L273 TraceCheckUtils]: 2: Hoare triple {829#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {815#false} is VALID [2019-01-18 14:54:41,263 INFO L273 TraceCheckUtils]: 1: Hoare triple {833#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {829#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:41,266 INFO L273 TraceCheckUtils]: 0: Hoare triple {814#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {833#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:54:41,266 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:41,286 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:54:41,286 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:54:41,286 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:54:41,287 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:54:41,287 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:41,287 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:54:41,308 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 6 edges. 6 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:41,308 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:54:41,309 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:54:41,309 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:54:41,309 INFO L87 Difference]: Start difference. First operand 25 states and 82 transitions. Second operand 6 states. [2019-01-18 14:54:42,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:42,069 INFO L93 Difference]: Finished difference Result 59 states and 127 transitions. [2019-01-18 14:54:42,069 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:54:42,069 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:54:42,069 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:42,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:54:42,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2019-01-18 14:54:42,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:54:42,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2019-01-18 14:54:42,075 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2019-01-18 14:54:42,344 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:42,346 INFO L225 Difference]: With dead ends: 59 [2019-01-18 14:54:42,347 INFO L226 Difference]: Without dead ends: 57 [2019-01-18 14:54:42,347 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=38, Invalid=52, Unknown=0, NotChecked=0, Total=90 [2019-01-18 14:54:42,348 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2019-01-18 14:54:42,444 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 29. [2019-01-18 14:54:42,445 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:42,445 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand 29 states. [2019-01-18 14:54:42,445 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand 29 states. [2019-01-18 14:54:42,445 INFO L87 Difference]: Start difference. First operand 57 states. Second operand 29 states. [2019-01-18 14:54:42,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:42,448 INFO L93 Difference]: Finished difference Result 57 states and 124 transitions. [2019-01-18 14:54:42,449 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 124 transitions. [2019-01-18 14:54:42,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:42,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:42,449 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 57 states. [2019-01-18 14:54:42,450 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 57 states. [2019-01-18 14:54:42,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:42,453 INFO L93 Difference]: Finished difference Result 57 states and 124 transitions. [2019-01-18 14:54:42,453 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 124 transitions. [2019-01-18 14:54:42,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:42,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:42,454 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:42,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:42,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2019-01-18 14:54:42,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 101 transitions. [2019-01-18 14:54:42,456 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 101 transitions. Word has length 3 [2019-01-18 14:54:42,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:42,456 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 101 transitions. [2019-01-18 14:54:42,456 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:54:42,456 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 101 transitions. [2019-01-18 14:54:42,457 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:54:42,457 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:42,457 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:54:42,457 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:42,458 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:42,458 INFO L82 PathProgramCache]: Analyzing trace with hash 955362, now seen corresponding path program 1 times [2019-01-18 14:54:42,458 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:42,459 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:42,459 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:42,459 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:42,459 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:42,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:42,722 INFO L273 TraceCheckUtils]: 0: Hoare triple {1062#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1064#(= (select |#memory_int| ULTIMATE.start_main_p1) (select |#memory_int| ULTIMATE.start_main_p3))} is VALID [2019-01-18 14:54:42,734 INFO L273 TraceCheckUtils]: 1: Hoare triple {1064#(= (select |#memory_int| ULTIMATE.start_main_p1) (select |#memory_int| ULTIMATE.start_main_p3))} assume #memory_int[main_p1] >= 0; {1065#(<= 0 (select |#memory_int| ULTIMATE.start_main_p3))} is VALID [2019-01-18 14:54:42,747 INFO L273 TraceCheckUtils]: 2: Hoare triple {1065#(<= 0 (select |#memory_int| ULTIMATE.start_main_p3))} assume #memory_int[main_p2] <= 0; {1065#(<= 0 (select |#memory_int| ULTIMATE.start_main_p3))} is VALID [2019-01-18 14:54:42,760 INFO L273 TraceCheckUtils]: 3: Hoare triple {1065#(<= 0 (select |#memory_int| ULTIMATE.start_main_p3))} assume !(#memory_int[main_p3] >= 0); {1063#false} is VALID [2019-01-18 14:54:42,761 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:42,761 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:54:42,761 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2019-01-18 14:54:42,761 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:54:42,761 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:54:42,762 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:42,762 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:54:42,771 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:42,771 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:54:42,771 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:54:42,771 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2019-01-18 14:54:42,772 INFO L87 Difference]: Start difference. First operand 29 states and 101 transitions. Second operand 4 states. [2019-01-18 14:54:44,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,584 INFO L93 Difference]: Finished difference Result 37 states and 114 transitions. [2019-01-18 14:54:44,584 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:54:44,584 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:54:44,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:44,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:54:44,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2019-01-18 14:54:44,585 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:54:44,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2019-01-18 14:54:44,586 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 49 transitions. [2019-01-18 14:54:44,640 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:44,642 INFO L225 Difference]: With dead ends: 37 [2019-01-18 14:54:44,642 INFO L226 Difference]: Without dead ends: 36 [2019-01-18 14:54:44,642 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2019-01-18 14:54:44,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2019-01-18 14:54:44,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2019-01-18 14:54:44,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:44,725 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand 32 states. [2019-01-18 14:54:44,725 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 32 states. [2019-01-18 14:54:44,725 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 32 states. [2019-01-18 14:54:44,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,727 INFO L93 Difference]: Finished difference Result 36 states and 112 transitions. [2019-01-18 14:54:44,728 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 112 transitions. [2019-01-18 14:54:44,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:44,728 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:44,728 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 36 states. [2019-01-18 14:54:44,728 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 36 states. [2019-01-18 14:54:44,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:44,731 INFO L93 Difference]: Finished difference Result 36 states and 112 transitions. [2019-01-18 14:54:44,731 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 112 transitions. [2019-01-18 14:54:44,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:44,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:44,731 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:44,732 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:44,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2019-01-18 14:54:44,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 111 transitions. [2019-01-18 14:54:44,734 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 111 transitions. Word has length 4 [2019-01-18 14:54:44,734 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:44,734 INFO L480 AbstractCegarLoop]: Abstraction has 32 states and 111 transitions. [2019-01-18 14:54:44,734 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:54:44,734 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 111 transitions. [2019-01-18 14:54:44,734 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:54:44,735 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:44,735 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:54:44,735 INFO L423 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:44,735 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:44,735 INFO L82 PathProgramCache]: Analyzing trace with hash 941844, now seen corresponding path program 1 times [2019-01-18 14:54:44,735 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:44,736 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:44,736 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:44,736 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:44,737 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:44,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:44,917 INFO L273 TraceCheckUtils]: 0: Hoare triple {1233#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1235#(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-18 14:54:44,918 INFO L273 TraceCheckUtils]: 1: Hoare triple {1235#(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]; {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:44,919 INFO L273 TraceCheckUtils]: 2: Hoare triple {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:44,919 INFO L273 TraceCheckUtils]: 3: Hoare triple {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {1234#false} is VALID [2019-01-18 14:54:44,919 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:44,920 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:44,920 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:54:44,920 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:54:44,920 INFO L207 CegarAbsIntRunner]: [0], [18], [32], [33] [2019-01-18 14:54:44,922 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:54:44,922 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:54:47,486 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:47,486 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:47,487 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:47,487 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,487 WARN L224 ngHoareTripleChecker]: Pre: {2147483605#(forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_531 Int) (v_idx_521 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_4_5 Int) (v_v_74_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (= v_v_4_5 (select |c_old(#memory_int)| v_idx_528)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (= v_v_72_5 (select |c_#valid| v_idx_525)) (<= c_ULTIMATE.start_main_p7 v_idx_525)) (= v_v_2_5 (select |c_old(#valid)| v_idx_524)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_526)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_526) (< v_idx_526 c_ULTIMATE.start_main_p7)) (or (= v_v_74_5 (select |c_#valid| v_idx_527)) (< v_idx_527 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_521) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_521) v_v_66_5)) (or (= v_v_95_5 (select |c_#memory_int| v_idx_531)) (< v_idx_531 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_529) v_v_93_5) (<= c_ULTIMATE.start_main_p7 v_idx_529)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_522)) (< v_idx_522 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_522)) (or (< v_idx_530 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_530) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_530)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_523) v_v_68_5) (< v_idx_523 (+ c_ULTIMATE.start_main_p7 1))))))} [2019-01-18 14:54:47,487 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:47,487 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:47,487 WARN L230 ngHoareTripleChecker]: Post: {2147483604#(forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_542 Int) (v_idx_532 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_74_5 Int) (v_v_4_5 Int) (v_v_96_5 Int) (v_v_97_5 Int) (v_v_98_5 Int) (v_v_72_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (= (select |c_old(#valid)| v_idx_535) v_v_2_5) (or (< v_idx_534 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_534) v_v_68_5)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (< v_idx_538 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |c_#valid| v_idx_538))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_533) (< v_idx_533 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_533))) (or (= 1 (select |c_#valid| v_idx_537)) (< v_idx_537 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_537)) (or (<= c_ULTIMATE.start_main_p7 v_idx_532) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_532) v_v_66_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_539)) (<= 0 v_v_97_5) (or (< v_idx_541 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_541) (= (select |c_#memory_int| v_idx_541) v_v_97_5)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_97_5) v_v_97_5) 0) (or (< v_idx_542 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_542) v_v_98_5)) (or (<= c_ULTIMATE.start_main_p1 v_idx_540) (= (select |c_#memory_int| v_idx_540) v_v_96_5)) (or (<= c_ULTIMATE.start_main_p7 v_idx_536) (= v_v_72_5 (select |c_#valid| v_idx_536))))))} [2019-01-18 14:54:47,488 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:48,020 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:48,020 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:48,054 WARN L270 ngHoareTripleChecker]: Pre: {2147483605#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_522 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_522)) (< v_idx_522 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_522))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_526 Int)) (or (= 1 (select |#valid| v_idx_526)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_526) (< v_idx_526 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_530 Int)) (or (< v_idx_530 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_530) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_530))))} [2019-01-18 14:54:48,055 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:48,055 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:48,271 WARN L276 ngHoareTripleChecker]: Post: {2147483604#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_537 Int)) (or (= 1 (select |#valid| v_idx_537)) (< v_idx_537 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_537))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_9 Int)) (or (< v_prenex_9 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_9) (<= 0 (select |#memory_int| v_prenex_9)))) (forall ((v_idx_541 Int)) (or (< v_idx_541 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_541))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_541))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_533 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_533) (< v_idx_533 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_533)))))} [2019-01-18 14:54:50,358 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:50,358 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:50,358 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:50,359 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:50,359 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_553 Int) (v_idx_543 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_74_5 Int) (v_v_4_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_552) (= (select |c_#memory_int| v_idx_552) 0) (< v_idx_552 c_ULTIMATE.start_main_p7)) (or (< v_idx_549 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |c_#valid| v_idx_549))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_543) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_543) v_v_66_5)) (or (= (select |c_#memory_int| v_idx_551) v_v_93_5) (<= c_ULTIMATE.start_main_p7 v_idx_551)) (or (< v_idx_545 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_545) v_v_68_5)) (= (select |c_old(#valid)| v_idx_546) v_v_2_5) (or (< v_idx_553 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_553) v_v_95_5)) (or (= v_v_72_5 (select |c_#valid| v_idx_547)) (<= c_ULTIMATE.start_main_p7 v_idx_547)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_544) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_544)) (< v_idx_544 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_548) (= 1 (select |c_#valid| v_idx_548)) (< v_idx_548 c_ULTIMATE.start_main_p7)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_550)))))} [2019-01-18 14:54:50,359 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:54:50,359 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:54:50,359 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_564 Int) (v_idx_554 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_4_5 Int) (v_v_74_5 Int) (v_v_100_5 Int) (v_v_72_5 Int) (v_v_101_5 Int) (v_v_99_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p7 v_idx_554) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_554) v_v_66_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_557)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_561)) (or (= 1 (select |c_#valid| v_idx_559)) (< v_idx_559 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_559)) (or (< v_idx_556 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_556) v_v_68_5)) (or (= (select |c_#memory_int| v_idx_564) v_v_101_5) (< v_idx_564 (+ c_ULTIMATE.start_main_p4 1))) (or (= (select |c_#memory_int| v_idx_562) v_v_99_5) (<= c_ULTIMATE.start_main_p4 v_idx_562)) (or (= v_v_72_5 (select |c_#valid| v_idx_558)) (<= c_ULTIMATE.start_main_p7 v_idx_558)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_555) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_555)) (< v_idx_555 c_ULTIMATE.start_main_p7)) (or (< v_idx_560 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |c_#valid| v_idx_560))) (or (< v_idx_563 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_563) (= (select |c_#memory_int| v_idx_563) v_v_100_5)))))} [2019-01-18 14:54:50,359 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:50,781 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:50,781 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:51,013 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(and (forall ((v_idx_544 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_544) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_544)) (< v_idx_544 ULTIMATE.start_main_p7))) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_552 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_552) (= (select |#memory_int| v_idx_552) 0) (< v_idx_552 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_548 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_548) (= 1 (select |#valid| v_idx_548)) (< v_idx_548 ULTIMATE.start_main_p7))))} [2019-01-18 14:54:51,013 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:54:51,013 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:54:51,037 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (forall ((v_idx_559 Int)) (or (= 1 (select |#valid| v_idx_559)) (< v_idx_559 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_559))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_555 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_555) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_555)) (< v_idx_555 ULTIMATE.start_main_p7))))} [2019-01-18 14:54:53,993 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:53,994 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:53,994 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:53,994 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:53,994 WARN L224 ngHoareTripleChecker]: Pre: {2147483601#(forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_575 Int) (v_idx_565 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_96_5 Int) (v_v_4_5 Int) (v_v_74_5 Int) (v_v_97_5 Int) (v_v_98_5 Int) (v_v_72_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= v_v_66_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_565)) (<= c_ULTIMATE.start_main_p7 v_idx_565)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_566) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_566) (< v_idx_566 c_ULTIMATE.start_main_p7)) (or (= v_v_72_5 (select |c_#valid| v_idx_569)) (<= c_ULTIMATE.start_main_p7 v_idx_569)) (or (= (select |c_#memory_int| v_idx_573) v_v_96_5) (<= c_ULTIMATE.start_main_p1 v_idx_573)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_572)) (or (= (select |c_#memory_int| v_idx_575) v_v_98_5) (< v_idx_575 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_567) v_v_68_5) (< v_idx_567 (+ c_ULTIMATE.start_main_p7 1))) (<= 0 v_v_97_5) (= (select |c_old(#valid)| v_idx_568) v_v_2_5) (or (= v_v_74_5 (select |c_#valid| v_idx_571)) (< v_idx_571 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (<= (- (- v_v_97_5) v_v_97_5) 0) (or (= 1 (select |c_#valid| v_idx_570)) (< v_idx_570 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_570)) (or (< v_idx_574 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_574) (= (select |c_#memory_int| v_idx_574) v_v_97_5)))))} [2019-01-18 14:54:53,994 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:54:53,995 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:54:53,995 WARN L230 ngHoareTripleChecker]: Post: {2147483600#(forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_586 Int) (v_idx_576 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_74_5 Int) (v_v_4_5 Int) (v_v_114_5 Int) (v_v_72_5 Int) (v_v_115_5 Int) (v_v_113_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_578 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_578) v_v_68_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_579)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_576) v_v_66_5) (<= c_ULTIMATE.start_main_p7 v_idx_576)) (or (< v_idx_577 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_577) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_577))) (or (= (select |c_#memory_int| v_idx_586) v_v_115_5) (< v_idx_586 (+ c_ULTIMATE.start_main_p2 1))) (<= 1 v_v_114_5) (or (< v_idx_585 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_585) (= (select |c_#memory_int| v_idx_585) v_v_114_5)) (or (= v_v_74_5 (select |c_#valid| v_idx_582)) (< v_idx_582 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_584) (= (select |c_#memory_int| v_idx_584) v_v_113_5)) (or (= 1 (select |c_#valid| v_idx_581)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_581) (< v_idx_581 c_ULTIMATE.start_main_p7)) (<= (- (- v_v_114_5) v_v_114_5) (- 2)) (or (= v_v_72_5 (select |c_#valid| v_idx_580)) (<= c_ULTIMATE.start_main_p7 v_idx_580)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_583) v_v_4_5))))} [2019-01-18 14:54:53,995 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:54,580 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:54,580 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:54,620 WARN L270 ngHoareTripleChecker]: Pre: {2147483601#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_10 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_10))) (< v_prenex_10 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_10))) (forall ((v_idx_574 Int)) (or (< v_idx_574 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_idx_574)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_574))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_566 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_566) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_566) (< v_idx_566 ULTIMATE.start_main_p7))) (forall ((v_idx_570 Int)) (or (= 1 (select |#valid| v_idx_570)) (< v_idx_570 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_570))))} [2019-01-18 14:54:54,620 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:54:54,620 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:54:54,809 WARN L276 ngHoareTripleChecker]: Post: {2147483600#(and (forall ((v_prenex_11 Int)) (or (< v_prenex_11 ULTIMATE.start_main_p2) (<= 2 (* 2 (select |#memory_int| v_prenex_11))) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_11))) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_585 Int)) (or (< v_idx_585 ULTIMATE.start_main_p2) (<= 1 (select |#memory_int| v_idx_585)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_585))) (forall ((v_idx_581 Int)) (or (= 1 (select |#valid| v_idx_581)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_581) (< v_idx_581 ULTIMATE.start_main_p7))) (forall ((v_idx_577 Int)) (or (< v_idx_577 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_577) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_577)))))} [2019-01-18 14:54:57,266 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:57,266 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:57,266 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:57,266 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:57,266 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(or (forall ((v_idx_599 Int) (v_idx_600 Int) (v_idx_598 Int) (v_idx_603 Int) (v_idx_604 Int) (v_idx_601 Int) (v_idx_602 Int) (v_idx_607 Int) (v_idx_608 Int) (v_idx_605 Int) (v_idx_606 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_100_5 Int) (v_v_72_5 Int) (v_v_101_5 Int) (v_v_99_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_608 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_608) v_v_101_5)) (or (= (select |c_#valid| v_idx_604) v_v_74_5) (< v_idx_604 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_606) v_v_99_5) (<= c_ULTIMATE.start_main_p4 v_idx_606)) (= (select |c_old(#memory_int)| v_idx_605) v_v_4_5) (or (= (select |c_#valid| v_idx_602) v_v_72_5) (<= c_ULTIMATE.start_main_p7 v_idx_602)) (or (= (select |c_#memory_int| v_idx_607) v_v_100_5) (< v_idx_607 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_607)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_603) (= 1 (select |c_#valid| v_idx_603)) (< v_idx_603 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_600) v_v_68_5) (< v_idx_600 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_598) (= v_v_66_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_598))) (= v_v_2_5 (select |c_old(#valid)| v_idx_601)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_599) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_599) 0) (< v_idx_599 c_ULTIMATE.start_main_p7))))) (forall ((v_idx_588 Int) (v_idx_589 Int) (v_idx_597 Int) (v_idx_587 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_74_5 Int) (v_v_4_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (or (< v_idx_589 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_589) v_v_68_5)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_597 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_597) v_v_95_5)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_596) (= 0 (select |c_#memory_int| v_idx_596)) (< v_idx_596 c_ULTIMATE.start_main_p7)) (or (< v_idx_593 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |c_#valid| v_idx_593))) (or (< v_idx_592 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_592)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_592)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_587) v_v_66_5) (<= c_ULTIMATE.start_main_p7 v_idx_587)) (or (<= c_ULTIMATE.start_main_p7 v_idx_595) (= (select |c_#memory_int| v_idx_595) v_v_93_5)) (or (< v_idx_588 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_588) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_588) 0)) (= v_v_2_5 (select |c_old(#valid)| v_idx_590)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_594)) (or (<= c_ULTIMATE.start_main_p7 v_idx_591) (= v_v_72_5 (select |c_#valid| v_idx_591)))))))} [2019-01-18 14:54:57,267 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:57,267 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:57,267 WARN L230 ngHoareTripleChecker]: Post: {2147483598#(forall ((v_idx_610 Int) (v_idx_611 Int) (v_idx_614 Int) (v_idx_615 Int) (v_idx_612 Int) (v_idx_613 Int) (v_idx_618 Int) (v_idx_619 Int) (v_idx_616 Int) (v_idx_617 Int) (v_idx_609 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_118_5 Int) (v_v_116_5 Int) (v_v_117_5 Int) (v_v_72_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- v_v_117_5) v_v_117_5) 0) (or (< v_idx_610 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_610) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_610))) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (< v_idx_611 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_611) v_v_68_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_612)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_619) v_v_118_5) (< v_idx_619 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_66_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_609)) (<= c_ULTIMATE.start_main_p7 v_idx_609)) (or (< v_idx_615 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_615) v_v_74_5)) (or (= (select |c_#valid| v_idx_613) v_v_72_5) (<= c_ULTIMATE.start_main_p7 v_idx_613)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_614) (< v_idx_614 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_614))) (<= 0 v_v_117_5) (or (< v_idx_618 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_618) v_v_117_5) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_618)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_617) (= (select |c_#memory_int| v_idx_617) v_v_116_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_616)))))} [2019-01-18 14:54:57,267 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:58,137 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:58,137 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:06,190 WARN L181 SmtUtils]: Spent 8.05 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:06,191 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(or (forall ((v_idx_599 Int) (v_idx_600 Int) (v_idx_598 Int) (v_idx_603 Int) (v_idx_604 Int) (v_idx_601 Int) (v_idx_602 Int) (v_idx_607 Int) (v_idx_608 Int) (v_idx_605 Int) (v_idx_606 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_100_5 Int) (v_v_72_5 Int) (v_v_101_5 Int) (v_v_99_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_608 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_608) v_v_101_5)) (or (= (select |#valid| v_idx_604) v_v_74_5) (< v_idx_604 (+ ULTIMATE.start_main_p7 1))) (or (= (select |#memory_int| v_idx_606) v_v_99_5) (<= ULTIMATE.start_main_p4 v_idx_606)) (= (select |old(#memory_int)| v_idx_605) v_v_4_5) (or (= (select |#valid| v_idx_602) v_v_72_5) (<= ULTIMATE.start_main_p7 v_idx_602)) (or (= (select |#memory_int| v_idx_607) v_v_100_5) (< v_idx_607 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_607)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_603) (= 1 (select |#valid| v_idx_603)) (< v_idx_603 ULTIMATE.start_main_p7)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_600) v_v_68_5) (< v_idx_600 (+ ULTIMATE.start_main_p7 1))) (or (<= ULTIMATE.start_main_p7 v_idx_598) (= v_v_66_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_598))) (= v_v_2_5 (select |old(#valid)| v_idx_601)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_599) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_599) 0) (< v_idx_599 ULTIMATE.start_main_p7))))) (forall ((v_idx_588 Int) (v_idx_589 Int) (v_idx_597 Int) (v_idx_587 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_74_5 Int) (v_v_4_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_68_5 Int) (v_v_2_5 Int)) (and (or (< v_idx_589 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_589) v_v_68_5)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_597 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_597) v_v_95_5)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_596) (= 0 (select |#memory_int| v_idx_596)) (< v_idx_596 ULTIMATE.start_main_p7)) (or (< v_idx_593 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |#valid| v_idx_593))) (or (< v_idx_592 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_592)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_592)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_587) v_v_66_5) (<= ULTIMATE.start_main_p7 v_idx_587)) (or (<= ULTIMATE.start_main_p7 v_idx_595) (= (select |#memory_int| v_idx_595) v_v_93_5)) (or (< v_idx_588 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_588) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_588) 0)) (= v_v_2_5 (select |old(#valid)| v_idx_590)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_5 (select |old(#memory_int)| v_idx_594)) (or (<= ULTIMATE.start_main_p7 v_idx_591) (= v_v_72_5 (select |#valid| v_idx_591)))))))} [2019-01-18 14:55:06,191 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:55:06,191 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:55:06,403 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_610 Int)) (or (< v_idx_610 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_610) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_610)))) (forall ((v_prenex_12 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_12))) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))) (forall ((v_idx_618 Int)) (or (< v_idx_618 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_idx_618)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_618))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_614 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_614) (< v_idx_614 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_614)))))} [2019-01-18 14:55:09,057 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:09,057 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:09,057 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:09,058 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:09,058 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_641 Int) (v_idx_631 Int) (v_idx_636 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_4_5 Int) (v_v_74_5 Int) (v_v_100_5 Int) (v_v_72_5 Int) (v_v_101_5 Int) (v_v_99_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (or (= 1 (select |c_#valid| v_idx_636)) (< v_idx_636 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_636)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_638)) (or (<= c_ULTIMATE.start_main_p7 v_idx_631) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_631) v_v_66_5)) (or (< v_idx_632 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_632) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_632))) (or (<= c_ULTIMATE.start_main_p7 v_idx_635) (= (select |c_#valid| v_idx_635) v_v_72_5)) (or (< v_idx_637 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |c_#valid| v_idx_637))) (= v_v_2_5 (select |c_old(#valid)| v_idx_634)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_633) v_v_68_5) (< v_idx_633 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p4 v_idx_639) (= v_v_99_5 (select |c_#memory_int| v_idx_639))) (or (= (select |c_#memory_int| v_idx_640) v_v_100_5) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_640) (< v_idx_640 c_ULTIMATE.start_main_p4)) (or (= (select |c_#memory_int| v_idx_641) v_v_101_5) (< v_idx_641 (+ c_ULTIMATE.start_main_p4 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0)))) (forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_620 Int) (v_idx_625 Int) (v_idx_626 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_621)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_621) (< v_idx_621 c_ULTIMATE.start_main_p7)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (<= c_ULTIMATE.start_main_p7 v_idx_624) (= v_v_72_5 (select |c_#valid| v_idx_624))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_623)) (or (= (select |c_#memory_int| v_idx_629) 0) (< v_idx_629 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_629)) (or (< v_idx_626 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_626) v_v_74_5)) (or (< v_idx_625 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_625) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_625)) (or (<= c_ULTIMATE.start_main_p7 v_idx_620) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_620) v_v_66_5)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_622 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_622) v_v_68_5)) (or (= (select |c_#memory_int| v_idx_628) v_v_93_5) (<= c_ULTIMATE.start_main_p7 v_idx_628)) (or (< v_idx_630 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_630) v_v_95_5)) (= (select |c_old(#memory_int)| v_idx_627) v_v_4_5)))))} [2019-01-18 14:55:09,058 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:09,058 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:09,058 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_643 Int) (v_idx_644 Int) (v_idx_652 Int) (v_idx_642 Int) (v_idx_647 Int) (v_idx_648 Int) (v_idx_645 Int) (v_idx_646 Int) (v_idx_649 Int) (v_idx_650 Int) (v_idx_651 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_72_5 Int) (v_v_157_5 Int) (v_v_156_5 Int) (v_v_155_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_652 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_652) v_v_157_5)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_643) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_643)) (< v_idx_643 c_ULTIMATE.start_main_p7)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_647) (= (select |c_#valid| v_idx_647) 1) (< v_idx_647 c_ULTIMATE.start_main_p7)) (= v_v_2_5 (select |c_old(#valid)| v_idx_645)) (or (<= c_ULTIMATE.start_main_p7 v_idx_646) (= (select |c_#valid| v_idx_646) v_v_72_5)) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_651) (< v_idx_651 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_651) v_v_156_5)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_644) v_v_68_5) (< v_idx_644 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_650) v_v_155_5) (<= c_ULTIMATE.start_main_p4 v_idx_650)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_648 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_648) v_v_74_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_649)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_642) v_v_66_5) (<= c_ULTIMATE.start_main_p7 v_idx_642)))))} [2019-01-18 14:55:09,058 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:09,641 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:09,642 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:17,603 WARN L181 SmtUtils]: Spent 7.96 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:17,604 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(or (forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_641 Int) (v_idx_631 Int) (v_idx_636 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_4_5 Int) (v_v_74_5 Int) (v_v_100_5 Int) (v_v_72_5 Int) (v_v_101_5 Int) (v_v_99_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (or (= 1 (select |#valid| v_idx_636)) (< v_idx_636 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_636)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (= v_v_4_5 (select |old(#memory_int)| v_idx_638)) (or (<= ULTIMATE.start_main_p7 v_idx_631) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_631) v_v_66_5)) (or (< v_idx_632 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_632) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_632))) (or (<= ULTIMATE.start_main_p7 v_idx_635) (= (select |#valid| v_idx_635) v_v_72_5)) (or (< v_idx_637 (+ ULTIMATE.start_main_p7 1)) (= v_v_74_5 (select |#valid| v_idx_637))) (= v_v_2_5 (select |old(#valid)| v_idx_634)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_633) v_v_68_5) (< v_idx_633 (+ ULTIMATE.start_main_p7 1))) (or (<= ULTIMATE.start_main_p4 v_idx_639) (= v_v_99_5 (select |#memory_int| v_idx_639))) (or (= (select |#memory_int| v_idx_640) v_v_100_5) (<= (+ ULTIMATE.start_main_p4 1) v_idx_640) (< v_idx_640 ULTIMATE.start_main_p4)) (or (= (select |#memory_int| v_idx_641) v_v_101_5) (< v_idx_641 (+ ULTIMATE.start_main_p4 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0)))) (forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_620 Int) (v_idx_625 Int) (v_idx_626 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_74_5 Int) (v_v_4_5 Int) (v_v_95_5 Int) (v_v_72_5 Int) (v_v_93_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_68_5 Int)) (and (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_621)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_621) (< v_idx_621 ULTIMATE.start_main_p7)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (or (<= ULTIMATE.start_main_p7 v_idx_624) (= v_v_72_5 (select |#valid| v_idx_624))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |old(#valid)| v_idx_623)) (or (= (select |#memory_int| v_idx_629) 0) (< v_idx_629 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_629)) (or (< v_idx_626 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_626) v_v_74_5)) (or (< v_idx_625 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_625) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_625)) (or (<= ULTIMATE.start_main_p7 v_idx_620) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_620) v_v_66_5)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_622 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_622) v_v_68_5)) (or (= (select |#memory_int| v_idx_628) v_v_93_5) (<= ULTIMATE.start_main_p7 v_idx_628)) (or (< v_idx_630 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_630) v_v_95_5)) (= (select |old(#memory_int)| v_idx_627) v_v_4_5)))))} [2019-01-18 14:55:17,604 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:17,604 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:17,775 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_643 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_643) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_643)) (< v_idx_643 ULTIMATE.start_main_p7))) (forall ((v_idx_647 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_647) (= (select |#valid| v_idx_647) 1) (< v_idx_647 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:55:18,170 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:55:18,171 INFO L272 AbstractInterpreter]: Visited 4 different actions 6 times. Merged at 1 different actions 1 times. Never widened. Found 2 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-18 14:55:18,171 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:18,171 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:55:18,171 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:18,171 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:55:18,181 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:18,181 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:55:18,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:18,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:18,192 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:55:18,254 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,255 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:55:18,312 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,314 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,315 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:55:18,384 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,385 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,387 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,388 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,389 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:55:18,472 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,474 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,475 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,476 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,478 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,483 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,484 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:55:18,591 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,592 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,593 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,594 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,604 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,606 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,606 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,607 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:18,608 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:55:18,626 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:18,654 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:18,685 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:18,719 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:18,752 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:18,798 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 27 [2019-01-18 14:55:18,809 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 9 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 33 [2019-01-18 14:55:18,824 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 12 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 29 treesize of output 43 [2019-01-18 14:55:18,840 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 14 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:55:18,876 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 15 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:55:18,904 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:55:18,978 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:55:19,006 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,058 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,090 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,116 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,137 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,154 INFO L267 ElimStorePlain]: Start of recursive call 8: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,172 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,236 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 2 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:19,237 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 7 variables, input treesize:95, output treesize:96 [2019-01-18 14:55:19,352 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:19,352 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_49|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_13|]. (let ((.cse2 (store |v_#valid_13| ULTIMATE.start_main_p1 1))) (let ((.cse1 (store .cse2 ULTIMATE.start_main_p2 1))) (let ((.cse3 (store .cse1 ULTIMATE.start_main_p3 1))) (let ((.cse0 (store .cse3 ULTIMATE.start_main_p4 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p5)) (= 0 (select (store .cse0 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6)) (= (select .cse1 ULTIMATE.start_main_p3) 0) (= 0 (select .cse2 ULTIMATE.start_main_p2)) (= (select .cse3 ULTIMATE.start_main_p4) 0) (= (store (store (store (store (store (store (store |v_#memory_int_49| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|)))))) [2019-01-18 14:55:19,352 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (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_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:55:19,515 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:55:19,516 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 91 [2019-01-18 14:55:19,521 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:55:19,577 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:55:19,578 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:101, output treesize:71 [2019-01-18 14:55:21,680 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:55:21,680 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_50|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p1, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_50| ULTIMATE.start_main_p4))) (and (= 0 (select |v_#memory_int_50| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= |#memory_int| (store |v_#memory_int_50| ULTIMATE.start_main_p4 (+ .cse0 (- 1)))) (= 0 (select |v_#memory_int_50| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_50| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_50| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_50| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:55:21,681 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:55:21,818 INFO L273 TraceCheckUtils]: 0: Hoare triple {1233#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1240#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))} is VALID [2019-01-18 14:55:21,823 INFO L273 TraceCheckUtils]: 1: Hoare triple {1240#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= 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]; {1244#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-01-18 14:55:21,824 INFO L273 TraceCheckUtils]: 2: Hoare triple {1244#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} assume #memory_int[main_p1] >= 0; {1244#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-01-18 14:55:21,828 INFO L273 TraceCheckUtils]: 3: Hoare triple {1244#(and (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p1 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_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)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} assume !(#memory_int[main_p2] <= 0); {1234#false} is VALID [2019-01-18 14:55:21,828 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:21,828 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:55:22,065 INFO L273 TraceCheckUtils]: 3: Hoare triple {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {1234#false} is VALID [2019-01-18 14:55:22,078 INFO L273 TraceCheckUtils]: 2: Hoare triple {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:55:22,091 INFO L273 TraceCheckUtils]: 1: Hoare triple {1257#(<= (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]; {1236#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:55:22,105 INFO L273 TraceCheckUtils]: 0: Hoare triple {1233#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1257#(<= (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-18 14:55:22,106 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:22,135 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:55:22,136 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 14:55:22,136 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:55:22,136 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:55:22,136 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:55:22,137 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:55:22,188 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:55:22,189 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:55:22,189 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:55:22,189 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:55:22,189 INFO L87 Difference]: Start difference. First operand 32 states and 111 transitions. Second operand 4 states. [2019-01-18 14:55:22,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:22,422 INFO L93 Difference]: Finished difference Result 36 states and 122 transitions. [2019-01-18 14:55:22,422 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:55:22,423 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:55:22,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:55:22,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:55:22,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2019-01-18 14:55:22,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:55:22,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2019-01-18 14:55:22,424 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 32 transitions. [2019-01-18 14:55:22,490 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:55:22,491 INFO L225 Difference]: With dead ends: 36 [2019-01-18 14:55:22,492 INFO L226 Difference]: Without dead ends: 35 [2019-01-18 14:55:22,492 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:55:22,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2019-01-18 14:55:22,602 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2019-01-18 14:55:22,603 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:55:22,603 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand 34 states. [2019-01-18 14:55:22,603 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 34 states. [2019-01-18 14:55:22,603 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 34 states. [2019-01-18 14:55:22,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:22,607 INFO L93 Difference]: Finished difference Result 35 states and 121 transitions. [2019-01-18 14:55:22,607 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 121 transitions. [2019-01-18 14:55:22,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:22,608 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:22,608 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 35 states. [2019-01-18 14:55:22,608 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 35 states. [2019-01-18 14:55:22,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:55:22,610 INFO L93 Difference]: Finished difference Result 35 states and 121 transitions. [2019-01-18 14:55:22,610 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 121 transitions. [2019-01-18 14:55:22,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:55:22,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:55:22,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:55:22,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:55:22,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2019-01-18 14:55:22,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 121 transitions. [2019-01-18 14:55:22,613 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 121 transitions. Word has length 4 [2019-01-18 14:55:22,613 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:55:22,614 INFO L480 AbstractCegarLoop]: Abstraction has 34 states and 121 transitions. [2019-01-18 14:55:22,614 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:55:22,614 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 121 transitions. [2019-01-18 14:55:22,614 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:55:22,614 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:55:22,614 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:55:22,615 INFO L423 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:55:22,615 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:55:22,615 INFO L82 PathProgramCache]: Analyzing trace with hash 941532, now seen corresponding path program 1 times [2019-01-18 14:55:22,615 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:55:22,616 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:22,616 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:55:22,616 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:55:22,616 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:55:22,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:55:22,733 INFO L273 TraceCheckUtils]: 0: Hoare triple {1424#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1426#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:55:22,735 INFO L273 TraceCheckUtils]: 1: Hoare triple {1426#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {1427#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:55:22,752 INFO L273 TraceCheckUtils]: 2: Hoare triple {1427#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {1428#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:55:22,754 INFO L273 TraceCheckUtils]: 3: Hoare triple {1428#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {1425#false} is VALID [2019-01-18 14:55:22,755 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:55:22,755 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:55:22,755 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:55:22,755 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:55:22,755 INFO L207 CegarAbsIntRunner]: [0], [18], [22], [31] [2019-01-18 14:55:22,756 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:55:22,756 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:55:25,426 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:25,426 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:25,426 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:25,427 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:25,427 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_674 Int) (v_idx_675 Int) (v_idx_669 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_2_6 (select |c_old(#valid)| v_idx_672)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_676)) (or (< v_idx_674 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_674) (= (select |c_#valid| v_idx_674) 1)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_669) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_669)) (or (< v_idx_678 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_678) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_678)) (or (= (select |c_#valid| v_idx_673) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_673)) (or (= v_v_95_6 (select |c_#memory_int| v_idx_679)) (< v_idx_679 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_675 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_675) v_v_74_6)) (or (< v_idx_671 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_671))) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_670) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_670)) (< v_idx_670 c_ULTIMATE.start_main_p7)) (or (<= c_ULTIMATE.start_main_p7 v_idx_677) (= (select |c_#memory_int| v_idx_677) v_v_93_6)))))} [2019-01-18 14:55:25,427 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:25,427 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:25,427 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(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_680 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_4_6 Int) (v_v_72_6 Int) (v_v_96_6 Int) (v_v_74_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (or (= (select |c_#memory_int| v_idx_688) v_v_96_6) (<= c_ULTIMATE.start_main_p4 v_idx_688)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_681)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_681) (< v_idx_681 c_ULTIMATE.start_main_p7)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_690) v_v_98_6) (< v_idx_690 (+ c_ULTIMATE.start_main_p4 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_680) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_680)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_687)) (or (< v_idx_689 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_689) (= (select |c_#memory_int| v_idx_689) v_v_97_6)) (or (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_682)) (< v_idx_682 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_684) (= (select |c_#valid| v_idx_684) v_v_72_6)) (= (select |c_old(#valid)| v_idx_683) v_v_2_6) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_685) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_685) (< v_idx_685 c_ULTIMATE.start_main_p7)) (or (< v_idx_686 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_686) v_v_74_6)))))} [2019-01-18 14:55:25,427 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:25,790 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:25,790 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:26,020 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_678 Int)) (or (< v_idx_678 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_678) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_678))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_670 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_670) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_670)) (< v_idx_670 ULTIMATE.start_main_p7))) (forall ((v_idx_674 Int)) (or (< v_idx_674 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_674) (= (select |#valid| v_idx_674) 1))))} [2019-01-18 14:55:26,020 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:26,021 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:26,042 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_681 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_681)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_681) (< v_idx_681 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_685 Int)) (or (= (select |#valid| v_idx_685) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_685) (< v_idx_685 ULTIMATE.start_main_p7))))} [2019-01-18 14:55:28,358 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:28,358 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:28,359 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:28,359 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:28,359 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_696 Int) (v_idx_697 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_691 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_95_6 Int) (v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_697 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_697) v_v_74_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_694)) (or (= v_v_72_6 (select |c_#valid| v_idx_695)) (<= c_ULTIMATE.start_main_p7 v_idx_695)) (or (<= c_ULTIMATE.start_main_p7 v_idx_691) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_691) v_v_66_6)) (or (< v_idx_693 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_693) v_v_68_6)) (or (< v_idx_696 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_696) (= 1 (select |c_#valid| v_idx_696))) (or (< v_idx_701 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_701) v_v_95_6)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_698)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_692) (< v_idx_692 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_692) 0)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_699) (= (select |c_#memory_int| v_idx_699) v_v_93_6)) (or (= (select |c_#memory_int| v_idx_700) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_700) (< v_idx_700 c_ULTIMATE.start_main_p7)))))} [2019-01-18 14:55:28,359 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:28,359 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:28,359 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_710 Int) (v_idx_702 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_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_111_6 Int) (v_v_112_6 Int) (v_v_110_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (= (select |c_#valid| v_idx_706) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_706)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_703 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_703) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_703))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_707 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_707) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_707)) (or (= (select |c_#valid| v_idx_708) v_v_74_6) (< v_idx_708 (+ c_ULTIMATE.start_main_p7 1))) (or (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_704)) (< v_idx_704 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_702) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_702) v_v_66_6)) (= (select |c_old(#memory_int)| v_idx_709) v_v_4_6) (or (< v_idx_712 (+ c_ULTIMATE.start_main_p5 1)) (= (select |c_#memory_int| v_idx_712) v_v_112_6)) (or (= (select |c_#memory_int| v_idx_710) v_v_110_6) (<= c_ULTIMATE.start_main_p5 v_idx_710)) (= v_v_2_6 (select |c_old(#valid)| v_idx_705)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_711) v_v_111_6) (<= (+ c_ULTIMATE.start_main_p5 1) v_idx_711) (< v_idx_711 c_ULTIMATE.start_main_p5)))))} [2019-01-18 14:55:28,359 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:28,748 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:28,748 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:28,992 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_700 Int)) (or (= (select |#memory_int| v_idx_700) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_700) (< v_idx_700 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_692 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_692) (< v_idx_692 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_692) 0))) (forall ((v_idx_696 Int)) (or (< v_idx_696 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_696) (= 1 (select |#valid| v_idx_696)))))} [2019-01-18 14:55:28,992 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:28,992 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:29,020 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_703 Int)) (or (< v_idx_703 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_703) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_703)))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_707 Int)) (or (< v_idx_707 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_707) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_707))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:55:31,491 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:31,492 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:31,492 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:31,492 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:31,492 WARN L224 ngHoareTripleChecker]: Pre: {2147483589#(forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_713 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_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_713) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_713) v_v_66_6)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_716)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_715) v_v_68_6) (< v_idx_715 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_722) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_722) (< v_idx_722 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_723) v_v_95_6) (< v_idx_723 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_718 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_718) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_718)) (or (<= c_ULTIMATE.start_main_p7 v_idx_721) (= (select |c_#memory_int| v_idx_721) v_v_93_6)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_714) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_714)) (< v_idx_714 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_720) v_v_4_6) (or (= (select |c_#valid| v_idx_719) v_v_74_6) (< v_idx_719 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#valid| v_idx_717) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_717)))))} [2019-01-18 14:55:31,492 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:31,492 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:31,493 WARN L230 ngHoareTripleChecker]: Post: {2147483588#(forall ((v_idx_731 Int) (v_idx_732 Int) (v_idx_730 Int) (v_idx_724 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_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_135_6 Int) (v_v_134_6 Int) (v_v_133_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_727)) (or (= v_v_135_6 (select |c_#memory_int| v_idx_734)) (< v_idx_734 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_726) v_v_68_6) (< v_idx_726 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_730 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_6 (select |c_#valid| v_idx_730))) (<= (- v_v_134_6 (- v_v_134_6)) (- 2)) (or (<= c_ULTIMATE.start_main_p7 v_idx_728) (= (select |c_#valid| v_idx_728) v_v_72_6)) (or (= v_v_134_6 (select |c_#memory_int| v_idx_733)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_733) (< v_idx_733 c_ULTIMATE.start_main_p1)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_724) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_724)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_729) (= (select |c_#valid| v_idx_729) 1) (< v_idx_729 c_ULTIMATE.start_main_p7)) (= (select |c_old(#memory_int)| v_idx_731) v_v_4_6) (<= (+ v_v_134_6 1) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_725) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_725)) (< v_idx_725 c_ULTIMATE.start_main_p7)) (or (<= c_ULTIMATE.start_main_p1 v_idx_732) (= v_v_133_6 (select |c_#memory_int| v_idx_732))))))} [2019-01-18 14:55:31,493 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:32,201 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:32,201 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:32,407 WARN L270 ngHoareTripleChecker]: Pre: {2147483589#(and (forall ((v_idx_722 Int)) (or (= (select |#memory_int| v_idx_722) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_722) (< v_idx_722 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_718 Int)) (or (< v_idx_718 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_718) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_718))) (forall ((v_idx_714 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_714) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_714)) (< v_idx_714 ULTIMATE.start_main_p7))))} [2019-01-18 14:55:32,408 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:32,408 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:32,462 WARN L276 ngHoareTripleChecker]: Post: {2147483588#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_729 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_729) (= (select |#valid| v_idx_729) 1) (< v_idx_729 ULTIMATE.start_main_p7))) (forall ((v_idx_733 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_733) (< v_idx_733 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_733)) 2) 0))) (forall ((v_idx_725 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_725) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_725)) (< v_idx_725 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_13 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_13) (<= (+ (select |#memory_int| v_prenex_13) 1) 0) (< v_prenex_13 ULTIMATE.start_main_p1))))} [2019-01-18 14:55:34,862 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:34,862 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:34,862 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:34,863 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:34,863 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_746 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_74_6 (select |c_#valid| v_idx_752)) (< v_idx_752 (+ c_ULTIMATE.start_main_p7 1))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_756) v_v_98_6) (< v_idx_756 (+ c_ULTIMATE.start_main_p4 1))) (= (select |c_old(#memory_int)| v_idx_753) v_v_4_6) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_755) (< v_idx_755 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_755) v_v_97_6)) (or (< v_idx_748 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_748))) (= v_v_2_6 (select |c_old(#valid)| v_idx_749)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_747) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_747)) (< v_idx_747 c_ULTIMATE.start_main_p7)) (or (= 1 (select |c_#valid| v_idx_751)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_751) (< v_idx_751 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_746) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_746)) (or (= v_v_72_6 (select |c_#valid| v_idx_750)) (<= c_ULTIMATE.start_main_p7 v_idx_750)) (or (= (select |c_#memory_int| v_idx_754) v_v_96_6) (<= c_ULTIMATE.start_main_p4 v_idx_754))))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_735 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_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (or (<= c_ULTIMATE.start_main_p7 v_idx_743) (= (select |c_#memory_int| v_idx_743) v_v_93_6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_740 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_740) (= (select |c_#valid| v_idx_740) 1)) (or (= (select |c_#memory_int| v_idx_745) v_v_95_6) (< v_idx_745 (+ c_ULTIMATE.start_main_p7 1))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_737) v_v_68_6) (< v_idx_737 (+ c_ULTIMATE.start_main_p7 1))) (= (select |c_old(#valid)| v_idx_738) v_v_2_6) (= (select |c_old(#memory_int)| v_idx_742) v_v_4_6) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_736)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_736) (< v_idx_736 c_ULTIMATE.start_main_p7)) (or (= v_v_72_6 (select |c_#valid| v_idx_739)) (<= c_ULTIMATE.start_main_p7 v_idx_739)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_741) v_v_74_6) (< v_idx_741 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_735) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_735)) (or (= (select |c_#memory_int| v_idx_744) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_744) (< v_idx_744 c_ULTIMATE.start_main_p7))))))} [2019-01-18 14:55:34,863 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:34,863 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:34,863 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_757 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_138_6 Int) (v_v_137_6 Int) (v_v_136_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_763) v_v_74_6) (< v_idx_763 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#memory_int| v_idx_765) v_v_136_6) (<= c_ULTIMATE.start_main_p4 v_idx_765)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_760)) (or (< v_idx_759 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_759) v_v_68_6)) (or (= (select |c_#memory_int| v_idx_766) v_v_137_6) (< v_idx_766 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_766)) (or (= v_v_72_6 (select |c_#valid| v_idx_761)) (<= c_ULTIMATE.start_main_p7 v_idx_761)) (= (select |c_old(#memory_int)| v_idx_764) v_v_4_6) (or (<= c_ULTIMATE.start_main_p7 v_idx_757) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_757) v_v_66_6)) (or (< v_idx_767 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_767) v_v_138_6)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_758) (< v_idx_758 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_758) 0)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_762 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_762) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_762)))))} [2019-01-18 14:55:34,863 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:35,251 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:35,251 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:43,241 WARN L181 SmtUtils]: Spent 7.99 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:43,241 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(or (forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_746 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_74_6 (select |#valid| v_idx_752)) (< v_idx_752 (+ ULTIMATE.start_main_p7 1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_756) v_v_98_6) (< v_idx_756 (+ ULTIMATE.start_main_p4 1))) (= (select |old(#memory_int)| v_idx_753) v_v_4_6) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_755) (< v_idx_755 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_755) v_v_97_6)) (or (< v_idx_748 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_748))) (= v_v_2_6 (select |old(#valid)| v_idx_749)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_747) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_747)) (< v_idx_747 ULTIMATE.start_main_p7)) (or (= 1 (select |#valid| v_idx_751)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_751) (< v_idx_751 ULTIMATE.start_main_p7)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_746) v_v_66_6) (<= ULTIMATE.start_main_p7 v_idx_746)) (or (= v_v_72_6 (select |#valid| v_idx_750)) (<= ULTIMATE.start_main_p7 v_idx_750)) (or (= (select |#memory_int| v_idx_754) v_v_96_6) (<= ULTIMATE.start_main_p4 v_idx_754))))) (forall ((v_idx_742 Int) (v_idx_743 Int) (v_idx_740 Int) (v_idx_741 Int) (v_idx_735 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_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (or (<= ULTIMATE.start_main_p7 v_idx_743) (= (select |#memory_int| v_idx_743) v_v_93_6)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_740 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_740) (= (select |#valid| v_idx_740) 1)) (or (= (select |#memory_int| v_idx_745) v_v_95_6) (< v_idx_745 (+ ULTIMATE.start_main_p7 1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_737) v_v_68_6) (< v_idx_737 (+ ULTIMATE.start_main_p7 1))) (= (select |old(#valid)| v_idx_738) v_v_2_6) (= (select |old(#memory_int)| v_idx_742) v_v_4_6) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_736)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_736) (< v_idx_736 ULTIMATE.start_main_p7)) (or (= v_v_72_6 (select |#valid| v_idx_739)) (<= ULTIMATE.start_main_p7 v_idx_739)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_741) v_v_74_6) (< v_idx_741 (+ ULTIMATE.start_main_p7 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_735) v_v_66_6) (<= ULTIMATE.start_main_p7 v_idx_735)) (or (= (select |#memory_int| v_idx_744) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_744) (< v_idx_744 ULTIMATE.start_main_p7))))))} [2019-01-18 14:55:43,241 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:55:43,241 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:55:43,429 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_758 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_758) (< v_idx_758 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_758) 0))) (forall ((v_idx_762 Int)) (or (< v_idx_762 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_762) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_762))))} [2019-01-18 14:55:46,153 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:46,153 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:46,154 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:46,154 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:46,154 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_779 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (or (< v_idx_789 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_789) v_v_98_6)) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_788) v_v_97_6) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_788) (< v_idx_788 c_ULTIMATE.start_main_p4)) (= v_v_2_6 (select |c_old(#valid)| v_idx_782)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_783) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_783)) (or (< v_idx_785 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_785) v_v_74_6)) (or (<= c_ULTIMATE.start_main_p4 v_idx_787) (= (select |c_#memory_int| v_idx_787) v_v_96_6)) (or (< v_idx_784 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_784)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_784)) (= (select |c_old(#memory_int)| v_idx_786) v_v_4_6) (or (< v_idx_781 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_781) v_v_68_6)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_780 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_780) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_780) 0)) (or (<= c_ULTIMATE.start_main_p7 v_idx_779) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_779) v_v_66_6))))) (forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_768 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (= (select |c_old(#memory_int)| v_idx_775) v_v_4_6) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_774 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_774) v_v_74_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_769) 0) (< v_idx_769 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_769)) (or (= (select |c_#memory_int| v_idx_777) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_777) (< v_idx_777 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_776) v_v_93_6) (<= c_ULTIMATE.start_main_p7 v_idx_776)) (or (< v_idx_778 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_778) v_v_95_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_771)) (or (< v_idx_770 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_770) v_v_68_6)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_768) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_768) v_v_66_6)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_773) (< v_idx_773 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_773) 1)) (or (= (select |c_#valid| v_idx_772) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_772))))))} [2019-01-18 14:55:46,154 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:46,154 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:46,154 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_790 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_181_6 Int) (v_v_74_6 Int) (v_v_180_6 Int) (v_v_182_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_794) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_794)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_796) v_v_74_6) (< v_idx_796 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_2_6 (select |c_old(#valid)| v_idx_793)) (or (< v_idx_792 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_792) v_v_68_6)) (or (< v_idx_800 (+ c_ULTIMATE.start_main_p5 1)) (= (select |c_#memory_int| v_idx_800) v_v_182_6)) (or (= (select |c_#memory_int| v_idx_799) v_v_181_6) (<= (+ c_ULTIMATE.start_main_p5 1) v_idx_799) (< v_idx_799 c_ULTIMATE.start_main_p5)) (or (<= c_ULTIMATE.start_main_p7 v_idx_790) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_790) v_v_66_6)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_791) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_791)) (< v_idx_791 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_798) v_v_180_6) (<= c_ULTIMATE.start_main_p5 v_idx_798)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_795) (< v_idx_795 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_795) 1)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_797) v_v_4_6))))} [2019-01-18 14:55:46,154 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:46,772 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:46,773 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:55:54,801 WARN L181 SmtUtils]: Spent 8.03 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:55:54,801 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(or (forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_779 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (or (< v_idx_789 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_789) v_v_98_6)) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_788) v_v_97_6) (<= (+ ULTIMATE.start_main_p4 1) v_idx_788) (< v_idx_788 ULTIMATE.start_main_p4)) (= v_v_2_6 (select |old(#valid)| v_idx_782)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_783) v_v_72_6) (<= ULTIMATE.start_main_p7 v_idx_783)) (or (< v_idx_785 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_785) v_v_74_6)) (or (<= ULTIMATE.start_main_p4 v_idx_787) (= (select |#memory_int| v_idx_787) v_v_96_6)) (or (< v_idx_784 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_784)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_784)) (= (select |old(#memory_int)| v_idx_786) v_v_4_6) (or (< v_idx_781 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_781) v_v_68_6)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_780 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_780) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_780) 0)) (or (<= ULTIMATE.start_main_p7 v_idx_779) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_779) v_v_66_6))))) (forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_768 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (= (select |old(#memory_int)| v_idx_775) v_v_4_6) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_774 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_774) v_v_74_6)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_769) 0) (< v_idx_769 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_769)) (or (= (select |#memory_int| v_idx_777) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_777) (< v_idx_777 ULTIMATE.start_main_p7)) (or (= (select |#memory_int| v_idx_776) v_v_93_6) (<= ULTIMATE.start_main_p7 v_idx_776)) (or (< v_idx_778 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_778) v_v_95_6)) (= v_v_2_6 (select |old(#valid)| v_idx_771)) (or (< v_idx_770 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_770) v_v_68_6)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_768) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_768) v_v_66_6)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_773) (< v_idx_773 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_773) 1)) (or (= (select |#valid| v_idx_772) v_v_72_6) (<= ULTIMATE.start_main_p7 v_idx_772))))))} [2019-01-18 14:55:54,801 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; [2019-01-18 14:55:54,802 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p5 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p5) 1))) [2019-01-18 14:55:55,015 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_791 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_791) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_791)) (< v_idx_791 ULTIMATE.start_main_p7))) (forall ((v_idx_795 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_795) (< v_idx_795 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_795) 1))))} [2019-01-18 14:55:57,919 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:55:57,919 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:55:57,919 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:55:57,920 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:55:57,920 WARN L224 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_820 Int) (v_idx_812 Int) (v_idx_813 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_816) (= (select |c_#valid| v_idx_816) v_v_72_6)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_817) (= (select |c_#valid| v_idx_817) 1) (< v_idx_817 c_ULTIMATE.start_main_p7)) (or (< v_idx_822 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_822) v_v_98_6)) (or (= (select |c_#valid| v_idx_818) v_v_74_6) (< v_idx_818 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_819)) (or (< v_idx_814 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_814))) (or (<= c_ULTIMATE.start_main_p7 v_idx_812) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_812) v_v_66_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_815)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_813) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_813) (< v_idx_813 c_ULTIMATE.start_main_p7)) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_821) (< v_idx_821 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_821) v_v_97_6)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_820) v_v_96_6) (<= c_ULTIMATE.start_main_p4 v_idx_820))))) (forall ((v_idx_801 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (or (= (select |c_#memory_int| v_idx_810) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_810) (< v_idx_810 c_ULTIMATE.start_main_p7)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_801) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_801)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_808)) (or (= (select |c_#memory_int| v_idx_809) v_v_93_6) (<= c_ULTIMATE.start_main_p7 v_idx_809)) (= v_v_2_6 (select |c_old(#valid)| v_idx_804)) (or (< v_idx_807 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_807) v_v_74_6)) (or (< v_idx_803 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_803) v_v_68_6)) (or (< v_idx_811 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_811) v_v_95_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_802) 0) (< v_idx_802 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_802)) (or (= (select |c_#valid| v_idx_805) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_805)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_806) 1) (< v_idx_806 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_806))))))} [2019-01-18 14:55:57,920 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:55:57,920 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:55:57,920 WARN L230 ngHoareTripleChecker]: Post: {2147483582#(forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_823 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_224_1 Int) (v_v_225_1 Int) (v_v_226_1 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_833) v_v_226_1) (< v_idx_833 (+ c_ULTIMATE.start_main_p1 1))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_827) v_v_72_6) (<= c_ULTIMATE.start_main_p7 v_idx_827)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_824) (< v_idx_824 c_ULTIMATE.start_main_p7) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_824) 0)) (or (< v_idx_825 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_825))) (<= (- v_v_225_1 (- v_v_225_1)) (- 2)) (or (< v_idx_829 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_829) v_v_74_6)) (<= (+ v_v_225_1 1) 0) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_830)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_6 (select |c_old(#valid)| v_idx_826)) (or (= (select |c_#memory_int| v_idx_832) v_v_225_1) (< v_idx_832 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_832)) (or (< v_idx_828 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_828) (= 1 (select |c_#valid| v_idx_828))) (or (= (select |c_#memory_int| v_idx_831) v_v_224_1) (<= c_ULTIMATE.start_main_p1 v_idx_831)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_823) v_v_66_6) (<= c_ULTIMATE.start_main_p7 v_idx_823)))))} [2019-01-18 14:55:57,920 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:55:58,547 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:55:58,548 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:06,475 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:06,475 WARN L270 ngHoareTripleChecker]: Pre: {2147483583#(or (forall ((v_idx_820 Int) (v_idx_812 Int) (v_idx_813 Int) (v_idx_821 Int) (v_idx_822 Int) (v_idx_816 Int) (v_idx_817 Int) (v_idx_814 Int) (v_idx_815 Int) (v_idx_818 Int) (v_idx_819 Int)) (exists ((v_v_72_6 Int) (v_v_4_6 Int) (v_v_74_6 Int) (v_v_96_6 Int) (v_v_97_6 Int) (v_v_98_6 Int) (v_v_66_6 Int) (v_v_68_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p7 v_idx_816) (= (select |#valid| v_idx_816) v_v_72_6)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_817) (= (select |#valid| v_idx_817) 1) (< v_idx_817 ULTIMATE.start_main_p7)) (or (< v_idx_822 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_822) v_v_98_6)) (or (= (select |#valid| v_idx_818) v_v_74_6) (< v_idx_818 (+ ULTIMATE.start_main_p7 1))) (= v_v_4_6 (select |old(#memory_int)| v_idx_819)) (or (< v_idx_814 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_814))) (or (<= ULTIMATE.start_main_p7 v_idx_812) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_812) v_v_66_6)) (= v_v_2_6 (select |old(#valid)| v_idx_815)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_813) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_813) (< v_idx_813 ULTIMATE.start_main_p7)) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_821) (< v_idx_821 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_821) v_v_97_6)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_820) v_v_96_6) (<= ULTIMATE.start_main_p4 v_idx_820))))) (forall ((v_idx_801 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_95_6 Int) (v_v_4_6 Int) (v_v_72_6 Int) (v_v_74_6 Int) (v_v_93_6 Int) (v_v_66_6 Int) (v_v_2_6 Int) (v_v_68_6 Int)) (and (or (= (select |#memory_int| v_idx_810) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_810) (< v_idx_810 ULTIMATE.start_main_p7)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_801) v_v_66_6) (<= ULTIMATE.start_main_p7 v_idx_801)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (= v_v_4_6 (select |old(#memory_int)| v_idx_808)) (or (= (select |#memory_int| v_idx_809) v_v_93_6) (<= ULTIMATE.start_main_p7 v_idx_809)) (= v_v_2_6 (select |old(#valid)| v_idx_804)) (or (< v_idx_807 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_807) v_v_74_6)) (or (< v_idx_803 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_803) v_v_68_6)) (or (< v_idx_811 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_811) v_v_95_6)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_802) 0) (< v_idx_802 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_802)) (or (= (select |#valid| v_idx_805) v_v_72_6) (<= ULTIMATE.start_main_p7 v_idx_805)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_806) 1) (< v_idx_806 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_806))))))} [2019-01-18 14:56:06,476 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:06,476 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:06,709 WARN L276 ngHoareTripleChecker]: Post: {2147483582#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_824 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_824) (< v_idx_824 ULTIMATE.start_main_p7) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_824) 0))) (forall ((v_idx_832 Int)) (or (< v_idx_832 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_832) (<= (+ (* 2 (select |#memory_int| v_idx_832)) 2) 0))) (forall ((v_idx_828 Int)) (or (< v_idx_828 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_828) (= 1 (select |#valid| v_idx_828)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_14 Int)) (or (<= (+ (select |#memory_int| v_prenex_14) 1) 0) (< v_prenex_14 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14))))} [2019-01-18 14:56:06,866 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:56:06,866 INFO L272 AbstractInterpreter]: Visited 4 different actions 7 times. Merged at 1 different actions 1 times. Never widened. Found 4 fixpoints after 3 different actions. Largest state had 0 variables. [2019-01-18 14:56:06,866 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:56:06,867 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:56:06,867 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:56:06,867 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:56:06,877 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:56:06,877 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:56:06,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:06,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:06,892 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:56:06,953 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 24 treesize of output 27 [2019-01-18 14:56:06,959 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 27 treesize of output 33 [2019-01-18 14:56:06,966 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:06,968 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:06,969 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 29 treesize of output 43 [2019-01-18 14:56:06,981 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:06,982 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:06,984 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:06,985 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:56:06,999 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,001 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,003 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,004 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,005 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:56:07,027 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,029 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,030 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,032 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,033 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,034 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:56:07,069 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:56:07,073 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,120 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,158 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,189 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,211 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,232 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,251 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,295 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,296 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:56:07,359 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,360 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,360 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:56:07,430 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,431 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,432 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,434 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,435 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:56:07,517 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,538 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,542 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,543 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,544 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,544 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,545 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:56:07,647 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,649 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,650 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,651 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,653 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,654 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,655 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,656 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:07,658 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:56:07,661 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,700 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,729 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,758 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,791 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:56:07,852 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 2 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:56:07,852 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 6 variables, input treesize:95, output treesize:96 [2019-01-18 14:56:07,893 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:07,894 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_52|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_14|]. (let ((.cse3 (store |v_#valid_14| ULTIMATE.start_main_p1 1))) (let ((.cse0 (store .cse3 ULTIMATE.start_main_p2 1))) (let ((.cse1 (store .cse0 ULTIMATE.start_main_p3 1))) (let ((.cse2 (store .cse1 ULTIMATE.start_main_p4 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p3)) (= 0 (select .cse1 ULTIMATE.start_main_p4)) (= (store (store (store (store (store (store (store |v_#memory_int_52| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|) (= 0 (select .cse2 ULTIMATE.start_main_p5)) (= (select .cse3 ULTIMATE.start_main_p2) 0) (= 0 (select (store .cse2 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6))))))) [2019-01-18 14:56:07,894 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (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_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:56:08,114 WARN L181 SmtUtils]: Spent 200.00 ms on a formula simplification. DAG size of input: 57 DAG size of output: 53 [2019-01-18 14:56:08,208 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:08,209 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 91 [2019-01-18 14:56:08,213 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:08,273 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:56:08,274 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:101, output treesize:71 [2019-01-18 14:56:10,446 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:10,446 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_53|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_53| ULTIMATE.start_main_p4))) (and (= .cse0 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (store |v_#memory_int_53| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p1) 0))) [2019-01-18 14:56:10,446 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:56:10,600 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,601 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,602 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,604 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,605 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,606 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,607 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,608 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:56:10,610 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 18 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 105 [2019-01-18 14:56:10,615 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:56:10,677 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:56:10,678 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:83, output treesize:57 [2019-01-18 14:56:12,727 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:56:12,727 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_54|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (let ((.cse0 (select |v_#memory_int_54| ULTIMATE.start_main_p5))) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= .cse0 0) (= (store |v_#memory_int_54| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_54| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_54| ULTIMATE.start_main_p1) 0) (= 0 (select |v_#memory_int_54| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (+ (select |v_#memory_int_54| ULTIMATE.start_main_p4) 1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_54| ULTIMATE.start_main_p3)))) [2019-01-18 14:56:12,727 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:56:12,777 INFO L273 TraceCheckUtils]: 0: Hoare triple {1424#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1432#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:56:12,780 INFO L273 TraceCheckUtils]: 1: Hoare triple {1432#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (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]; {1436#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-18 14:56:12,783 INFO L273 TraceCheckUtils]: 2: Hoare triple {1436#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {1440#(and (exists ((ULTIMATE.start_main_p5 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-01-18 14:56:12,785 INFO L273 TraceCheckUtils]: 3: Hoare triple {1440#(and (exists ((ULTIMATE.start_main_p5 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (= (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); {1425#false} is VALID [2019-01-18 14:56:12,786 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:56:12,786 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:56:12,826 INFO L273 TraceCheckUtils]: 3: Hoare triple {1444#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {1425#false} is VALID [2019-01-18 14:56:12,827 INFO L273 TraceCheckUtils]: 2: Hoare triple {1448#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {1444#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:12,829 INFO L273 TraceCheckUtils]: 1: Hoare triple {1452#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {1448#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p5 (+ (select |#memory_int| ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:12,832 INFO L273 TraceCheckUtils]: 0: Hoare triple {1424#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1452#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p5) 1)) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:56:12,832 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:56:12,851 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:56:12,851 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 14:56:12,851 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:56:12,852 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:56:12,852 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:56:12,852 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:56:12,870 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:56:12,870 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:56:12,870 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:56:12,870 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=66, Unknown=0, NotChecked=0, Total=110 [2019-01-18 14:56:12,870 INFO L87 Difference]: Start difference. First operand 34 states and 121 transitions. Second operand 8 states. [2019-01-18 14:56:15,287 WARN L181 SmtUtils]: Spent 130.00 ms on a formula simplification. DAG size of input: 53 DAG size of output: 51 [2019-01-18 14:56:16,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:16,543 INFO L93 Difference]: Finished difference Result 79 states and 193 transitions. [2019-01-18 14:56:16,543 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-01-18 14:56:16,543 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:56:16,543 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:56:16,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:56:16,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2019-01-18 14:56:16,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:56:16,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2019-01-18 14:56:16,546 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 94 transitions. [2019-01-18 14:56:16,785 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:56:16,787 INFO L225 Difference]: With dead ends: 79 [2019-01-18 14:56:16,787 INFO L226 Difference]: Without dead ends: 77 [2019-01-18 14:56:16,787 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=62, Invalid=94, Unknown=0, NotChecked=0, Total=156 [2019-01-18 14:56:16,787 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2019-01-18 14:56:16,900 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 41. [2019-01-18 14:56:16,900 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:56:16,900 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand 41 states. [2019-01-18 14:56:16,900 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 41 states. [2019-01-18 14:56:16,900 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 41 states. [2019-01-18 14:56:16,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:16,905 INFO L93 Difference]: Finished difference Result 77 states and 188 transitions. [2019-01-18 14:56:16,905 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 188 transitions. [2019-01-18 14:56:16,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:16,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:16,905 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 77 states. [2019-01-18 14:56:16,905 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 77 states. [2019-01-18 14:56:16,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:56:16,909 INFO L93 Difference]: Finished difference Result 77 states and 188 transitions. [2019-01-18 14:56:16,909 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 188 transitions. [2019-01-18 14:56:16,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:56:16,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:56:16,910 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:56:16,910 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:56:16,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2019-01-18 14:56:16,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 150 transitions. [2019-01-18 14:56:16,913 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 150 transitions. Word has length 4 [2019-01-18 14:56:16,913 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:56:16,913 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 150 transitions. [2019-01-18 14:56:16,913 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:56:16,913 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 150 transitions. [2019-01-18 14:56:16,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:56:16,914 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:56:16,914 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:56:16,914 INFO L423 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:56:16,914 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:56:16,915 INFO L82 PathProgramCache]: Analyzing trace with hash 941160, now seen corresponding path program 1 times [2019-01-18 14:56:16,915 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:56:16,915 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:16,916 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:56:16,916 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:56:16,916 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:56:16,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:56:17,080 INFO L273 TraceCheckUtils]: 0: Hoare triple {1764#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1766#(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-18 14:56:17,081 INFO L273 TraceCheckUtils]: 1: Hoare triple {1766#(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]; {1767#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:56:17,082 INFO L273 TraceCheckUtils]: 2: Hoare triple {1767#(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]; {1768#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:56:17,083 INFO L273 TraceCheckUtils]: 3: Hoare triple {1768#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {1765#false} is VALID [2019-01-18 14:56:17,083 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:56:17,083 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:56:17,083 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:56:17,083 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:56:17,083 INFO L207 CegarAbsIntRunner]: [0], [10], [18], [31] [2019-01-18 14:56:17,084 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:56:17,085 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:56:19,566 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:19,567 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:19,567 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:19,567 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:19,567 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_856 Int) (v_idx_857 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_72_7 Int) (v_v_2_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 1 (select |c_#valid| v_idx_855)) (< v_idx_855 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_855)) (or (= (select |c_#memory_int| v_idx_858) v_v_93_7) (<= c_ULTIMATE.start_main_p7 v_idx_858)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_859) (< v_idx_859 c_ULTIMATE.start_main_p7) (= (select |c_#memory_int| v_idx_859) 0)) (or (= (select |c_#valid| v_idx_854) v_v_72_7) (<= c_ULTIMATE.start_main_p7 v_idx_854)) (or (< v_idx_856 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_856) v_v_74_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_853)) (or (= v_v_66_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_850)) (<= c_ULTIMATE.start_main_p7 v_idx_850)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_851) (< v_idx_851 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_851))) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_857)) (or (< v_idx_852 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_852) v_v_68_7)) (or (= (select |c_#memory_int| v_idx_860) v_v_95_7) (< v_idx_860 (+ c_ULTIMATE.start_main_p7 1))))))} [2019-01-18 14:56:19,567 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:19,568 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:56:19,568 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_867 Int) (v_idx_868 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_96_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (= v_v_2_7 (select |c_old(#valid)| v_idx_864)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_861) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_861)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_862)) (< v_idx_862 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_862)) (or (< v_idx_871 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_871) v_v_98_7)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_866) (< v_idx_866 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_866) 1)) (or (<= c_ULTIMATE.start_main_p4 v_idx_869) (= (select |c_#memory_int| v_idx_869) v_v_96_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_863) v_v_68_7) (< v_idx_863 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#valid| v_idx_865) v_v_72_7) (<= c_ULTIMATE.start_main_p7 v_idx_865)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_868)) (or (< v_idx_870 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_870) v_v_97_7) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_870)) (or (= (select |c_#valid| v_idx_867) v_v_74_7) (< v_idx_867 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0))))} [2019-01-18 14:56:19,568 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:19,940 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:19,940 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:20,238 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_859 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_859) (< v_idx_859 ULTIMATE.start_main_p7) (= (select |#memory_int| v_idx_859) 0))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_851 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_851) (< v_idx_851 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_851)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_855 Int)) (or (= 1 (select |#valid| v_idx_855)) (< v_idx_855 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_855))))} [2019-01-18 14:56:20,238 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:20,238 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:56:20,265 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_866 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_866) (< v_idx_866 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_866) 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_862 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_862)) (< v_idx_862 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_862))))} [2019-01-18 14:56:22,580 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:22,580 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:22,580 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:22,580 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:22,580 WARN L224 ngHoareTripleChecker]: Pre: {2147483577#(forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_878 Int) (v_idx_879 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_93_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_879)) (or (< v_idx_874 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_874))) (or (= (select |c_#memory_int| v_idx_881) 0) (< v_idx_881 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_881)) (or (= (select |c_#valid| v_idx_878) v_v_74_7) (< v_idx_878 (+ c_ULTIMATE.start_main_p7 1))) (or (= 1 (select |c_#valid| v_idx_877)) (< v_idx_877 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_877)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_872) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_872)) (or (= (select |c_#memory_int| v_idx_880) v_v_93_7) (<= c_ULTIMATE.start_main_p7 v_idx_880)) (or (< v_idx_882 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_882) v_v_95_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_873) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_873) (< v_idx_873 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_7 (select |c_old(#valid)| v_idx_875)) (or (<= c_ULTIMATE.start_main_p7 v_idx_876) (= v_v_72_7 (select |c_#valid| v_idx_876))))))} [2019-01-18 14:56:22,581 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:56:22,581 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:56:22,581 WARN L230 ngHoareTripleChecker]: Post: {2147483576#(forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_889 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_112_7 Int) (v_v_68_7 Int) (v_v_110_7 Int) (v_v_111_7 Int) (v_v_66_7 Int)) (and (or (< v_idx_889 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_889) v_v_74_7)) (or (< v_idx_888 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_888) (= (select |c_#valid| v_idx_888) 1)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_884) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_884)) (< v_idx_884 c_ULTIMATE.start_main_p7)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_893 (+ c_ULTIMATE.start_main_p2 1)) (= v_v_112_7 (select |c_#memory_int| v_idx_893))) (or (= v_v_68_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_885)) (< v_idx_885 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_886)) (or (= (select |c_#valid| v_idx_887) v_v_72_7) (<= c_ULTIMATE.start_main_p7 v_idx_887)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_890)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_883) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_883)) (or (< v_idx_892 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_892) (= v_v_111_7 (select |c_#memory_int| v_idx_892))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_110_7 (select |c_#memory_int| v_idx_891)) (<= c_ULTIMATE.start_main_p2 v_idx_891)))))} [2019-01-18 14:56:22,581 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:22,989 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:22,990 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:23,024 WARN L270 ngHoareTripleChecker]: Pre: {2147483577#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_881 Int)) (or (= (select |#memory_int| v_idx_881) 0) (< v_idx_881 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_881))) (forall ((v_idx_877 Int)) (or (= 1 (select |#valid| v_idx_877)) (< v_idx_877 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_877))) (forall ((v_idx_873 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_873) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_873) (< v_idx_873 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:56:23,024 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:56:23,025 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:56:23,241 WARN L276 ngHoareTripleChecker]: Post: {2147483576#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_884 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_884) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_884)) (< v_idx_884 ULTIMATE.start_main_p7))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_888 Int)) (or (< v_idx_888 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_888) (= (select |#valid| v_idx_888) 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:56:25,781 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:25,781 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:25,782 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:25,782 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:25,782 WARN L224 ngHoareTripleChecker]: Pre: {2147483575#(forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_900 Int) (v_idx_901 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_904 Int) (v_idx_902 Int) (v_idx_903 Int)) (exists ((v_v_72_7 Int) (v_v_2_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (or (< v_idx_896 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_896) v_v_68_7)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_899 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_899) (= (select |c_#valid| v_idx_899) 1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_895)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_895) (< v_idx_895 c_ULTIMATE.start_main_p7)) (or (= (select |c_#memory_int| v_idx_904) v_v_95_7) (< v_idx_904 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_898) (= (select |c_#valid| v_idx_898) v_v_72_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_894) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_894)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_902) v_v_93_7) (<= c_ULTIMATE.start_main_p7 v_idx_902)) (= v_v_2_7 (select |c_old(#valid)| v_idx_897)) (or (< v_idx_900 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_7 (select |c_#valid| v_idx_900))) (= (select |c_old(#memory_int)| v_idx_901) v_v_4_7) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_903) (= (select |c_#memory_int| v_idx_903) 0) (< v_idx_903 c_ULTIMATE.start_main_p7)))))} [2019-01-18 14:56:25,782 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:25,782 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:25,782 WARN L230 ngHoareTripleChecker]: Post: {2147483574#(forall ((v_idx_911 Int) (v_idx_912 Int) (v_idx_910 Int) (v_idx_915 Int) (v_idx_905 Int) (v_idx_913 Int) (v_idx_914 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_72_7 Int) (v_v_2_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_135_7 Int) (v_v_134_7 Int) (v_v_68_7 Int) (v_v_133_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#valid| v_idx_911) v_v_74_7) (< v_idx_911 (+ c_ULTIMATE.start_main_p7 1))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_906 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_906) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_906))) (or (<= c_ULTIMATE.start_main_p7 v_idx_909) (= (select |c_#valid| v_idx_909) v_v_72_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_908)) (<= (+ v_v_134_7 1) 0) (or (< v_idx_907 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_907) v_v_68_7)) (or (<= c_ULTIMATE.start_main_p1 v_idx_913) (= (select |c_#memory_int| v_idx_913) v_v_133_7)) (<= (- v_v_134_7 (- v_v_134_7)) (- 2)) (or (< v_idx_910 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_910)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_910)) (or (= v_v_134_7 (select |c_#memory_int| v_idx_914)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_914) (< v_idx_914 c_ULTIMATE.start_main_p1)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_912)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_66_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_905)) (<= c_ULTIMATE.start_main_p7 v_idx_905)) (or (= (select |c_#memory_int| v_idx_915) v_v_135_7) (< v_idx_915 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-18 14:56:25,782 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:26,480 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:26,480 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:26,651 WARN L270 ngHoareTripleChecker]: Pre: {2147483575#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_895 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_895)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_895) (< v_idx_895 ULTIMATE.start_main_p7))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_903 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_903) (= (select |#memory_int| v_idx_903) 0) (< v_idx_903 ULTIMATE.start_main_p7))) (forall ((v_idx_899 Int)) (or (< v_idx_899 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_899) (= (select |#valid| v_idx_899) 1))))} [2019-01-18 14:56:26,652 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:26,652 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:26,690 WARN L276 ngHoareTripleChecker]: Post: {2147483574#(and (forall ((v_idx_910 Int)) (or (< v_idx_910 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_910)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_910))) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_prenex_15 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (<= (+ (select |#memory_int| v_prenex_15) 1) 0) (< v_prenex_15 ULTIMATE.start_main_p1))) (forall ((v_idx_906 Int)) (or (< v_idx_906 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_906) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_906)))) (forall ((v_idx_914 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_914)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_914) (< v_idx_914 ULTIMATE.start_main_p1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:56:29,063 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:29,063 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:29,063 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:29,063 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:29,064 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(or (forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_934 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_937 Int) (v_idx_927 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_96_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_932 c_ULTIMATE.start_main_p7) (= (select |c_#valid| v_idx_932) 1) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_932)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_936) v_v_97_7) (< v_idx_936 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_936)) (or (= (select |c_#memory_int| v_idx_937) v_v_98_7) (< v_idx_937 (+ c_ULTIMATE.start_main_p4 1))) (= (select |c_old(#memory_int)| v_idx_934) v_v_4_7) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_927) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_927)) (= (select |c_old(#valid)| v_idx_930) v_v_2_7) (or (<= c_ULTIMATE.start_main_p7 v_idx_931) (= (select |c_#valid| v_idx_931) v_v_72_7)) (or (< v_idx_928 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_928) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_928))) (or (= (select |c_#valid| v_idx_933) v_v_74_7) (< v_idx_933 (+ c_ULTIMATE.start_main_p7 1))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p4 v_idx_935) (= (select |c_#memory_int| v_idx_935) v_v_96_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_929) v_v_68_7) (< v_idx_929 (+ c_ULTIMATE.start_main_p7 1)))))) (forall ((v_idx_922 Int) (v_idx_923 Int) (v_idx_920 Int) (v_idx_921 Int) (v_idx_926 Int) (v_idx_916 Int) (v_idx_924 Int) (v_idx_925 Int) (v_idx_919 Int) (v_idx_917 Int) (v_idx_918 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_926) v_v_95_7) (< v_idx_926 (+ c_ULTIMATE.start_main_p7 1))) (or (= (select |c_#valid| v_idx_922) v_v_74_7) (< v_idx_922 (+ c_ULTIMATE.start_main_p7 1))) (or (< v_idx_918 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_918))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_925) 0) (< v_idx_925 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_925)) (= (select |c_old(#memory_int)| v_idx_923) v_v_4_7) (= (select |c_old(#valid)| v_idx_919) v_v_2_7) (or (<= c_ULTIMATE.start_main_p7 v_idx_920) (= (select |c_#valid| v_idx_920) v_v_72_7)) (or (< v_idx_921 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_921) (= (select |c_#valid| v_idx_921) 1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_916) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_916)) (or (<= c_ULTIMATE.start_main_p7 v_idx_924) (= (select |c_#memory_int| v_idx_924) v_v_93_7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_917) (< v_idx_917 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_917)))))))} [2019-01-18 14:56:29,064 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:29,064 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:56:29,064 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 Int) (v_idx_945 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_948 Int) (v_idx_938 Int) (v_idx_946 Int) (v_idx_947 Int) (v_idx_939 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_138_7 Int) (v_v_137_7 Int) (v_v_136_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_941) v_v_2_7) (or (< v_idx_940 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_940) v_v_68_7)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_943) (= 1 (select |c_#valid| v_idx_943)) (< v_idx_943 c_ULTIMATE.start_main_p7)) (or (<= c_ULTIMATE.start_main_p4 v_idx_946) (= v_v_136_7 (select |c_#memory_int| v_idx_946))) (or (< v_idx_944 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_944) v_v_74_7)) (or (= (select |c_#valid| v_idx_942) v_v_72_7) (<= c_ULTIMATE.start_main_p7 v_idx_942)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_948 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_948) v_v_138_7)) (or (< v_idx_947 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_947) (= (select |c_#memory_int| v_idx_947) v_v_137_7)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_945)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_939) (< v_idx_939 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_939))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_938) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_938)))))} [2019-01-18 14:56:29,064 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:29,510 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:29,510 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:37,445 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:37,445 WARN L270 ngHoareTripleChecker]: Pre: {2147483573#(or (forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_934 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_937 Int) (v_idx_927 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_96_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_932 ULTIMATE.start_main_p7) (= (select |#valid| v_idx_932) 1) (<= (+ ULTIMATE.start_main_p7 1) v_idx_932)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_936) v_v_97_7) (< v_idx_936 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_936)) (or (= (select |#memory_int| v_idx_937) v_v_98_7) (< v_idx_937 (+ ULTIMATE.start_main_p4 1))) (= (select |old(#memory_int)| v_idx_934) v_v_4_7) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_927) v_v_66_7) (<= ULTIMATE.start_main_p7 v_idx_927)) (= (select |old(#valid)| v_idx_930) v_v_2_7) (or (<= ULTIMATE.start_main_p7 v_idx_931) (= (select |#valid| v_idx_931) v_v_72_7)) (or (< v_idx_928 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_928) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_928))) (or (= (select |#valid| v_idx_933) v_v_74_7) (< v_idx_933 (+ ULTIMATE.start_main_p7 1))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p4 v_idx_935) (= (select |#memory_int| v_idx_935) v_v_96_7)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_929) v_v_68_7) (< v_idx_929 (+ ULTIMATE.start_main_p7 1)))))) (forall ((v_idx_922 Int) (v_idx_923 Int) (v_idx_920 Int) (v_idx_921 Int) (v_idx_926 Int) (v_idx_916 Int) (v_idx_924 Int) (v_idx_925 Int) (v_idx_919 Int) (v_idx_917 Int) (v_idx_918 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= (select |#memory_int| v_idx_926) v_v_95_7) (< v_idx_926 (+ ULTIMATE.start_main_p7 1))) (or (= (select |#valid| v_idx_922) v_v_74_7) (< v_idx_922 (+ ULTIMATE.start_main_p7 1))) (or (< v_idx_918 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |ULTIMATE.start_malloc_old_#valid| v_idx_918))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_925) 0) (< v_idx_925 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_925)) (= (select |old(#memory_int)| v_idx_923) v_v_4_7) (= (select |old(#valid)| v_idx_919) v_v_2_7) (or (<= ULTIMATE.start_main_p7 v_idx_920) (= (select |#valid| v_idx_920) v_v_72_7)) (or (< v_idx_921 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_921) (= (select |#valid| v_idx_921) 1)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_916) v_v_66_7) (<= ULTIMATE.start_main_p7 v_idx_916)) (or (<= ULTIMATE.start_main_p7 v_idx_924) (= (select |#memory_int| v_idx_924) v_v_93_7)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_917) (< v_idx_917 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_917)))))))} [2019-01-18 14:56:37,445 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; [2019-01-18 14:56:37,446 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p4 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p4) (- 1)))) [2019-01-18 14:56:37,631 WARN L276 ngHoareTripleChecker]: Post: {2147483572#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_939 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_939) (< v_idx_939 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_939)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_943 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_943) (= 1 (select |#valid| v_idx_943)) (< v_idx_943 ULTIMATE.start_main_p7))))} [2019-01-18 14:56:40,395 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:40,395 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:40,395 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:40,396 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:40,396 WARN L224 ngHoareTripleChecker]: Pre: {2147483571#(or (forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 Int) (v_idx_956 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_959 Int) (v_idx_949 Int) (v_idx_957 Int) (v_idx_958 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_93_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (= v_v_4_7 (select |c_old(#memory_int)| v_idx_956)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_958 c_ULTIMATE.start_main_p7) (= 0 (select |c_#memory_int| v_idx_958)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_958)) (or (<= c_ULTIMATE.start_main_p7 v_idx_949) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_949) v_v_66_7)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_951 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_951) v_v_68_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_952)) (or (< v_idx_954 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_954) (= (select |c_#valid| v_idx_954) 1)) (or (< v_idx_959 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_95_7 (select |c_#memory_int| v_idx_959))) (or (< v_idx_955 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_955) v_v_74_7)) (or (< v_idx_950 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_950) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_950))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_953) (= (select |c_#valid| v_idx_953) v_v_72_7)) (or (= (select |c_#memory_int| v_idx_957) v_v_93_7) (<= c_ULTIMATE.start_main_p7 v_idx_957))))) (forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_966 Int) (v_idx_967 Int) (v_idx_964 Int) (v_idx_965 Int) (v_idx_968 Int) (v_idx_969 Int) (v_idx_970 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_96_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_960) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_960) v_v_66_7)) (or (< v_idx_970 (+ c_ULTIMATE.start_main_p4 1)) (= (select |c_#memory_int| v_idx_970) v_v_98_7)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_969) (< v_idx_969 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_969) v_v_97_7)) (or (= (select |c_#memory_int| v_idx_968) v_v_96_7) (<= c_ULTIMATE.start_main_p4 v_idx_968)) (or (< v_idx_962 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_962) v_v_68_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_963)) (or (<= c_ULTIMATE.start_main_p7 v_idx_964) (= (select |c_#valid| v_idx_964) v_v_72_7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_966 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_966) v_v_74_7)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_961)) (< v_idx_961 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_961)) (= (select |c_old(#memory_int)| v_idx_967) v_v_4_7) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_965) (= 1 (select |c_#valid| v_idx_965)) (< v_idx_965 c_ULTIMATE.start_main_p7))))))} [2019-01-18 14:56:40,396 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:56:40,396 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:56:40,396 WARN L230 ngHoareTripleChecker]: Post: {2147483570#(forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_977 Int) (v_idx_978 Int) (v_idx_975 Int) (v_idx_976 Int) (v_idx_979 Int) (v_idx_980 Int) (v_idx_981 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_180_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_68_7 Int) (v_v_182_7 Int) (v_v_181_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_#memory_int| v_idx_979) v_v_180_7) (<= c_ULTIMATE.start_main_p2 v_idx_979)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_980 c_ULTIMATE.start_main_p2) (= v_v_181_7 (select |c_#memory_int| v_idx_980)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_980)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_976) (< v_idx_976 c_ULTIMATE.start_main_p7) (= 1 (select |c_#valid| v_idx_976))) (or (= (select |c_#memory_int| v_idx_981) v_v_182_7) (< v_idx_981 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_974)) (or (< v_idx_973 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_973) v_v_68_7)) (or (= v_v_66_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_971)) (<= c_ULTIMATE.start_main_p7 v_idx_971)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_972) 0) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_972) (< v_idx_972 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_977 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_7 (select |c_#valid| v_idx_977))) (or (= (select |c_#valid| v_idx_975) v_v_72_7) (<= c_ULTIMATE.start_main_p7 v_idx_975)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_978)))))} [2019-01-18 14:56:40,396 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:40,846 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:40,846 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:56:48,773 WARN L181 SmtUtils]: Spent 7.93 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:56:48,773 WARN L270 ngHoareTripleChecker]: Pre: {2147483571#(or (forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 Int) (v_idx_956 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_959 Int) (v_idx_949 Int) (v_idx_957 Int) (v_idx_958 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_93_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (= v_v_4_7 (select |old(#memory_int)| v_idx_956)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_958 ULTIMATE.start_main_p7) (= 0 (select |#memory_int| v_idx_958)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_958)) (or (<= ULTIMATE.start_main_p7 v_idx_949) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_949) v_v_66_7)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_951 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_951) v_v_68_7)) (= v_v_2_7 (select |old(#valid)| v_idx_952)) (or (< v_idx_954 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_954) (= (select |#valid| v_idx_954) 1)) (or (< v_idx_959 (+ ULTIMATE.start_main_p7 1)) (= v_v_95_7 (select |#memory_int| v_idx_959))) (or (< v_idx_955 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_955) v_v_74_7)) (or (< v_idx_950 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_950) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_950))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_953) (= (select |#valid| v_idx_953) v_v_72_7)) (or (= (select |#memory_int| v_idx_957) v_v_93_7) (<= ULTIMATE.start_main_p7 v_idx_957))))) (forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_966 Int) (v_idx_967 Int) (v_idx_964 Int) (v_idx_965 Int) (v_idx_968 Int) (v_idx_969 Int) (v_idx_970 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_96_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= ULTIMATE.start_main_p7 v_idx_960) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_960) v_v_66_7)) (or (< v_idx_970 (+ ULTIMATE.start_main_p4 1)) (= (select |#memory_int| v_idx_970) v_v_98_7)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p4 1) v_idx_969) (< v_idx_969 ULTIMATE.start_main_p4) (= (select |#memory_int| v_idx_969) v_v_97_7)) (or (= (select |#memory_int| v_idx_968) v_v_96_7) (<= ULTIMATE.start_main_p4 v_idx_968)) (or (< v_idx_962 (+ ULTIMATE.start_main_p7 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_962) v_v_68_7)) (= v_v_2_7 (select |old(#valid)| v_idx_963)) (or (<= ULTIMATE.start_main_p7 v_idx_964) (= (select |#valid| v_idx_964) v_v_72_7)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_966 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_966) v_v_74_7)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_961)) (< v_idx_961 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_961)) (= (select |old(#memory_int)| v_idx_967) v_v_4_7) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_965) (= 1 (select |#valid| v_idx_965)) (< v_idx_965 ULTIMATE.start_main_p7))))))} [2019-01-18 14:56:48,773 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:56:48,773 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:56:48,955 WARN L276 ngHoareTripleChecker]: Post: {2147483570#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_976 Int)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_976) (< v_idx_976 ULTIMATE.start_main_p7) (= 1 (select |#valid| v_idx_976)))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_972 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_972) 0) (<= (+ ULTIMATE.start_main_p7 1) v_idx_972) (< v_idx_972 ULTIMATE.start_main_p7))))} [2019-01-18 14:56:51,733 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:56:51,734 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:56:51,734 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:56:51,734 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:56:51,734 WARN L224 ngHoareTripleChecker]: Pre: {2147483569#(or (forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_986 Int) (v_idx_987 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_72_7 Int) (v_v_2_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_987 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_987) (= 1 (select |c_#valid| v_idx_987))) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_983 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_983) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_983) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_984) v_v_68_7) (< v_idx_984 (+ c_ULTIMATE.start_main_p7 1))) (or (<= c_ULTIMATE.start_main_p7 v_idx_990) (= (select |c_#memory_int| v_idx_990) v_v_93_7)) (or (< v_idx_988 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#valid| v_idx_988) v_v_74_7)) (= (select |c_old(#memory_int)| v_idx_989) v_v_4_7) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_982) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_982)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p7 v_idx_986) (= (select |c_#valid| v_idx_986) v_v_72_7)) (= v_v_2_7 (select |c_old(#valid)| v_idx_985)) (or (< v_idx_991 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_991) (= 0 (select |c_#memory_int| v_idx_991))) (or (< v_idx_992 (+ c_ULTIMATE.start_main_p7 1)) (= (select |c_#memory_int| v_idx_992) v_v_95_7))))) (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_1003 Int) (v_idx_993 Int) (v_idx_1002 Int) (v_idx_994 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_997 Int) (v_idx_998 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_96_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_74_7 (select |c_#valid| v_idx_999)) (< v_idx_999 (+ c_ULTIMATE.start_main_p7 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_996)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= v_v_72_7 (select |c_#valid| v_idx_997)) (<= c_ULTIMATE.start_main_p7 v_idx_997)) (= (select |c_old(#memory_int)| v_idx_1000) v_v_4_7) (or (= 1 (select |c_#valid| v_idx_998)) (< v_idx_998 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_998)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_993) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_993)) (or (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_994) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_994)) (< v_idx_994 c_ULTIMATE.start_main_p7)) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_1002) v_v_97_7) (< v_idx_1002 c_ULTIMATE.start_main_p4) (<= (+ c_ULTIMATE.start_main_p4 1) v_idx_1002)) (or (< v_idx_995 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_995))) (or (= (select |c_#memory_int| v_idx_1003) v_v_98_7) (< v_idx_1003 (+ c_ULTIMATE.start_main_p4 1))) (or (<= c_ULTIMATE.start_main_p4 v_idx_1001) (= (select |c_#memory_int| v_idx_1001) v_v_96_7))))))} [2019-01-18 14:56:51,735 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:56:51,735 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:56:51,735 WARN L230 ngHoareTripleChecker]: Post: {2147483568#(forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_4_7 Int) (v_v_74_7 Int) (v_v_224_2 Int) (v_v_225_2 Int) (v_v_226_2 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= (- v_v_225_2 (- v_v_225_2)) (- 2)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1013) (< v_idx_1013 c_ULTIMATE.start_main_p1) (= v_v_225_2 (select |c_#memory_int| v_idx_1013))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p7) (<= (- (- c_ULTIMATE.start_main_p7) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1004) v_v_66_7) (<= c_ULTIMATE.start_main_p7 v_idx_1004)) (<= c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_1012) v_v_224_2) (<= c_ULTIMATE.start_main_p1 v_idx_1012)) (or (< v_idx_1005 c_ULTIMATE.start_main_p7) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1005)) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_1005)) (<= (+ v_v_225_2 1) 0) (or (< v_idx_1009 c_ULTIMATE.start_main_p7) (<= (+ c_ULTIMATE.start_main_p7 1) v_idx_1009) (= 1 (select |c_#valid| v_idx_1009))) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1011)) (or (< v_idx_1010 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_74_7 (select |c_#valid| v_idx_1010))) (or (< v_idx_1014 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_1014) v_v_226_2)) (= v_v_2_7 (select |c_old(#valid)| v_idx_1007)) (or (<= c_ULTIMATE.start_main_p7 v_idx_1008) (= v_v_72_7 (select |c_#valid| v_idx_1008))) (<= (- c_ULTIMATE.start_main_p7 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_1006 (+ c_ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1006))))))} [2019-01-18 14:56:51,735 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:56:52,199 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:56:52,200 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:57:00,157 WARN L181 SmtUtils]: Spent 7.96 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:57:00,158 WARN L270 ngHoareTripleChecker]: Pre: {2147483569#(or (forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_986 Int) (v_idx_987 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_72_7 Int) (v_v_2_7 Int) (v_v_93_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_95_7 Int) (v_v_68_7 Int) (v_v_66_7 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_987 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_987) (= 1 (select |#valid| v_idx_987))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (< v_idx_983 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_983) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_983) 0)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_984) v_v_68_7) (< v_idx_984 (+ ULTIMATE.start_main_p7 1))) (or (<= ULTIMATE.start_main_p7 v_idx_990) (= (select |#memory_int| v_idx_990) v_v_93_7)) (or (< v_idx_988 (+ ULTIMATE.start_main_p7 1)) (= (select |#valid| v_idx_988) v_v_74_7)) (= (select |old(#memory_int)| v_idx_989) v_v_4_7) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_982) v_v_66_7) (<= ULTIMATE.start_main_p7 v_idx_982)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_main_p7 v_idx_986) (= (select |#valid| v_idx_986) v_v_72_7)) (= v_v_2_7 (select |old(#valid)| v_idx_985)) (or (< v_idx_991 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_991) (= 0 (select |#memory_int| v_idx_991))) (or (< v_idx_992 (+ ULTIMATE.start_main_p7 1)) (= (select |#memory_int| v_idx_992) v_v_95_7))))) (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_1003 Int) (v_idx_993 Int) (v_idx_1002 Int) (v_idx_994 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_997 Int) (v_idx_998 Int)) (exists ((v_v_2_7 Int) (v_v_72_7 Int) (v_v_74_7 Int) (v_v_4_7 Int) (v_v_96_7 Int) (v_v_68_7 Int) (v_v_97_7 Int) (v_v_98_7 Int) (v_v_66_7 Int)) (and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (or (= v_v_74_7 (select |#valid| v_idx_999)) (< v_idx_999 (+ ULTIMATE.start_main_p7 1))) (= v_v_2_7 (select |old(#valid)| v_idx_996)) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (or (= v_v_72_7 (select |#valid| v_idx_997)) (<= ULTIMATE.start_main_p7 v_idx_997)) (= (select |old(#memory_int)| v_idx_1000) v_v_4_7) (or (= 1 (select |#valid| v_idx_998)) (< v_idx_998 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_998)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_993) v_v_66_7) (<= ULTIMATE.start_main_p7 v_idx_993)) (or (<= (+ ULTIMATE.start_main_p7 1) v_idx_994) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_994)) (< v_idx_994 ULTIMATE.start_main_p7)) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_1002) v_v_97_7) (< v_idx_1002 ULTIMATE.start_main_p4) (<= (+ ULTIMATE.start_main_p4 1) v_idx_1002)) (or (< v_idx_995 (+ ULTIMATE.start_main_p7 1)) (= v_v_68_7 (select |ULTIMATE.start_malloc_old_#valid| v_idx_995))) (or (= (select |#memory_int| v_idx_1003) v_v_98_7) (< v_idx_1003 (+ ULTIMATE.start_main_p4 1))) (or (<= ULTIMATE.start_main_p4 v_idx_1001) (= (select |#memory_int| v_idx_1001) v_v_96_7))))))} [2019-01-18 14:57:00,158 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:57:00,158 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:57:00,369 WARN L276 ngHoareTripleChecker]: Post: {2147483568#(and (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p7) (<= (- (- ULTIMATE.start_main_p7) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_1013 Int)) (or (<= (+ (* 2 (select |#memory_int| v_idx_1013)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1013) (< v_idx_1013 ULTIMATE.start_main_p1))) (<= ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) (forall ((v_idx_1005 Int)) (or (< v_idx_1005 ULTIMATE.start_main_p7) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1005)) (<= (+ ULTIMATE.start_main_p7 1) v_idx_1005))) (<= (- ULTIMATE.start_main_p7 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1009 Int)) (or (< v_idx_1009 ULTIMATE.start_main_p7) (<= (+ ULTIMATE.start_main_p7 1) v_idx_1009) (= 1 (select |#valid| v_idx_1009)))) (forall ((v_prenex_16 Int)) (or (< v_prenex_16 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_16) (<= (+ (select |#memory_int| v_prenex_16) 1) 0))))} [2019-01-18 14:57:00,499 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:57:00,499 INFO L272 AbstractInterpreter]: Visited 4 different actions 7 times. Merged at 1 different actions 1 times. Never widened. Found 4 fixpoints after 3 different actions. Largest state had 0 variables. [2019-01-18 14:57:00,499 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:57:00,499 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:57:00,499 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:57:00,499 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 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-01-18 14:57:00,510 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:57:00,510 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:57:00,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:57:00,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:57:00,521 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:57:01,034 WARN L181 SmtUtils]: Spent 172.00 ms on a formula simplification that was a NOOP. DAG size: 38 [2019-01-18 14:57:01,039 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 24 treesize of output 27 [2019-01-18 14:57:01,046 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 27 treesize of output 33 [2019-01-18 14:57:01,052 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,053 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,054 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 29 treesize of output 43 [2019-01-18 14:57:01,075 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,077 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,078 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,079 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 57 [2019-01-18 14:57:01,094 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,095 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,096 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,098 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,099 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 75 [2019-01-18 14:57:01,117 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,118 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,120 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,121 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,122 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,123 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 15 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 97 [2019-01-18 14:57:01,167 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 15 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 96 [2019-01-18 14:57:01,171 INFO L267 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,214 INFO L267 ElimStorePlain]: Start of recursive call 7: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,248 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,275 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,299 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,318 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,335 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,376 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,377 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 71 [2019-01-18 14:57:01,434 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,435 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,436 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 58 treesize of output 67 [2019-01-18 14:57:01,590 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,591 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,592 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,593 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,594 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 7 disjoint index pairs (out of 6 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 72 [2019-01-18 14:57:01,671 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,672 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,675 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,685 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,686 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,687 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,688 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 80 [2019-01-18 14:57:01,788 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,789 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,791 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,792 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,793 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,794 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,795 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,796 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:01,797 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 61 [2019-01-18 14:57:01,800 INFO L267 ElimStorePlain]: Start of recursive call 13: End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,829 INFO L267 ElimStorePlain]: Start of recursive call 12: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,858 INFO L267 ElimStorePlain]: Start of recursive call 11: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,888 INFO L267 ElimStorePlain]: Start of recursive call 10: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,918 INFO L267 ElimStorePlain]: Start of recursive call 9: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:57:01,978 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 2 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:57:01,979 INFO L202 ElimStorePlain]: Needed 13 recursive calls to eliminate 6 variables, input treesize:95, output treesize:96 [2019-01-18 14:57:02,027 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:57:02,028 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_57|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p7, |v_#valid_15|]. (let ((.cse1 (store |v_#valid_15| ULTIMATE.start_main_p1 1))) (let ((.cse3 (store .cse1 ULTIMATE.start_main_p2 1))) (let ((.cse2 (store .cse3 ULTIMATE.start_main_p3 1))) (let ((.cse0 (store .cse2 ULTIMATE.start_main_p4 1))) (and (= 0 (select (store .cse0 ULTIMATE.start_main_p5 1) ULTIMATE.start_main_p6)) (= 0 (select .cse1 ULTIMATE.start_main_p2)) (= (select .cse0 ULTIMATE.start_main_p5) 0) (= (store (store (store (store (store (store (store |v_#memory_int_57| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) ULTIMATE.start_main_p4 0) ULTIMATE.start_main_p5 0) ULTIMATE.start_main_p6 0) ULTIMATE.start_main_p7 0) |#memory_int|) (= 0 (select .cse2 ULTIMATE.start_main_p4)) (= 0 (select .cse3 ULTIMATE.start_main_p3))))))) [2019-01-18 14:57:02,028 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p7]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p7)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:57:02,163 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:02,165 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 91 [2019-01-18 14:57:02,169 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:57:02,222 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-01-18 14:57:02,222 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:101, output treesize:71 [2019-01-18 14:57:04,254 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:57:04,254 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_58|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_58| ULTIMATE.start_main_p4))) (and (= (select |v_#memory_int_58| ULTIMATE.start_main_p1) 0) (= |#memory_int| (store |v_#memory_int_58| ULTIMATE.start_main_p4 (+ .cse0 (- 1)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_58| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_58| ULTIMATE.start_main_p3) 0) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_58| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_58| ULTIMATE.start_main_p5) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:57:04,254 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_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)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:57:04,346 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,347 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,348 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,349 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,350 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,352 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:57:04,352 INFO L683 Elim1Store]: detected equality via solver [2019-01-18 14:57:04,353 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 6 select indices, 6 select index equivalence classes, 16 disjoint index pairs (out of 15 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 106 [2019-01-18 14:57:04,356 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:57:04,414 INFO L267 ElimStorePlain]: Start of recursive call 1: 5 dim-0 vars, 1 dim-1 vars, End of recursive call: 5 dim-0 vars, and 1 xjuncts. [2019-01-18 14:57:04,415 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 6 variables, input treesize:83, output treesize:59 [2019-01-18 14:57:04,548 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:57:04,549 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_59|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_59| ULTIMATE.start_main_p2))) (and (= (+ (select |v_#memory_int_59| ULTIMATE.start_main_p4) 1) 0) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p6)) (= (store |v_#memory_int_59| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-01-18 14:57:04,549 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p5, ULTIMATE.start_main_p4]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) (- 1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-01-18 14:57:04,591 INFO L273 TraceCheckUtils]: 0: Hoare triple {1764#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1772#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (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)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-01-18 14:57:04,594 INFO L273 TraceCheckUtils]: 1: Hoare triple {1772#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (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)) (= (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]; {1776#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:57:04,597 INFO L273 TraceCheckUtils]: 2: Hoare triple {1776#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {1780#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p2 Int)) (and (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-01-18 14:57:04,598 INFO L273 TraceCheckUtils]: 3: Hoare triple {1780#(and (exists ((ULTIMATE.start_main_p4 Int) (ULTIMATE.start_main_p2 Int)) (and (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} assume !(#memory_int[main_p1] >= 0); {1765#false} is VALID [2019-01-18 14:57:04,599 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:57:04,599 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:57:04,636 INFO L273 TraceCheckUtils]: 3: Hoare triple {1784#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {1765#false} is VALID [2019-01-18 14:57:04,637 INFO L273 TraceCheckUtils]: 2: Hoare triple {1788#(<= 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]; {1784#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:57:04,639 INFO L273 TraceCheckUtils]: 1: Hoare triple {1792#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {1788#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:57:04,641 INFO L273 TraceCheckUtils]: 0: Hoare triple {1764#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {1792#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:57:04,642 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:57:04,662 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:57:04,662 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 14:57:04,662 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:57:04,663 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:57:04,663 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:57:04,663 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:57:04,681 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:57:04,682 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:57:04,682 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:57:04,682 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=67, Unknown=0, NotChecked=0, Total=110 [2019-01-18 14:57:04,682 INFO L87 Difference]: Start difference. First operand 41 states and 150 transitions. Second operand 8 states. [2019-01-18 14:57:06,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:57:06,153 INFO L93 Difference]: Finished difference Result 74 states and 192 transitions. [2019-01-18 14:57:06,153 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-01-18 14:57:06,153 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:57:06,153 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:57:06,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:57:06,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2019-01-18 14:57:06,154 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:57:06,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2019-01-18 14:57:06,155 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2019-01-18 14:57:06,362 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:57:06,364 INFO L225 Difference]: With dead ends: 74 [2019-01-18 14:57:06,364 INFO L226 Difference]: Without dead ends: 73 [2019-01-18 14:57:06,364 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=61, Invalid=95, Unknown=0, NotChecked=0, Total=156 [2019-01-18 14:57:06,365 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2019-01-18 14:57:06,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 41. [2019-01-18 14:57:06,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:57:06,502 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand 41 states. [2019-01-18 14:57:06,503 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand 41 states. [2019-01-18 14:57:06,503 INFO L87 Difference]: Start difference. First operand 73 states. Second operand 41 states. [2019-01-18 14:57:06,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:57:06,506 INFO L93 Difference]: Finished difference Result 73 states and 190 transitions. [2019-01-18 14:57:06,506 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 190 transitions. [2019-01-18 14:57:06,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:57:06,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:57:06,507 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 73 states. [2019-01-18 14:57:06,507 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 73 states. [2019-01-18 14:57:06,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:57:06,509 INFO L93 Difference]: Finished difference Result 73 states and 190 transitions. [2019-01-18 14:57:06,509 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 190 transitions. [2019-01-18 14:57:06,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:57:06,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:57:06,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:57:06,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:57:06,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2019-01-18 14:57:06,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 150 transitions. [2019-01-18 14:57:06,511 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 150 transitions. Word has length 4 [2019-01-18 14:57:06,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:57:06,512 INFO L480 AbstractCegarLoop]: Abstraction has 41 states and 150 transitions. [2019-01-18 14:57:06,512 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:57:06,512 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 150 transitions. [2019-01-18 14:57:06,512 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:57:06,512 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:57:06,512 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:57:06,513 INFO L423 AbstractCegarLoop]: === Iteration 11 === [ULTIMATE.startErr6ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:57:06,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:57:06,513 INFO L82 PathProgramCache]: Analyzing trace with hash 941656, now seen corresponding path program 1 times [2019-01-18 14:57:06,513 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:57:06,514 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:57:06,514 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:57:06,514 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:57:06,514 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:57:06,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:57:06,655 INFO L273 TraceCheckUtils]: 0: Hoare triple {2092#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6, main_p7;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p4 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p5 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p6 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p7 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0];#memory_int := #memory_int[main_p4 := 0];#memory_int := #memory_int[main_p5 := 0];#memory_int := #memory_int[main_p6 := 0];#memory_int := #memory_int[main_p7 := 0]; {2094#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p4 ULTIMATE.start_main_p6)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:57:06,657 INFO L273 TraceCheckUtils]: 1: Hoare triple {2094#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p4 ULTIMATE.start_main_p6)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p4 (+ (select |#memory_int| ULTIMATE.start_main_p4) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {2095#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)))} is VALID [2019-01-18 14:57:06,658 INFO L273 TraceCheckUtils]: 2: Hoare triple {2095#(and (= 0 (select (store |#memory_int| ULTIMATE.start_main_p6 (+ (select |#memory_int| ULTIMATE.start_main_p6) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {2096#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:57:06,659 INFO L273 TraceCheckUtils]: 3: Hoare triple {2096#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {2093#false} is VALID [2019-01-18 14:57:06,659 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:57:06,659 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:57:06,659 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:57:06,660 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:57:06,660 INFO L207 CegarAbsIntRunner]: [0], [18], [26], [31] [2019-01-18 14:57:06,661 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:57:06,662 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:57:07,148 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-18 14:57:07,149 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) Connection to SMT solver broken 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) Connection to SMT solver broken at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.input(Executor.java:123) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.pop(Scriptor.java:139) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.arrays.DiffWrapperScript.pop(DiffWrapperScript.java:102) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.managedscript.ManagedScript.pop(ManagedScript.java:131) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.clearAssertionStack(DebuggingHoareTripleChecker.java:325) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.releaseLock(DebuggingHoareTripleChecker.java:166) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:84) 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: java.io.IOException: Stream closed at java.lang.ProcessBuilder$NullOutputStream.write(ProcessBuilder.java:433) at java.io.OutputStream.write(OutputStream.java:116) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) at java.io.BufferedWriter.flush(BufferedWriter.java:254) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.input(Executor.java:120) ... 37 more [2019-01-18 14:57:07,154 INFO L168 Benchmark]: Toolchain (without parser) took 291114.57 ms. Allocated memory was 136.8 MB in the beginning and 189.3 MB in the end (delta: 52.4 MB). Free memory was 107.2 MB in the beginning and 139.9 MB in the end (delta: -32.7 MB). Peak memory consumption was 82.7 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:07,154 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 136.8 MB. Free memory is still 108.6 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-18 14:57:07,155 INFO L168 Benchmark]: Boogie Procedure Inliner took 70.79 ms. Allocated memory is still 136.8 MB. Free memory was 107.0 MB in the beginning and 104.4 MB in the end (delta: 2.6 MB). Peak memory consumption was 2.6 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:07,155 INFO L168 Benchmark]: Boogie Preprocessor took 28.25 ms. Allocated memory is still 136.8 MB. Free memory was 104.4 MB in the beginning and 103.3 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:07,155 INFO L168 Benchmark]: RCFGBuilder took 985.39 ms. Allocated memory is still 136.8 MB. Free memory was 103.0 MB in the beginning and 77.9 MB in the end (delta: 25.1 MB). Peak memory consumption was 25.1 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:07,156 INFO L168 Benchmark]: TraceAbstraction took 290024.93 ms. Allocated memory was 136.8 MB in the beginning and 189.3 MB in the end (delta: 52.4 MB). Free memory was 77.7 MB in the beginning and 139.9 MB in the end (delta: -62.2 MB). Peak memory consumption was 53.2 MB. Max. memory is 7.1 GB. [2019-01-18 14:57:07,158 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 136.8 MB. Free memory is still 108.6 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 70.79 ms. Allocated memory is still 136.8 MB. Free memory was 107.0 MB in the beginning and 104.4 MB in the end (delta: 2.6 MB). Peak memory consumption was 2.6 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 28.25 ms. Allocated memory is still 136.8 MB. Free memory was 104.4 MB in the beginning and 103.3 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. * RCFGBuilder took 985.39 ms. Allocated memory is still 136.8 MB. Free memory was 103.0 MB in the beginning and 77.9 MB in the end (delta: 25.1 MB). Peak memory consumption was 25.1 MB. Max. memory is 7.1 GB. * TraceAbstraction took 290024.93 ms. Allocated memory was 136.8 MB in the beginning and 189.3 MB in the end (delta: 52.4 MB). Free memory was 77.7 MB in the beginning and 139.9 MB in the end (delta: -62.2 MB). Peak memory consumption was 53.2 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) Connection to SMT solver broken 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) Connection to SMT solver broken: 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...