java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -s ../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf -i ../../../trunk/examples/programs/heapseparator/speedup-poc-dd-3-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b7bd044-m [2019-01-18 14:50:28,038 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-18 14:50:28,040 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-18 14:50:28,052 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-18 14:50:28,053 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-18 14:50:28,054 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-18 14:50:28,055 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-18 14:50:28,057 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-18 14:50:28,059 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-18 14:50:28,060 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-18 14:50:28,061 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-18 14:50:28,061 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-18 14:50:28,062 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-18 14:50:28,063 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-18 14:50:28,065 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-18 14:50:28,065 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-18 14:50:28,066 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-18 14:50:28,069 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-18 14:50:28,076 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-18 14:50:28,077 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-18 14:50:28,082 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-18 14:50:28,083 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-18 14:50:28,086 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-18 14:50:28,087 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-18 14:50:28,087 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-18 14:50:28,089 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-18 14:50:28,091 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-18 14:50:28,091 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-18 14:50:28,092 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-18 14:50:28,096 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-18 14:50:28,096 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-18 14:50:28,097 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-18 14:50:28,097 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-18 14:50:28,097 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-18 14:50:28,100 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-18 14:50:28,100 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-18 14:50:28,101 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf [2019-01-18 14:50:28,123 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-18 14:50:28,124 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-18 14:50:28,125 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-18 14:50:28,125 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-18 14:50:28,125 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-18 14:50:28,126 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-18 14:50:28,126 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-18 14:50:28,126 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-18 14:50:28,126 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-18 14:50:28,126 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-18 14:50:28,127 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-18 14:50:28,128 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-18 14:50:28,128 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-18 14:50:28,129 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-18 14:50:28,130 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-18 14:50:28,130 INFO L133 SettingsManager]: * Use SBE=true [2019-01-18 14:50:28,130 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-18 14:50:28,130 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-18 14:50:28,130 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-18 14:50:28,131 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-18 14:50:28,132 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-18 14:50:28,132 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-18 14:50:28,132 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-18 14:50:28,132 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-18 14:50:28,133 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-18 14:50:28,133 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:50:28,133 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-18 14:50:28,133 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-18 14:50:28,133 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-18 14:50:28,134 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-18 14:50:28,136 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-18 14:50:28,136 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-01-18 14:50:28,136 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-18 14:50:28,136 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-18 14:50:28,172 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-18 14:50:28,184 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-18 14:50:28,188 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-18 14:50:28,189 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-18 14:50:28,190 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-18 14:50:28,191 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-3-unlimited.bpl [2019-01-18 14:50:28,191 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-3-unlimited.bpl' [2019-01-18 14:50:28,231 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-18 14:50:28,233 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-18 14:50:28,234 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-18 14:50:28,234 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-18 14:50:28,234 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-18 14:50:28,251 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,263 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,294 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-18 14:50:28,296 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-18 14:50:28,296 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-18 14:50:28,296 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-18 14:50:28,308 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,309 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,310 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,310 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,315 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,323 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,324 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... [2019-01-18 14:50:28,327 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-18 14:50:28,327 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-18 14:50:28,333 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-18 14:50:28,333 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-18 14:50:28,334 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-01-18 14:50:28,408 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-18 14:50:28,408 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-18 14:50:28,884 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-18 14:50:28,885 INFO L286 CfgBuilder]: Removed 9 assue(true) statements. [2019-01-18 14:50:28,886 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:50:28 BoogieIcfgContainer [2019-01-18 14:50:28,886 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-18 14:50:28,887 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-18 14:50:28,887 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-18 14:50:28,890 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-18 14:50:28,891 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 18.01 02:50:28" (1/2) ... [2019-01-18 14:50:28,892 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@46e3230b and model type speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.01 02:50:28, skipping insertion in model container [2019-01-18 14:50:28,892 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-3-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.01 02:50:28" (2/2) ... [2019-01-18 14:50:28,894 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-3-unlimited.bpl [2019-01-18 14:50:28,903 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-18 14:50:28,911 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 3 error locations. [2019-01-18 14:50:28,928 INFO L257 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2019-01-18 14:50:28,961 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-18 14:50:28,961 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-18 14:50:28,962 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-18 14:50:28,962 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-18 14:50:28,962 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-18 14:50:28,962 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-18 14:50:28,962 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-18 14:50:28,963 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-18 14:50:28,978 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states. [2019-01-18 14:50:28,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-18 14:50:28,985 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:28,986 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-18 14:50:28,988 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:28,994 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:28,994 INFO L82 PathProgramCache]: Analyzing trace with hash 976, now seen corresponding path program 1 times [2019-01-18 14:50:28,997 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:29,051 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:29,052 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:29,052 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:29,052 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:29,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:29,211 INFO L273 TraceCheckUtils]: 0: Hoare triple {12#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {14#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:29,218 INFO L273 TraceCheckUtils]: 1: Hoare triple {14#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {13#false} is VALID [2019-01-18 14:50:29,220 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:50:29,223 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:50:29,223 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:50:29,223 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:50:29,229 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:50:29,231 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:50:29,235 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:50:29,259 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 2 edges. 2 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:29,260 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:50:29,266 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:50:29,267 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:50:29,269 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 3 states. [2019-01-18 14:50:29,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:29,497 INFO L93 Difference]: Finished difference Result 17 states and 21 transitions. [2019-01-18 14:50:29,497 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:50:29,498 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-18 14:50:29,498 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:50:29,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:29,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2019-01-18 14:50:29,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:29,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 21 transitions. [2019-01-18 14:50:29,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 21 transitions. [2019-01-18 14:50:29,615 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:29,629 INFO L225 Difference]: With dead ends: 17 [2019-01-18 14:50:29,629 INFO L226 Difference]: Without dead ends: 12 [2019-01-18 14:50:29,632 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:50:29,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-18 14:50:29,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 8. [2019-01-18 14:50:29,717 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:50:29,717 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 8 states. [2019-01-18 14:50:29,718 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 8 states. [2019-01-18 14:50:29,718 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 8 states. [2019-01-18 14:50:29,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:29,721 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-18 14:50:29,722 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 16 transitions. [2019-01-18 14:50:29,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:29,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:29,722 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 12 states. [2019-01-18 14:50:29,723 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 12 states. [2019-01-18 14:50:29,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:29,725 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-18 14:50:29,725 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 16 transitions. [2019-01-18 14:50:29,726 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:29,726 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:29,726 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:50:29,726 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:50:29,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:50:29,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 13 transitions. [2019-01-18 14:50:29,730 INFO L78 Accepts]: Start accepts. Automaton has 8 states and 13 transitions. Word has length 2 [2019-01-18 14:50:29,730 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:50:29,730 INFO L480 AbstractCegarLoop]: Abstraction has 8 states and 13 transitions. [2019-01-18 14:50:29,730 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:50:29,731 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 13 transitions. [2019-01-18 14:50:29,731 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:50:29,731 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:29,732 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:50:29,732 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:29,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:29,733 INFO L82 PathProgramCache]: Analyzing trace with hash 30304, now seen corresponding path program 1 times [2019-01-18 14:50:29,733 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:29,734 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:29,734 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:29,734 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:29,734 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:29,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:29,909 INFO L273 TraceCheckUtils]: 0: Hoare triple {70#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:50:29,926 INFO L273 TraceCheckUtils]: 1: Hoare triple {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:50:29,941 INFO L273 TraceCheckUtils]: 2: Hoare triple {72#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {71#false} is VALID [2019-01-18 14:50:29,942 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:50:29,942 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:50:29,942 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:50:29,943 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:50:29,944 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:50:29,945 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:50:29,945 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:50:29,978 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:29,979 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:50:29,979 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:50:29,979 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:50:29,979 INFO L87 Difference]: Start difference. First operand 8 states and 13 transitions. Second operand 3 states. [2019-01-18 14:50:30,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:30,063 INFO L93 Difference]: Finished difference Result 12 states and 16 transitions. [2019-01-18 14:50:30,063 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:50:30,063 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-18 14:50:30,063 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:50:30,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:30,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 16 transitions. [2019-01-18 14:50:30,066 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:50:30,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 16 transitions. [2019-01-18 14:50:30,067 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 16 transitions. [2019-01-18 14:50:30,099 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:50:30,100 INFO L225 Difference]: With dead ends: 12 [2019-01-18 14:50:30,101 INFO L226 Difference]: Without dead ends: 11 [2019-01-18 14:50:30,102 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:50:30,102 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 11 states. [2019-01-18 14:50:30,128 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 11 to 9. [2019-01-18 14:50:30,128 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:50:30,128 INFO L82 GeneralOperation]: Start isEquivalent. First operand 11 states. Second operand 9 states. [2019-01-18 14:50:30,129 INFO L74 IsIncluded]: Start isIncluded. First operand 11 states. Second operand 9 states. [2019-01-18 14:50:30,129 INFO L87 Difference]: Start difference. First operand 11 states. Second operand 9 states. [2019-01-18 14:50:30,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:30,131 INFO L93 Difference]: Finished difference Result 11 states and 15 transitions. [2019-01-18 14:50:30,131 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 15 transitions. [2019-01-18 14:50:30,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:30,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:30,131 INFO L74 IsIncluded]: Start isIncluded. First operand 9 states. Second operand 11 states. [2019-01-18 14:50:30,132 INFO L87 Difference]: Start difference. First operand 9 states. Second operand 11 states. [2019-01-18 14:50:30,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:50:30,136 INFO L93 Difference]: Finished difference Result 11 states and 15 transitions. [2019-01-18 14:50:30,136 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 15 transitions. [2019-01-18 14:50:30,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:50:30,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:50:30,137 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:50:30,137 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:50:30,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-01-18 14:50:30,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 14 transitions. [2019-01-18 14:50:30,139 INFO L78 Accepts]: Start accepts. Automaton has 9 states and 14 transitions. Word has length 3 [2019-01-18 14:50:30,139 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:50:30,139 INFO L480 AbstractCegarLoop]: Abstraction has 9 states and 14 transitions. [2019-01-18 14:50:30,139 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:50:30,140 INFO L276 IsEmpty]: Start isEmpty. Operand 9 states and 14 transitions. [2019-01-18 14:50:30,140 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:50:30,140 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:50:30,140 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:50:30,141 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:50:30,141 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:50:30,141 INFO L82 PathProgramCache]: Analyzing trace with hash 29992, now seen corresponding path program 1 times [2019-01-18 14:50:30,141 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:50:30,142 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:30,142 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:50:30,142 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:50:30,143 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:50:30,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:50:30,318 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {124#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:50:30,319 INFO L273 TraceCheckUtils]: 1: Hoare triple {124#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:50:30,321 INFO L273 TraceCheckUtils]: 2: Hoare triple {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-18 14:50:30,322 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:50:30,322 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:50:30,322 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:50:30,323 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:50:30,325 INFO L207 CegarAbsIntRunner]: [0], [6], [15] [2019-01-18 14:50:30,370 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:50:30,371 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:50:34,186 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:34,187 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:34,187 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:34,188 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:34,188 WARN L224 ngHoareTripleChecker]: Pre: {2147483645#(forall ((v_idx_25 Int) (v_idx_26 Int) (v_idx_23 Int) (v_idx_24 Int) (v_idx_21 Int) (v_idx_22 Int) (v_idx_20 Int) (v_idx_18 Int) (v_idx_19 Int) (v_idx_27 Int) (v_idx_17 Int)) (exists ((v_v_34_1 Int) (v_v_43_1 Int) (v_v_32_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (= (select |c_old(#valid)| v_idx_20) v_v_2_1) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_17) v_v_26_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_17)) (or (= v_v_41_1 (select |c_#memory_int| v_idx_25)) (<= c_ULTIMATE.start_malloc_ptr v_idx_25)) (or (= (select |c_#memory_int| v_idx_27) v_v_43_1) (< v_idx_27 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_24)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_19) v_v_28_1) (< v_idx_19 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_23) v_v_34_1) (< v_idx_23 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_26 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_26) (= (select |c_#memory_int| v_idx_26) 0)) (or (< v_idx_18 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_18)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_18)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_22) (< v_idx_22 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_22) 1)) (or (= (select |c_#valid| v_idx_21) v_v_32_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_21)))))} [2019-01-18 14:50:34,189 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:34,189 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:50:34,190 WARN L230 ngHoareTripleChecker]: Post: {2147483644#(forall ((v_idx_36 Int) (v_idx_37 Int) (v_idx_34 Int) (v_idx_35 Int) (v_idx_32 Int) (v_idx_33 Int) (v_idx_30 Int) (v_idx_31 Int) (v_idx_29 Int) (v_idx_38 Int) (v_idx_28 Int)) (exists ((v_v_46_1 Int) (v_v_34_1 Int) (v_v_45_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (or (= (select |c_#memory_int| v_idx_36) v_v_44_1) (<= c_ULTIMATE.start_main_p1 v_idx_36)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_34 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_34) v_v_34_1)) (or (< v_idx_37 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_37) (= (select |c_#memory_int| v_idx_37) v_v_45_1)) (or (< v_idx_38 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_38) v_v_46_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_28) (= v_v_26_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_28))) (or (< v_idx_33 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_33) (= 1 (select |c_#valid| v_idx_33))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_35)) (or (= (select |c_#valid| v_idx_32) v_v_32_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_32)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_30)) (< v_idx_30 (+ c_ULTIMATE.start_main_p3 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_29)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_29) (< v_idx_29 c_ULTIMATE.start_malloc_ptr)) (= v_v_2_1 (select |c_old(#valid)| v_idx_31)))))} [2019-01-18 14:50:34,190 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:34,532 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:34,533 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:34,880 WARN L270 ngHoareTripleChecker]: Pre: {2147483645#(and (forall ((v_idx_26 Int)) (or (< v_idx_26 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_26) (= (select |#memory_int| v_idx_26) 0))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_22 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_22) (< v_idx_22 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_22) 1))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_18 Int)) (or (< v_idx_18 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_18)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_18))))} [2019-01-18 14:50:34,881 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:34,882 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:50:35,040 WARN L276 ngHoareTripleChecker]: Post: {2147483644#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_33 Int)) (or (< v_idx_33 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_33) (= 1 (select |#valid| v_idx_33)))) (forall ((v_idx_29 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_29)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_29) (< v_idx_29 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:50:38,136 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:38,136 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:38,137 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:38,137 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:38,137 WARN L224 ngHoareTripleChecker]: Pre: {2147483643#(forall ((v_idx_47 Int) (v_idx_48 Int) (v_idx_45 Int) (v_idx_46 Int) (v_idx_43 Int) (v_idx_44 Int) (v_idx_41 Int) (v_idx_42 Int) (v_idx_40 Int) (v_idx_49 Int) (v_idx_39 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_48 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_48) (= 0 (select |c_#memory_int| v_idx_48))) (or (= (select |c_#valid| v_idx_45) v_v_34_1) (< v_idx_45 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_40 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_40)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_44) (< v_idx_44 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_44))) (or (< v_idx_41 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_41) v_v_28_1)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_46)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_47) (= (select |c_#memory_int| v_idx_47) v_v_41_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_39) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_39) v_v_26_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_1 (select |c_old(#valid)| v_idx_42)) (or (= (select |c_#valid| v_idx_43) v_v_32_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_43)) (or (< v_idx_49 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_49) v_v_43_1)))))} [2019-01-18 14:50:38,138 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:38,138 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:38,138 WARN L230 ngHoareTripleChecker]: Post: {2147483642#(forall ((v_idx_58 Int) (v_idx_59 Int) (v_idx_56 Int) (v_idx_57 Int) (v_idx_54 Int) (v_idx_55 Int) (v_idx_52 Int) (v_idx_53 Int) (v_idx_50 Int) (v_idx_51 Int) (v_idx_60 Int)) (exists ((v_v_34_1 Int) (v_v_58_1 Int) (v_v_32_1 Int) (v_v_60_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_59_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_52)) (< v_idx_52 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_51) (< v_idx_51 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_51))) (or (< v_idx_60 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_60) v_v_60_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_54) (= v_v_32_1 (select |c_#valid| v_idx_54))) (or (= (select |c_#memory_int| v_idx_58) v_v_58_1) (<= c_ULTIMATE.start_main_p1 v_idx_58)) (= v_v_2_1 (select |c_old(#valid)| v_idx_53)) (<= (- v_v_59_1 (- v_v_59_1)) (- 2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_50) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_50) v_v_26_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_57) v_v_4_1) (or (= v_v_34_1 (select |c_#valid| v_idx_56)) (< v_idx_56 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_59) (< v_idx_59 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_59) v_v_59_1)) (<= (+ v_v_59_1 1) 0) (or (< v_idx_55 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_55) (= 1 (select |c_#valid| v_idx_55))))))} [2019-01-18 14:50:38,138 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:38,508 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:38,509 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:38,798 WARN L270 ngHoareTripleChecker]: Pre: {2147483643#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_44 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_44) (< v_idx_44 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_44)))) (forall ((v_idx_48 Int)) (or (< v_idx_48 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_48) (= 0 (select |#memory_int| v_idx_48)))) (forall ((v_idx_40 Int)) (or (< v_idx_40 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_40) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_40))))} [2019-01-18 14:50:38,799 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:38,799 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:38,867 WARN L276 ngHoareTripleChecker]: Post: {2147483642#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_59 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_59) (< v_idx_59 ULTIMATE.start_main_p1) (<= (+ (select |#memory_int| v_idx_59) 1) 0))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_1 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_1)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_1) (< v_prenex_1 ULTIMATE.start_main_p1))) (forall ((v_idx_55 Int)) (or (< v_idx_55 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_55) (= 1 (select |#valid| v_idx_55)))) (forall ((v_idx_51 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_51) (< v_idx_51 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_51)))))} [2019-01-18 14:50:42,222 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:42,223 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:42,223 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:42,224 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:42,224 WARN L224 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_63)) (< v_idx_63 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_65) (= (select |c_#valid| v_idx_65) v_v_32_1)) (or (< v_idx_67 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_67) v_v_34_1)) (or (= (select |c_#memory_int| v_idx_69) v_v_41_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_69)) (= (select |c_old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |c_old(#valid)| v_idx_64)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_61) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_26_1)) (or (< v_idx_62 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_62)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_66) (< v_idx_66 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_66))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_#memory_int| v_idx_70)) (< v_idx_70 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_70)) (or (= v_v_43_1 (select |c_#memory_int| v_idx_71)) (< v_idx_71 (+ c_ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_34_1 Int) (v_v_45_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_79)) (or (< v_idx_78 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_78) v_v_34_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_72) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_26_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_74 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_28_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_81) (= (select |c_#memory_int| v_idx_81) v_v_45_1) (< v_idx_81 c_ULTIMATE.start_main_p1)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_77) (< v_idx_77 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_77) 1)) (or (= (select |c_#valid| v_idx_76) v_v_32_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_76)) (or (= (select |c_#memory_int| v_idx_82) v_v_46_1) (< v_idx_82 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_2_1 (select |c_old(#valid)| v_idx_75)) (or (= (select |c_#memory_int| v_idx_80) v_v_44_1) (<= c_ULTIMATE.start_main_p1 v_idx_80)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_73) (< v_idx_73 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_73) 0))))))} [2019-01-18 14:50:42,224 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:42,224 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:50:42,224 WARN L230 ngHoareTripleChecker]: Post: {2147483640#(forall ((v_idx_89 Int) (v_idx_87 Int) (v_idx_88 Int) (v_idx_85 Int) (v_idx_86 Int) (v_idx_83 Int) (v_idx_84 Int) (v_idx_92 Int) (v_idx_93 Int) (v_idx_90 Int) (v_idx_91 Int)) (exists ((v_v_34_1 Int) (v_v_62_1 Int) (v_v_32_1 Int) (v_v_63_1 Int) (v_v_2_1 Int) (v_v_61_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_1 (select |c_old(#valid)| v_idx_86)) (= (select |c_old(#memory_int)| v_idx_90) v_v_4_1) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_83) (= v_v_26_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_83))) (or (< v_idx_89 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_89) v_v_34_1)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_84)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_84) (< v_idx_84 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_92) v_v_62_1) (< v_idx_92 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_92)) (or (= (select |c_#valid| v_idx_88) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_88) (< v_idx_88 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_85 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_85))) (or (= (select |c_#memory_int| v_idx_91) v_v_61_1) (<= c_ULTIMATE.start_main_p1 v_idx_91)) (or (< v_idx_93 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_93) v_v_63_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_87) (= (select |c_#valid| v_idx_87) v_v_32_1)))))} [2019-01-18 14:50:42,224 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:42,795 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:42,795 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:50:50,975 WARN L181 SmtUtils]: Spent 8.18 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:50:50,976 WARN L270 ngHoareTripleChecker]: Pre: {2147483641#(or (forall ((v_idx_69 Int) (v_idx_67 Int) (v_idx_68 Int) (v_idx_65 Int) (v_idx_66 Int) (v_idx_63 Int) (v_idx_64 Int) (v_idx_61 Int) (v_idx_62 Int) (v_idx_70 Int) (v_idx_71 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= v_v_28_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_63)) (< v_idx_63 (+ ULTIMATE.start_main_p3 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_65) (= (select |#valid| v_idx_65) v_v_32_1)) (or (< v_idx_67 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_67) v_v_34_1)) (or (= (select |#memory_int| v_idx_69) v_v_41_1) (<= ULTIMATE.start_malloc_ptr v_idx_69)) (= (select |old(#memory_int)| v_idx_68) v_v_4_1) (= v_v_2_1 (select |old(#valid)| v_idx_64)) (or (<= ULTIMATE.start_malloc_ptr v_idx_61) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_61) v_v_26_1)) (or (< v_idx_62 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_62) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_62)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_66) (< v_idx_66 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_66))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |#memory_int| v_idx_70)) (< v_idx_70 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_70)) (or (= v_v_43_1 (select |#memory_int| v_idx_71)) (< v_idx_71 (+ ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_78 Int) (v_idx_79 Int) (v_idx_76 Int) (v_idx_77 Int) (v_idx_74 Int) (v_idx_75 Int) (v_idx_72 Int) (v_idx_73 Int) (v_idx_81 Int) (v_idx_82 Int) (v_idx_80 Int)) (exists ((v_v_46_1 Int) (v_v_34_1 Int) (v_v_45_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_4_1 (select |old(#memory_int)| v_idx_79)) (or (< v_idx_78 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_78) v_v_34_1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_72) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_72) v_v_26_1)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_74 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_74) v_v_28_1)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_81) (= (select |#memory_int| v_idx_81) v_v_45_1) (< v_idx_81 ULTIMATE.start_main_p1)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_77) (< v_idx_77 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_77) 1)) (or (= (select |#valid| v_idx_76) v_v_32_1) (<= ULTIMATE.start_malloc_ptr v_idx_76)) (or (= (select |#memory_int| v_idx_82) v_v_46_1) (< v_idx_82 (+ ULTIMATE.start_main_p1 1))) (= v_v_2_1 (select |old(#valid)| v_idx_75)) (or (= (select |#memory_int| v_idx_80) v_v_44_1) (<= ULTIMATE.start_main_p1 v_idx_80)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_73) (< v_idx_73 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_73) 0))))))} [2019-01-18 14:50:50,976 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:50:50,976 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:50:51,020 WARN L276 ngHoareTripleChecker]: Post: {2147483640#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_84 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_84)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_84) (< v_idx_84 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_88 Int)) (or (= (select |#valid| v_idx_88) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_88) (< v_idx_88 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:50:54,792 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:50:54,792 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:50:54,793 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:50:54,793 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:50:54,793 WARN L224 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_95)) (or (= (select |c_#valid| v_idx_98) v_v_32_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_98)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_103) (= (select |c_#memory_int| v_idx_103) 0) (< v_idx_103 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_28_1) (< v_idx_96 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_101)) (or (< v_idx_99 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_99) (= (select |c_#valid| v_idx_99) 1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_102) (= (select |c_#memory_int| v_idx_102) v_v_41_1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_94) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_26_1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_104 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_104) v_v_43_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_97) v_v_2_1) (or (< v_idx_100 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_1 (select |c_#valid| v_idx_100)))))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_34_1 Int) (v_v_45_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_26_1) (<= c_ULTIMATE.start_malloc_ptr v_idx_105)) (or (= v_v_34_1 (select |c_#valid| v_idx_111)) (< v_idx_111 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_107 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_1 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_107))) (or (= 1 (select |c_#valid| v_idx_110)) (< v_idx_110 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_110)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_109) (= v_v_32_1 (select |c_#valid| v_idx_109))) (or (= (select |c_#memory_int| v_idx_113) v_v_44_1) (<= c_ULTIMATE.start_main_p1 v_idx_113)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_114 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_114) v_v_45_1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_114)) (or (< v_idx_106 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_106) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_106) 0)) (= v_v_2_1 (select |c_old(#valid)| v_idx_108)) (or (= v_v_46_1 (select |c_#memory_int| v_idx_115)) (< v_idx_115 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_112))))))} [2019-01-18 14:50:54,793 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:50:54,793 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:50:54,793 WARN L230 ngHoareTripleChecker]: Post: {2147483638#(forall ((v_idx_126 Int) (v_idx_116 Int) (v_idx_124 Int) (v_idx_125 Int) (v_idx_119 Int) (v_idx_117 Int) (v_idx_118 Int) (v_idx_122 Int) (v_idx_123 Int) (v_idx_120 Int) (v_idx_121 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_106_1 Int) (v_v_105_1 Int) (v_v_107_1 Int) (v_v_2_1 Int) (v_v_4_1 Int) (v_v_28_1 Int) (v_v_26_1 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_117) (< v_idx_117 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_117))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_121)) (< v_idx_121 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_121)) (= v_v_4_1 (select |c_old(#memory_int)| v_idx_123)) (or (< v_idx_126 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_107_1 (select |c_#memory_int| v_idx_126))) (<= (+ v_v_106_1 1) 0) (<= (- v_v_106_1 (- v_v_106_1)) (- 2)) (= v_v_2_1 (select |c_old(#valid)| v_idx_119)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_120) (= v_v_32_1 (select |c_#valid| v_idx_120))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_116) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_116) v_v_26_1)) (or (< v_idx_118 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_118) v_v_28_1)) (or (<= c_ULTIMATE.start_main_p1 v_idx_124) (= (select |c_#memory_int| v_idx_124) v_v_105_1)) (or (= v_v_106_1 (select |c_#memory_int| v_idx_125)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_125) (< v_idx_125 c_ULTIMATE.start_main_p1)) (or (= v_v_34_1 (select |c_#valid| v_idx_122)) (< v_idx_122 (+ c_ULTIMATE.start_main_p3 1))))))} [2019-01-18 14:50:54,794 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:50:55,366 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:50:55,366 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:03,872 WARN L181 SmtUtils]: Spent 8.50 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:51:03,872 WARN L270 ngHoareTripleChecker]: Pre: {2147483639#(or (forall ((v_idx_104 Int) (v_idx_102 Int) (v_idx_103 Int) (v_idx_98 Int) (v_idx_99 Int) (v_idx_96 Int) (v_idx_97 Int) (v_idx_94 Int) (v_idx_95 Int) (v_idx_100 Int) (v_idx_101 Int)) (exists ((v_v_34_1 Int) (v_v_32_1 Int) (v_v_43_1 Int) (v_v_41_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_95)) (< v_idx_95 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_95)) (or (= (select |#valid| v_idx_98) v_v_32_1) (<= ULTIMATE.start_malloc_ptr v_idx_98)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_103) (= (select |#memory_int| v_idx_103) 0) (< v_idx_103 ULTIMATE.start_malloc_ptr)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_96) v_v_28_1) (< v_idx_96 (+ ULTIMATE.start_main_p3 1))) (= v_v_4_1 (select |old(#memory_int)| v_idx_101)) (or (< v_idx_99 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_99) (= (select |#valid| v_idx_99) 1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_102) (= (select |#memory_int| v_idx_102) v_v_41_1)) (or (<= ULTIMATE.start_malloc_ptr v_idx_94) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_94) v_v_26_1)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_104 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_104) v_v_43_1)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_97) v_v_2_1) (or (< v_idx_100 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_1 (select |#valid| v_idx_100)))))) (forall ((v_idx_115 Int) (v_idx_105 Int) (v_idx_113 Int) (v_idx_114 Int) (v_idx_108 Int) (v_idx_109 Int) (v_idx_106 Int) (v_idx_107 Int) (v_idx_111 Int) (v_idx_112 Int) (v_idx_110 Int)) (exists ((v_v_46_1 Int) (v_v_34_1 Int) (v_v_45_1 Int) (v_v_44_1 Int) (v_v_32_1 Int) (v_v_2_1 Int) (v_v_28_1 Int) (v_v_4_1 Int) (v_v_26_1 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_105) v_v_26_1) (<= ULTIMATE.start_malloc_ptr v_idx_105)) (or (= v_v_34_1 (select |#valid| v_idx_111)) (< v_idx_111 (+ ULTIMATE.start_main_p3 1))) (or (< v_idx_107 (+ ULTIMATE.start_main_p3 1)) (= v_v_28_1 (select |ULTIMATE.start_malloc_old_#valid| v_idx_107))) (or (= 1 (select |#valid| v_idx_110)) (< v_idx_110 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_110)) (or (<= ULTIMATE.start_malloc_ptr v_idx_109) (= v_v_32_1 (select |#valid| v_idx_109))) (or (= (select |#memory_int| v_idx_113) v_v_44_1) (<= ULTIMATE.start_main_p1 v_idx_113)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_114 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_114) v_v_45_1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_114)) (or (< v_idx_106 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_106) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_106) 0)) (= v_v_2_1 (select |old(#valid)| v_idx_108)) (or (= v_v_46_1 (select |#memory_int| v_idx_115)) (< v_idx_115 (+ ULTIMATE.start_main_p1 1))) (= v_v_4_1 (select |old(#memory_int)| v_idx_112))))))} [2019-01-18 14:51:03,872 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:03,872 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:04,054 WARN L276 ngHoareTripleChecker]: Post: {2147483638#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (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_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_121))) (forall ((v_prenex_2 Int)) (or (<= (+ (* 2 (select |#memory_int| v_prenex_2)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))) (forall ((v_idx_117 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_117) (< v_idx_117 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_117)))))} [2019-01-18 14:51:04,383 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:51:04,384 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:51:04,389 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:04,391 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:51:04,391 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:04,391 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:51:04,410 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:04,410 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:51:04,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:04,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:04,463 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:51:04,594 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:04,599 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-18 14:51:04,642 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:04,643 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:04,644 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-18 14:51:04,646 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,652 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,665 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:51:04,672 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-18 14:51:04,682 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-18 14:51:04,684 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,696 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,704 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,768 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 2 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:51:04,769 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:32, output treesize:28 [2019-01-18 14:51:04,774 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:51:04,775 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_17|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3, |v_#valid_5|]. (let ((.cse0 (store |v_#valid_5| ULTIMATE.start_main_p1 1))) (and (= 0 (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3)) (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (store (store (store |v_#memory_int_17| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|))) [2019-01-18 14:51:04,775 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:51:04,835 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:04,836 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-18 14:51:04,839 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:04,855 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:51:04,856 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-18 14:51:04,860 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:51:04,861 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_18|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_18| ULTIMATE.start_main_p1))) (and (= |#memory_int| (store |v_#memory_int_18| ULTIMATE.start_main_p1 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_18| ULTIMATE.start_main_p3) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_18| ULTIMATE.start_main_p2) 0))) [2019-01-18 14:51:04,861 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:51:04,898 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {129#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:51:04,900 INFO L273 TraceCheckUtils]: 1: Hoare triple {129#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {133#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-18 14:51:04,901 INFO L273 TraceCheckUtils]: 2: Hoare triple {133#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-18 14:51:04,902 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:04,902 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:51:04,914 INFO L273 TraceCheckUtils]: 2: Hoare triple {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {123#false} is VALID [2019-01-18 14:51:04,924 INFO L273 TraceCheckUtils]: 1: Hoare triple {140#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {125#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:51:04,926 INFO L273 TraceCheckUtils]: 0: Hoare triple {122#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {140#(<= 0 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1))} is VALID [2019-01-18 14:51:04,926 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:51:04,945 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:51:04,945 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 5 [2019-01-18 14:51:04,945 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:51:04,945 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:51:04,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:51:04,946 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:51:04,956 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:51:04,956 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:51:04,956 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:51:04,957 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:51:04,957 INFO L87 Difference]: Start difference. First operand 9 states and 14 transitions. Second operand 4 states. [2019-01-18 14:51:05,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:05,047 INFO L93 Difference]: Finished difference Result 13 states and 24 transitions. [2019-01-18 14:51:05,047 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:51:05,048 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-18 14:51:05,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:51:05,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:51:05,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 19 transitions. [2019-01-18 14:51:05,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:51:05,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 19 transitions. [2019-01-18 14:51:05,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 19 transitions. [2019-01-18 14:51:05,088 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:05,089 INFO L225 Difference]: With dead ends: 13 [2019-01-18 14:51:05,089 INFO L226 Difference]: Without dead ends: 12 [2019-01-18 14:51:05,089 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=19, Invalid=23, Unknown=0, NotChecked=0, Total=42 [2019-01-18 14:51:05,090 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-18 14:51:05,098 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 11. [2019-01-18 14:51:05,099 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:51:05,099 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 11 states. [2019-01-18 14:51:05,099 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 11 states. [2019-01-18 14:51:05,099 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 11 states. [2019-01-18 14:51:05,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:05,101 INFO L93 Difference]: Finished difference Result 12 states and 23 transitions. [2019-01-18 14:51:05,101 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 23 transitions. [2019-01-18 14:51:05,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:05,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:05,102 INFO L74 IsIncluded]: Start isIncluded. First operand 11 states. Second operand 12 states. [2019-01-18 14:51:05,102 INFO L87 Difference]: Start difference. First operand 11 states. Second operand 12 states. [2019-01-18 14:51:05,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:05,103 INFO L93 Difference]: Finished difference Result 12 states and 23 transitions. [2019-01-18 14:51:05,103 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 23 transitions. [2019-01-18 14:51:05,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:05,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:05,104 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:51:05,104 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:51:05,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-01-18 14:51:05,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 23 transitions. [2019-01-18 14:51:05,106 INFO L78 Accepts]: Start accepts. Automaton has 11 states and 23 transitions. Word has length 3 [2019-01-18 14:51:05,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:51:05,106 INFO L480 AbstractCegarLoop]: Abstraction has 11 states and 23 transitions. [2019-01-18 14:51:05,107 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:51:05,107 INFO L276 IsEmpty]: Start isEmpty. Operand 11 states and 23 transitions. [2019-01-18 14:51:05,107 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-18 14:51:05,107 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:05,107 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-18 14:51:05,108 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:05,108 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:05,108 INFO L82 PathProgramCache]: Analyzing trace with hash 30116, now seen corresponding path program 1 times [2019-01-18 14:51:05,109 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:05,109 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:05,110 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:05,110 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:05,110 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:05,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:05,202 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {201#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:51:05,203 INFO L273 TraceCheckUtils]: 1: Hoare triple {201#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {202#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-18 14:51:05,204 INFO L273 TraceCheckUtils]: 2: Hoare triple {202#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {200#false} is VALID [2019-01-18 14:51:05,205 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:05,205 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:05,205 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:51:05,205 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-18 14:51:05,205 INFO L207 CegarAbsIntRunner]: [0], [10], [15] [2019-01-18 14:51:05,209 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:51:05,209 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:51:07,767 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:07,767 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:07,768 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:07,768 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:07,768 WARN L224 ngHoareTripleChecker]: Pre: {2147483635#(forall ((v_idx_148 Int) (v_idx_149 Int) (v_idx_146 Int) (v_idx_147 Int) (v_idx_151 Int) (v_idx_152 Int) (v_idx_150 Int) (v_idx_144 Int) (v_idx_145 Int) (v_idx_153 Int) (v_idx_143 Int)) (exists ((v_v_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_149 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |c_#valid| v_idx_149))) (or (< v_idx_153 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_153) v_v_43_2)) (or (= v_v_32_2 (select |c_#valid| v_idx_147)) (<= c_ULTIMATE.start_malloc_ptr v_idx_147)) (or (< v_idx_145 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_145) v_v_28_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_146)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_143) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_143) v_v_26_2)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_148) (= 1 (select |c_#valid| v_idx_148)) (< v_idx_148 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_151) (= (select |c_#memory_int| v_idx_151) v_v_41_2)) (<= (- c_ULTIMATE.start_main_p3 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_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_144) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_144))) (or (< v_idx_152 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_152) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_152)))))} [2019-01-18 14:51:07,768 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:07,768 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:51:07,769 WARN L230 ngHoareTripleChecker]: Post: {2147483634#(forall ((v_idx_159 Int) (v_idx_157 Int) (v_idx_158 Int) (v_idx_162 Int) (v_idx_163 Int) (v_idx_160 Int) (v_idx_161 Int) (v_idx_155 Int) (v_idx_156 Int) (v_idx_164 Int) (v_idx_154 Int)) (exists ((v_v_46_2 Int) (v_v_45_2 Int) (v_v_34_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_154) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_154)) (or (< v_idx_163 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_163) v_v_45_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_163)) (or (= (select |c_#memory_int| v_idx_164) v_v_46_2) (< v_idx_164 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_155 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_155)) (or (= 1 (select |c_#valid| v_idx_159)) (< v_idx_159 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_159)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_34_2 (select |c_#valid| v_idx_160)) (< v_idx_160 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_156 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_156))) (or (<= c_ULTIMATE.start_main_p2 v_idx_162) (= (select |c_#memory_int| v_idx_162) v_v_44_2)) (or (= v_v_32_2 (select |c_#valid| v_idx_158)) (<= c_ULTIMATE.start_malloc_ptr v_idx_158)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_161)) (= v_v_2_2 (select |c_old(#valid)| v_idx_157)))))} [2019-01-18 14:51:07,769 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:08,257 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:08,258 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:08,451 WARN L270 ngHoareTripleChecker]: Pre: {2147483635#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_152 Int)) (or (< v_idx_152 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_152) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_152))) (forall ((v_idx_148 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_148) (= 1 (select |#valid| v_idx_148)) (< v_idx_148 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_144 Int)) (or (< v_idx_144 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_144) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_144)))))} [2019-01-18 14:51:08,451 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:08,452 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:51:08,476 WARN L276 ngHoareTripleChecker]: Post: {2147483634#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_155 Int)) (or (< v_idx_155 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_155) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_155))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_159 Int)) (or (= 1 (select |#valid| v_idx_159)) (< v_idx_159 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_159))))} [2019-01-18 14:51:11,165 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:11,165 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:11,165 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:11,166 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:11,166 WARN L224 ngHoareTripleChecker]: Pre: {2147483633#(forall ((v_idx_168 Int) (v_idx_169 Int) (v_idx_170 Int) (v_idx_173 Int) (v_idx_174 Int) (v_idx_171 Int) (v_idx_172 Int) (v_idx_166 Int) (v_idx_167 Int) (v_idx_175 Int) (v_idx_165 Int)) (exists ((v_v_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (= v_v_2_2 (select |c_old(#valid)| v_idx_168)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_175 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_175) v_v_43_2)) (or (< v_idx_171 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |c_#valid| v_idx_171))) (or (< v_idx_166 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_166)) (or (= v_v_32_2 (select |c_#valid| v_idx_169)) (<= c_ULTIMATE.start_malloc_ptr v_idx_169)) (or (= 1 (select |c_#valid| v_idx_170)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_170) (< v_idx_170 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_173) v_v_41_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_173)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_165) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_165)) (or (= v_v_28_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_167)) (< v_idx_167 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_174) (= (select |c_#memory_int| v_idx_174) 0) (< v_idx_174 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_172)))))} [2019-01-18 14:51:11,166 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:11,166 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:11,166 WARN L230 ngHoareTripleChecker]: Post: {2147483632#(forall ((v_idx_179 Int) (v_idx_180 Int) (v_idx_181 Int) (v_idx_184 Int) (v_idx_185 Int) (v_idx_182 Int) (v_idx_183 Int) (v_idx_177 Int) (v_idx_178 Int) (v_idx_186 Int) (v_idx_176 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_60_2 Int) (v_v_2_2 Int) (v_v_58_2 Int) (v_v_59_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_60_2 (select |c_#memory_int| v_idx_186)) (< v_idx_186 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_26_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_176)) (<= c_ULTIMATE.start_malloc_ptr v_idx_176)) (or (<= c_ULTIMATE.start_main_p1 v_idx_184) (= (select |c_#memory_int| v_idx_184) v_v_58_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_179)) (or (< v_idx_182 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |c_#valid| v_idx_182))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- v_v_59_2 (- v_v_59_2)) (- 2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_183)) (or (= 1 (select |c_#valid| v_idx_181)) (< v_idx_181 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_181)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_177) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_177) 0) (< v_idx_177 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_32_2 (select |c_#valid| v_idx_180)) (<= c_ULTIMATE.start_malloc_ptr v_idx_180)) (<= (+ v_v_59_2 1) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_185) (< v_idx_185 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_185) v_v_59_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_178) v_v_28_2) (< v_idx_178 (+ c_ULTIMATE.start_main_p3 1))))))} [2019-01-18 14:51:11,166 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:11,748 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:11,748 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:11,894 WARN L270 ngHoareTripleChecker]: Pre: {2147483633#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_166 Int)) (or (< v_idx_166 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_166) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_166))) (forall ((v_idx_170 Int)) (or (= 1 (select |#valid| v_idx_170)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_170) (< v_idx_170 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_174 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_174) (= (select |#memory_int| v_idx_174) 0) (< v_idx_174 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:51:11,894 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:11,895 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:11,936 WARN L276 ngHoareTripleChecker]: Post: {2147483632#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_177 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_177) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_177) 0) (< v_idx_177 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_3 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (< v_prenex_3 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_prenex_3)) 2) 0))) (forall ((v_idx_185 Int)) (or (<= (+ (select |#memory_int| v_idx_185) 1) 0) (< v_idx_185 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_185))) (forall ((v_idx_181 Int)) (or (= 1 (select |#valid| v_idx_181)) (< v_idx_181 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_181))))} [2019-01-18 14:51:14,870 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:14,871 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:14,871 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:14,871 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:14,871 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_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_34_2 (select |c_#valid| v_idx_193)) (< v_idx_193 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_2 (select |c_old(#valid)| v_idx_190)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_195) (= (select |c_#memory_int| v_idx_195) v_v_41_2)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_196) (< v_idx_196 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_196))) (= (select |c_old(#memory_int)| v_idx_194) v_v_4_2) (or (= v_v_28_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (< v_idx_188 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_188)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_192 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_192)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_192)) (or (= v_v_32_2 (select |c_#valid| v_idx_191)) (<= c_ULTIMATE.start_malloc_ptr v_idx_191)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_197 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_197) v_v_43_2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr 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_46_2 Int) (v_v_45_2 Int) (v_v_34_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_199 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_199)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_199)) (or (< v_idx_203 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_203) (= 1 (select |c_#valid| v_idx_203))) (or (<= c_ULTIMATE.start_main_p2 v_idx_206) (= (select |c_#memory_int| v_idx_206) v_v_44_2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_198) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_26_2)) (or (< v_idx_207 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_207) v_v_45_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_207)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_28_2) (< v_idx_200 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_208 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_208) v_v_46_2)) (or (= v_v_34_2 (select |c_#valid| v_idx_204)) (< v_idx_204 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_205)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_202) (= v_v_32_2 (select |c_#valid| v_idx_202))) (= v_v_2_2 (select |c_old(#valid)| v_idx_201))))))} [2019-01-18 14:51:14,872 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:14,872 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:51:14,872 WARN L230 ngHoareTripleChecker]: Post: {2147483630#(forall ((v_idx_214 Int) (v_idx_215 Int) (v_idx_212 Int) (v_idx_213 Int) (v_idx_218 Int) (v_idx_219 Int) (v_idx_216 Int) (v_idx_217 Int) (v_idx_209 Int) (v_idx_210 Int) (v_idx_211 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_61_2 Int) (v_v_62_2 Int) (v_v_63_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_209) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_209)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_211) v_v_28_2) (< v_idx_211 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_34_2 (select |c_#valid| v_idx_215)) (< v_idx_215 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_218 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_218) v_v_62_2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_218)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= v_v_32_2 (select |c_#valid| v_idx_213)) (<= c_ULTIMATE.start_malloc_ptr v_idx_213)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_216)) (= (select |c_old(#valid)| v_idx_212) v_v_2_2) (or (= (select |c_#memory_int| v_idx_217) v_v_61_2) (<= c_ULTIMATE.start_main_p2 v_idx_217)) (or (= (select |c_#memory_int| v_idx_219) v_v_63_2) (< v_idx_219 (+ c_ULTIMATE.start_main_p2 1))) (or (= 1 (select |c_#valid| v_idx_214)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_214) (< v_idx_214 c_ULTIMATE.start_malloc_ptr)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_210) (< v_idx_210 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_210) 0)))))} [2019-01-18 14:51:14,873 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:15,420 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:15,420 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:23,687 WARN L181 SmtUtils]: Spent 8.27 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:51:23,688 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_34_2 Int) (v_v_32_2 Int) (v_v_43_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= v_v_34_2 (select |#valid| v_idx_193)) (< v_idx_193 (+ ULTIMATE.start_main_p3 1))) (= v_v_2_2 (select |old(#valid)| v_idx_190)) (or (<= ULTIMATE.start_malloc_ptr v_idx_195) (= (select |#memory_int| v_idx_195) v_v_41_2)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_196) (< v_idx_196 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_196))) (= (select |old(#memory_int)| v_idx_194) v_v_4_2) (or (= v_v_28_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 (+ ULTIMATE.start_main_p3 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_188) 0) (< v_idx_188 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_188)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_192 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_192)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_192)) (or (= v_v_32_2 (select |#valid| v_idx_191)) (<= ULTIMATE.start_malloc_ptr v_idx_191)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_197 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_197) v_v_43_2)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_187) v_v_26_2) (<= ULTIMATE.start_malloc_ptr 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_46_2 Int) (v_v_45_2 Int) (v_v_34_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_199 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_199)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_199)) (or (< v_idx_203 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_203) (= 1 (select |#valid| v_idx_203))) (or (<= ULTIMATE.start_main_p2 v_idx_206) (= (select |#memory_int| v_idx_206) v_v_44_2)) (or (<= ULTIMATE.start_malloc_ptr v_idx_198) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_198) v_v_26_2)) (or (< v_idx_207 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_207) v_v_45_2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_207)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_200) v_v_28_2) (< v_idx_200 (+ ULTIMATE.start_main_p3 1))) (or (< v_idx_208 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_208) v_v_46_2)) (or (= v_v_34_2 (select |#valid| v_idx_204)) (< v_idx_204 (+ ULTIMATE.start_main_p3 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_2 (select |old(#memory_int)| v_idx_205)) (or (<= ULTIMATE.start_malloc_ptr v_idx_202) (= v_v_32_2 (select |#valid| v_idx_202))) (= v_v_2_2 (select |old(#valid)| v_idx_201))))))} [2019-01-18 14:51:23,688 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:51:23,688 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:51:23,880 WARN L276 ngHoareTripleChecker]: Post: {2147483630#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_210 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_210) (< v_idx_210 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_210) 0))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_214 Int)) (or (= 1 (select |#valid| v_idx_214)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_214) (< v_idx_214 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:51:27,659 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:27,659 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:27,659 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:27,659 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:27,660 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_46_2 Int) (v_v_34_2 Int) (v_v_45_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_231)) (or (= v_v_34_2 (select |c_#valid| v_idx_237)) (< v_idx_237 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_233 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_28_2)) (= v_v_2_2 (select |c_old(#valid)| v_idx_234)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_241 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_241) v_v_46_2)) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_238)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_235) (= v_v_32_2 (select |c_#valid| v_idx_235))) (or (= (select |c_#memory_int| v_idx_239) v_v_44_2) (<= c_ULTIMATE.start_main_p2 v_idx_239)) (or (< v_idx_236 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_236)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_236)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_232)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_240) (< v_idx_240 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_240) v_v_45_2))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_225 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_225)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_225)) (= (select |c_old(#valid)| v_idx_223) v_v_2_2) (or (< v_idx_226 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |c_#valid| v_idx_226))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_221) (< v_idx_221 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_221) 0)) (or (< v_idx_229 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_229) (= 0 (select |c_#memory_int| v_idx_229))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_222 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_28_2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_227)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_2 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_220)) (<= c_ULTIMATE.start_malloc_ptr v_idx_220)) (or (= (select |c_#memory_int| v_idx_228) v_v_41_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_228)) (or (= (select |c_#memory_int| v_idx_230) v_v_43_2) (< v_idx_230 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_224) (= v_v_32_2 (select |c_#valid| v_idx_224)))))))} [2019-01-18 14:51:27,660 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:27,660 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:27,660 WARN L230 ngHoareTripleChecker]: Post: {2147483628#(forall ((v_idx_247 Int) (v_idx_248 Int) (v_idx_245 Int) (v_idx_246 Int) (v_idx_249 Int) (v_idx_250 Int) (v_idx_251 Int) (v_idx_243 Int) (v_idx_244 Int) (v_idx_252 Int) (v_idx_242 Int)) (exists ((v_v_34_2 Int) (v_v_32_2 Int) (v_v_105_2 Int) (v_v_107_2 Int) (v_v_106_2 Int) (v_v_2_2 Int) (v_v_4_2 Int) (v_v_28_2 Int) (v_v_26_2 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_2 (select |c_old(#memory_int)| v_idx_249)) (<= (- v_v_106_2 (- v_v_106_2)) (- 2)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_251) (< v_idx_251 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_251) v_v_106_2)) (or (= v_v_107_2 (select |c_#memory_int| v_idx_252)) (< v_idx_252 (+ c_ULTIMATE.start_main_p1 1))) (or (< v_idx_243 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_243) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_243))) (or (= v_v_105_2 (select |c_#memory_int| v_idx_250)) (<= c_ULTIMATE.start_main_p1 v_idx_250)) (<= (+ v_v_106_2 1) 0) (= (select |c_old(#valid)| v_idx_245) v_v_2_2) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_242) v_v_26_2) (<= c_ULTIMATE.start_malloc_ptr v_idx_242)) (or (= v_v_32_2 (select |c_#valid| v_idx_246)) (<= c_ULTIMATE.start_malloc_ptr v_idx_246)) (or (< v_idx_244 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_244) v_v_28_2)) (or (< v_idx_248 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |c_#valid| v_idx_248))) (or (< v_idx_247 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_247)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_247)))))} [2019-01-18 14:51:27,660 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:28,487 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:28,488 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:36,805 WARN L181 SmtUtils]: Spent 8.32 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:51:36,806 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_46_2 Int) (v_v_34_2 Int) (v_v_45_2 Int) (v_v_44_2 Int) (v_v_32_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_231) v_v_26_2) (<= ULTIMATE.start_malloc_ptr v_idx_231)) (or (= v_v_34_2 (select |#valid| v_idx_237)) (< v_idx_237 (+ ULTIMATE.start_main_p3 1))) (or (< v_idx_233 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_233) v_v_28_2)) (= v_v_2_2 (select |old(#valid)| v_idx_234)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_241 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_241) v_v_46_2)) (= v_v_4_2 (select |old(#memory_int)| v_idx_238)) (or (<= ULTIMATE.start_malloc_ptr v_idx_235) (= v_v_32_2 (select |#valid| v_idx_235))) (or (= (select |#memory_int| v_idx_239) v_v_44_2) (<= ULTIMATE.start_main_p2 v_idx_239)) (or (< v_idx_236 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_236)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_236)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_232) 0) (< v_idx_232 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_232)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_240) (< v_idx_240 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_240) v_v_45_2))))) (forall ((v_idx_225 Int) (v_idx_226 Int) (v_idx_223 Int) (v_idx_224 Int) (v_idx_229 Int) (v_idx_227 Int) (v_idx_228 Int) (v_idx_221 Int) (v_idx_222 Int) (v_idx_230 Int) (v_idx_220 Int)) (exists ((v_v_34_2 Int) (v_v_43_2 Int) (v_v_32_2 Int) (v_v_41_2 Int) (v_v_2_2 Int) (v_v_28_2 Int) (v_v_4_2 Int) (v_v_26_2 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_225 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_225)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_225)) (= (select |old(#valid)| v_idx_223) v_v_2_2) (or (< v_idx_226 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_2 (select |#valid| v_idx_226))) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_221) (< v_idx_221 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_221) 0)) (or (< v_idx_229 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_229) (= 0 (select |#memory_int| v_idx_229))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_222 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_222) v_v_28_2)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= v_v_4_2 (select |old(#memory_int)| v_idx_227)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_2 (select |ULTIMATE.start_malloc_old_#valid| v_idx_220)) (<= ULTIMATE.start_malloc_ptr v_idx_220)) (or (= (select |#memory_int| v_idx_228) v_v_41_2) (<= ULTIMATE.start_malloc_ptr v_idx_228)) (or (= (select |#memory_int| v_idx_230) v_v_43_2) (< v_idx_230 (+ ULTIMATE.start_main_p3 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_224) (= v_v_32_2 (select |#valid| v_idx_224)))))))} [2019-01-18 14:51:36,806 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:51:36,806 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:51:36,982 WARN L276 ngHoareTripleChecker]: Post: {2147483628#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_4 Int)) (or (<= (+ (select |#memory_int| v_prenex_4) 1) 0) (< v_prenex_4 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (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_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_247 Int)) (or (< v_idx_247 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_247)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_247))) (forall ((v_idx_243 Int)) (or (< v_idx_243 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_243) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_243)))))} [2019-01-18 14:51:37,122 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:51:37,122 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:51:37,123 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:37,123 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:51:37,123 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:37,123 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:51:37,133 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:37,133 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:51:37,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:37,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:37,140 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:51:37,189 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:37,190 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-18 14:51:37,229 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:37,230 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:37,232 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-18 14:51:37,234 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,239 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,252 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:51:37,262 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-18 14:51:37,271 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-18 14:51:37,274 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,285 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,301 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,317 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:51:37,318 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-18 14:51:37,324 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:51:37,324 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_20|, ULTIMATE.start_main_p3, |v_#valid_6|]. (let ((.cse0 (store |v_#valid_6| ULTIMATE.start_main_p1 1))) (and (= (store (store (store |v_#memory_int_20| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0) (= 0 (select .cse0 ULTIMATE.start_main_p2)))) [2019-01-18 14:51:37,324 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:51:37,374 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:51:37,375 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 34 [2019-01-18 14:51:37,379 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:51:37,451 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:51:37,452 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-18 14:51:39,459 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:51:39,460 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_21|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_21| ULTIMATE.start_main_p2))) (and (= (select |v_#memory_int_21| ULTIMATE.start_main_p1) 0) (= (store |v_#memory_int_21| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= .cse0 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_21| ULTIMATE.start_main_p3) 0))) [2019-01-18 14:51:39,460 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-01-18 14:51:39,550 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {206#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:51:39,552 INFO L273 TraceCheckUtils]: 1: Hoare triple {206#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {210#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:51:39,555 INFO L273 TraceCheckUtils]: 2: Hoare triple {210#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {200#false} is VALID [2019-01-18 14:51:39,555 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:39,556 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:51:39,593 INFO L273 TraceCheckUtils]: 2: Hoare triple {214#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {200#false} is VALID [2019-01-18 14:51:39,594 INFO L273 TraceCheckUtils]: 1: Hoare triple {218#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {214#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:51:39,595 INFO L273 TraceCheckUtils]: 0: Hoare triple {199#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {218#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:51:39,595 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:39,615 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:51:39,615 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:51:39,615 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:51:39,616 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:51:39,616 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:51:39,616 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:51:39,633 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:51:39,633 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:51:39,633 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:51:39,633 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:51:39,634 INFO L87 Difference]: Start difference. First operand 11 states and 23 transitions. Second operand 6 states. [2019-01-18 14:51:40,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,109 INFO L93 Difference]: Finished difference Result 24 states and 40 transitions. [2019-01-18 14:51:40,110 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:51:40,110 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 3 [2019-01-18 14:51:40,110 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:51:40,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:51:40,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2019-01-18 14:51:40,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:51:40,112 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2019-01-18 14:51:40,112 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 31 transitions. [2019-01-18 14:51:40,158 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:40,160 INFO L225 Difference]: With dead ends: 24 [2019-01-18 14:51:40,160 INFO L226 Difference]: Without dead ends: 23 [2019-01-18 14:51:40,161 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:51:40,161 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2019-01-18 14:51:40,173 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 13. [2019-01-18 14:51:40,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:51:40,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand 13 states. [2019-01-18 14:51:40,174 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 13 states. [2019-01-18 14:51:40,174 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 13 states. [2019-01-18 14:51:40,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,177 INFO L93 Difference]: Finished difference Result 23 states and 38 transitions. [2019-01-18 14:51:40,177 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 38 transitions. [2019-01-18 14:51:40,178 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:40,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:40,178 INFO L74 IsIncluded]: Start isIncluded. First operand 13 states. Second operand 23 states. [2019-01-18 14:51:40,178 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 23 states. [2019-01-18 14:51:40,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,180 INFO L93 Difference]: Finished difference Result 23 states and 38 transitions. [2019-01-18 14:51:40,180 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 38 transitions. [2019-01-18 14:51:40,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:40,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:40,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:51:40,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:51:40,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-01-18 14:51:40,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 31 transitions. [2019-01-18 14:51:40,183 INFO L78 Accepts]: Start accepts. Automaton has 13 states and 31 transitions. Word has length 3 [2019-01-18 14:51:40,183 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:51:40,183 INFO L480 AbstractCegarLoop]: Abstraction has 13 states and 31 transitions. [2019-01-18 14:51:40,183 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:51:40,183 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states and 31 transitions. [2019-01-18 14:51:40,184 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:51:40,184 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:40,184 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:51:40,184 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:40,185 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:40,185 INFO L82 PathProgramCache]: Analyzing trace with hash 939474, now seen corresponding path program 1 times [2019-01-18 14:51:40,185 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:40,186 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,186 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:40,186 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,186 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:40,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:40,230 INFO L273 TraceCheckUtils]: 0: Hoare triple {318#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-18 14:51:40,231 INFO L273 TraceCheckUtils]: 1: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume #memory_int[main_p1] >= 0; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-18 14:51:40,232 INFO L273 TraceCheckUtils]: 2: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume #memory_int[main_p2] <= 0; {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} is VALID [2019-01-18 14:51:40,232 INFO L273 TraceCheckUtils]: 3: Hoare triple {320#(= (select |#memory_int| ULTIMATE.start_main_p3) 0)} assume !(#memory_int[main_p3] >= 0); {319#false} is VALID [2019-01-18 14:51:40,233 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:40,233 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-18 14:51:40,233 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-18 14:51:40,233 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:51:40,233 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-01-18 14:51:40,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:51:40,234 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-18 14:51:40,239 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:51:40,239 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-18 14:51:40,239 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-18 14:51:40,239 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:51:40,240 INFO L87 Difference]: Start difference. First operand 13 states and 31 transitions. Second operand 3 states. [2019-01-18 14:51:40,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,297 INFO L93 Difference]: Finished difference Result 15 states and 32 transitions. [2019-01-18 14:51:40,297 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-18 14:51:40,298 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-01-18 14:51:40,298 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:51:40,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:40,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-18 14:51:40,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-18 14:51:40,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-18 14:51:40,300 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 15 transitions. [2019-01-18 14:51:40,364 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:51:40,365 INFO L225 Difference]: With dead ends: 15 [2019-01-18 14:51:40,365 INFO L226 Difference]: Without dead ends: 12 [2019-01-18 14:51:40,365 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-18 14:51:40,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12 states. [2019-01-18 14:51:40,404 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 12 to 12. [2019-01-18 14:51:40,404 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:51:40,405 INFO L82 GeneralOperation]: Start isEquivalent. First operand 12 states. Second operand 12 states. [2019-01-18 14:51:40,405 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 12 states. [2019-01-18 14:51:40,405 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 12 states. [2019-01-18 14:51:40,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,407 INFO L93 Difference]: Finished difference Result 12 states and 29 transitions. [2019-01-18 14:51:40,407 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-18 14:51:40,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:40,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:40,408 INFO L74 IsIncluded]: Start isIncluded. First operand 12 states. Second operand 12 states. [2019-01-18 14:51:40,408 INFO L87 Difference]: Start difference. First operand 12 states. Second operand 12 states. [2019-01-18 14:51:40,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:51:40,409 INFO L93 Difference]: Finished difference Result 12 states and 29 transitions. [2019-01-18 14:51:40,409 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-18 14:51:40,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:51:40,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:51:40,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:51:40,410 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:51:40,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-01-18 14:51:40,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 29 transitions. [2019-01-18 14:51:40,411 INFO L78 Accepts]: Start accepts. Automaton has 12 states and 29 transitions. Word has length 4 [2019-01-18 14:51:40,411 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:51:40,411 INFO L480 AbstractCegarLoop]: Abstraction has 12 states and 29 transitions. [2019-01-18 14:51:40,411 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-18 14:51:40,411 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 29 transitions. [2019-01-18 14:51:40,412 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:51:40,412 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:51:40,412 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:51:40,412 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:51:40,412 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:51:40,413 INFO L82 PathProgramCache]: Analyzing trace with hash 929800, now seen corresponding path program 1 times [2019-01-18 14:51:40,413 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:51:40,413 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,414 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:51:40,414 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:51:40,414 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:51:40,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:51:40,498 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {388#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:51:40,499 INFO L273 TraceCheckUtils]: 1: Hoare triple {388#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:51:40,508 INFO L273 TraceCheckUtils]: 2: Hoare triple {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:51:40,509 INFO L273 TraceCheckUtils]: 3: Hoare triple {389#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-18 14:51:40,509 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:51:40,509 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:51:40,509 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:51:40,509 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:51:40,509 INFO L207 CegarAbsIntRunner]: [0], [6], [16], [17] [2019-01-18 14:51:40,511 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:51:40,511 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:51:42,881 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:42,882 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:42,882 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:42,882 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:42,883 WARN L224 ngHoareTripleChecker]: Pre: {2147483625#(forall ((v_idx_269 Int) (v_idx_278 Int) (v_idx_279 Int) (v_idx_272 Int) (v_idx_273 Int) (v_idx_270 Int) (v_idx_271 Int) (v_idx_276 Int) (v_idx_277 Int) (v_idx_274 Int) (v_idx_275 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_269) v_v_26_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_269)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_270)) (< v_idx_270 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_270)) (= (select |c_old(#valid)| v_idx_272) v_v_2_3) (or (< v_idx_274 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_274)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_274)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_276)) (or (= v_v_34_3 (select |c_#valid| v_idx_275)) (< v_idx_275 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_277) (= (select |c_#memory_int| v_idx_277) v_v_41_3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_271 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_271))) (or (< v_idx_278 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_278) (= 0 (select |c_#memory_int| v_idx_278))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_273) (= v_v_32_3 (select |c_#valid| v_idx_273))) (or (< v_idx_279 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_279) v_v_43_3)))))} [2019-01-18 14:51:42,883 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:51:42,883 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:51:42,883 WARN L230 ngHoareTripleChecker]: Post: {2147483624#(forall ((v_idx_289 Int) (v_idx_290 Int) (v_idx_280 Int) (v_idx_283 Int) (v_idx_284 Int) (v_idx_281 Int) (v_idx_282 Int) (v_idx_287 Int) (v_idx_288 Int) (v_idx_285 Int) (v_idx_286 Int)) (exists ((v_v_45_3 Int) (v_v_34_3 Int) (v_v_44_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_288) v_v_44_3) (<= c_ULTIMATE.start_main_p1 v_idx_288)) (<= (- (- v_v_45_3) v_v_45_3) 0) (or (< v_idx_290 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_290) v_v_46_3)) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_280)) (<= c_ULTIMATE.start_malloc_ptr v_idx_280)) (or (= v_v_34_3 (select |c_#valid| v_idx_286)) (< v_idx_286 (+ c_ULTIMATE.start_main_p3 1))) (<= 0 v_v_45_3) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_285) (< v_idx_285 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_285))) (or (< v_idx_289 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_289) v_v_45_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_289)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_287)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_3 (select |c_old(#valid)| v_idx_283)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_284) (= v_v_32_3 (select |c_#valid| v_idx_284))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_282) v_v_28_3) (< v_idx_282 (+ c_ULTIMATE.start_main_p3 1))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_281) (< v_idx_281 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-18 14:51:42,883 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:43,218 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:43,218 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:43,378 WARN L270 ngHoareTripleChecker]: Pre: {2147483625#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_274 Int)) (or (< v_idx_274 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_274)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_274))) (forall ((v_idx_278 Int)) (or (< v_idx_278 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_278) (= 0 (select |#memory_int| v_idx_278)))) (forall ((v_idx_270 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_270)) (< v_idx_270 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_270))))} [2019-01-18 14:51:43,378 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:51:43,379 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:51:43,421 WARN L276 ngHoareTripleChecker]: Post: {2147483624#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_289 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_289))) (< v_idx_289 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_289))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_281 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_281)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_281) (< v_idx_281 ULTIMATE.start_malloc_ptr))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_5 Int)) (or (<= 0 (select |#memory_int| v_prenex_5)) (< v_prenex_5 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_5))) (forall ((v_idx_285 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_285) (< v_idx_285 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_285)))))} [2019-01-18 14:51:45,555 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:45,555 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:45,555 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:45,555 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:45,556 WARN L224 ngHoareTripleChecker]: Pre: {2147483623#(forall ((v_idx_300 Int) (v_idx_301 Int) (v_idx_291 Int) (v_idx_294 Int) (v_idx_295 Int) (v_idx_292 Int) (v_idx_293 Int) (v_idx_298 Int) (v_idx_299 Int) (v_idx_296 Int) (v_idx_297 Int)) (exists ((v_v_34_3 Int) (v_v_43_3 Int) (v_v_32_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#valid)| v_idx_294) v_v_2_3) (or (< v_idx_297 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_297))) (or (< v_idx_292 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_292)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_300) (= (select |c_#memory_int| v_idx_300) 0) (< v_idx_300 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_299) (= (select |c_#memory_int| v_idx_299) v_v_41_3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_301) v_v_43_3) (< v_idx_301 (+ c_ULTIMATE.start_main_p3 1))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_293) v_v_28_3) (< v_idx_293 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_291)) (<= c_ULTIMATE.start_malloc_ptr v_idx_291)) (or (= v_v_32_3 (select |c_#valid| v_idx_295)) (<= c_ULTIMATE.start_malloc_ptr v_idx_295)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_298)) (or (< v_idx_296 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_296)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_296)))))} [2019-01-18 14:51:45,556 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:51:45,556 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:51:45,556 WARN L230 ngHoareTripleChecker]: Post: {2147483622#(forall ((v_idx_302 Int) (v_idx_303 Int) (v_idx_311 Int) (v_idx_312 Int) (v_idx_306 Int) (v_idx_307 Int) (v_idx_304 Int) (v_idx_305 Int) (v_idx_308 Int) (v_idx_309 Int) (v_idx_310 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_49_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_47_3 Int)) (and (or (< v_idx_304 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_304))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_309)) (or (= (select |c_#memory_int| v_idx_311) v_v_48_3) (< v_idx_311 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_311)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_303) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_303)) (< v_idx_303 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_302) (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_302))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_310) (= (select |c_#memory_int| v_idx_310) v_v_47_3)) (= v_v_2_3 (select |c_old(#valid)| v_idx_305)) (or (= (select |c_#memory_int| v_idx_312) v_v_49_3) (< v_idx_312 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_32_3 (select |c_#valid| v_idx_306)) (<= c_ULTIMATE.start_malloc_ptr v_idx_306)) (or (= 1 (select |c_#valid| v_idx_307)) (< v_idx_307 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_307)) (or (= v_v_34_3 (select |c_#valid| v_idx_308)) (< v_idx_308 (+ c_ULTIMATE.start_main_p3 1))))))} [2019-01-18 14:51:45,556 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:46,057 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:46,057 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:46,263 WARN L270 ngHoareTripleChecker]: Pre: {2147483623#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_300 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_300) (= (select |#memory_int| v_idx_300) 0) (< v_idx_300 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_296 Int)) (or (< v_idx_296 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_296)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_296))) (forall ((v_idx_292 Int)) (or (< v_idx_292 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_292)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_292))))} [2019-01-18 14:51:46,263 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:51:46,263 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:51:46,288 WARN L276 ngHoareTripleChecker]: Post: {2147483622#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_303 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_303) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_303)) (< v_idx_303 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_307 Int)) (or (= 1 (select |#valid| v_idx_307)) (< v_idx_307 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_307))))} [2019-01-18 14:51:48,633 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:48,633 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:48,634 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:48,634 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:48,634 WARN L224 ngHoareTripleChecker]: Pre: {2147483621#(forall ((v_idx_313 Int) (v_idx_314 Int) (v_idx_322 Int) (v_idx_323 Int) (v_idx_317 Int) (v_idx_318 Int) (v_idx_315 Int) (v_idx_316 Int) (v_idx_319 Int) (v_idx_320 Int) (v_idx_321 Int)) (exists ((v_v_45_3 Int) (v_v_34_3 Int) (v_v_44_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int) (v_v_46_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_313) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_313) v_v_26_3)) (<= (- (- v_v_45_3) v_v_45_3) 0) (<= 0 v_v_45_3) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_322) (= (select |c_#memory_int| v_idx_322) v_v_45_3) (< v_idx_322 c_ULTIMATE.start_main_p1)) (or (= v_v_32_3 (select |c_#valid| v_idx_317)) (<= c_ULTIMATE.start_malloc_ptr v_idx_317)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_319 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_319))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_314 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_314) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_314) 0)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_315) v_v_28_3) (< v_idx_315 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_321) v_v_44_3) (<= c_ULTIMATE.start_main_p1 v_idx_321)) (= v_v_2_3 (select |c_old(#valid)| v_idx_316)) (or (= (select |c_#memory_int| v_idx_323) v_v_46_3) (< v_idx_323 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_320)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_318) (= 1 (select |c_#valid| v_idx_318)) (< v_idx_318 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-18 14:51:48,634 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:51:48,634 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:51:48,634 WARN L230 ngHoareTripleChecker]: Post: {2147483620#(forall ((v_idx_324 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_334 Int) (v_idx_328 Int) (v_idx_329 Int) (v_idx_326 Int) (v_idx_327 Int) (v_idx_331 Int) (v_idx_332 Int) (v_idx_330 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_61_3 Int) (v_v_62_3 Int) (v_v_63_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_326 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_326) v_v_28_3)) (<= 1 v_v_62_3) (or (= (select |c_#memory_int| v_idx_334) v_v_63_3) (< v_idx_334 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_333 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_333) (= v_v_62_3 (select |c_#memory_int| v_idx_333))) (or (< v_idx_330 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_330))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_324) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_324) v_v_26_3)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_3 (select |c_old(#valid)| v_idx_327)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_332) v_v_61_3) (<= c_ULTIMATE.start_main_p2 v_idx_332)) (<= (- (- v_v_62_3) v_v_62_3) (- 2)) (or (= v_v_32_3 (select |c_#valid| v_idx_328)) (<= c_ULTIMATE.start_malloc_ptr v_idx_328)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_329) (= 1 (select |c_#valid| v_idx_329)) (< v_idx_329 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#memory_int)| v_idx_331) v_v_4_3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (< v_idx_325 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_325)))))} [2019-01-18 14:51:48,634 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:49,292 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:49,293 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:51:49,454 WARN L270 ngHoareTripleChecker]: Pre: {2147483621#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_314 Int)) (or (< v_idx_314 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_314) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_314) 0))) (forall ((v_idx_322 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_322))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_322) (< v_idx_322 ULTIMATE.start_main_p1))) (forall ((v_idx_318 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_318) (= 1 (select |#valid| v_idx_318)) (< v_idx_318 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_6 Int)) (or (<= 0 (select |#memory_int| v_prenex_6)) (< v_prenex_6 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_6))))} [2019-01-18 14:51:49,454 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:51:49,454 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:51:49,496 WARN L276 ngHoareTripleChecker]: Post: {2147483620#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_333 Int)) (or (< v_idx_333 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_333) (<= 1 (select |#memory_int| v_idx_333)))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_7 Int)) (or (<= 2 (* 2 (select |#memory_int| v_prenex_7))) (< v_prenex_7 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_7))) (forall ((v_idx_325 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (< v_idx_325 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_325))) (forall ((v_idx_329 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_329) (= 1 (select |#valid| v_idx_329)) (< v_idx_329 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:51:52,301 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:51:52,301 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:51:52,301 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:51:52,301 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:51:52,302 WARN L224 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_34_3 Int) (v_v_43_3 Int) (v_v_32_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_337 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_337) v_v_28_3)) (or (= 1 (select |c_#valid| v_idx_340)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_340) (< v_idx_340 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 (= (select |c_#memory_int| v_idx_343) v_v_41_3) (<= c_ULTIMATE.start_malloc_ptr v_idx_343)) (or (< v_idx_345 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_345) v_v_43_3)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_335) (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_335))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_32_3 (select |c_#valid| v_idx_339)) (<= c_ULTIMATE.start_malloc_ptr v_idx_339)) (or (= v_v_34_3 (select |c_#valid| v_idx_341)) (< v_idx_341 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (< v_idx_336 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_336)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_344) (< v_idx_344 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_344)))))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_49_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_47_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_352 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_352))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_347) (< v_idx_347 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_347) 0)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_346) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_26_3)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_353)) (or (< v_idx_355 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_355) v_v_48_3) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_355)) (or (< v_idx_356 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_49_3 (select |c_#memory_int| v_idx_356))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= v_v_32_3 (select |c_#valid| v_idx_350)) (<= c_ULTIMATE.start_malloc_ptr v_idx_350)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_354) v_v_47_3) (<= c_ULTIMATE.start_main_p1 v_idx_354)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_28_3) (< v_idx_348 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_3 (select |c_old(#valid)| v_idx_349)) (or (< v_idx_351 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_351) (= 1 (select |c_#valid| v_idx_351)))))))} [2019-01-18 14:51:52,302 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:51:52,302 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:51:52,302 WARN L230 ngHoareTripleChecker]: Post: {2147483618#(forall ((v_idx_357 Int) (v_idx_358 Int) (v_idx_366 Int) (v_idx_367 Int) (v_idx_359 Int) (v_idx_360 Int) (v_idx_361 Int) (v_idx_364 Int) (v_idx_365 Int) (v_idx_362 Int) (v_idx_363 Int)) (exists ((v_v_64_3 Int) (v_v_34_3 Int) (v_v_65_3 Int) (v_v_32_3 Int) (v_v_66_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_365) (= (select |c_#memory_int| v_idx_365) v_v_64_3)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_362) (= 1 (select |c_#valid| v_idx_362)) (< v_idx_362 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_359 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_359))) (or (= v_v_32_3 (select |c_#valid| v_idx_361)) (<= c_ULTIMATE.start_malloc_ptr v_idx_361)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_357) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_357) v_v_26_3)) (or (= v_v_65_3 (select |c_#memory_int| v_idx_366)) (< v_idx_366 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_366)) (<= 0 v_v_65_3) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_367 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_367) v_v_66_3)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_360) v_v_2_3) (<= (- (- v_v_65_3) v_v_65_3) 0) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_364)) (or (< v_idx_358 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_358) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_358))) (or (< v_idx_363 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_363))))))} [2019-01-18 14:51:52,302 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:51:52,664 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:51:52,664 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:00,995 WARN L181 SmtUtils]: Spent 8.33 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:00,996 WARN L270 ngHoareTripleChecker]: Pre: {2147483619#(or (forall ((v_idx_335 Int) (v_idx_336 Int) (v_idx_344 Int) (v_idx_345 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_338 Int) (v_idx_342 Int) (v_idx_343 Int) (v_idx_340 Int) (v_idx_341 Int)) (exists ((v_v_34_3 Int) (v_v_43_3 Int) (v_v_32_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_337 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_337) v_v_28_3)) (or (= 1 (select |#valid| v_idx_340)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_340) (< v_idx_340 ULTIMATE.start_malloc_ptr)) (= v_v_2_3 (select |old(#valid)| v_idx_338)) (= v_v_4_3 (select |old(#memory_int)| v_idx_342)) (or (= (select |#memory_int| v_idx_343) v_v_41_3) (<= ULTIMATE.start_malloc_ptr v_idx_343)) (or (< v_idx_345 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_345) v_v_43_3)) (or (<= ULTIMATE.start_malloc_ptr v_idx_335) (= v_v_26_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_335))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= v_v_32_3 (select |#valid| v_idx_339)) (<= ULTIMATE.start_malloc_ptr v_idx_339)) (or (= v_v_34_3 (select |#valid| v_idx_341)) (< v_idx_341 (+ ULTIMATE.start_main_p3 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_336) 0) (< v_idx_336 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_336)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_344) (< v_idx_344 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_344)))))) (forall ((v_idx_346 Int) (v_idx_347 Int) (v_idx_355 Int) (v_idx_356 Int) (v_idx_348 Int) (v_idx_349 Int) (v_idx_350 Int) (v_idx_353 Int) (v_idx_354 Int) (v_idx_351 Int) (v_idx_352 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_49_3 Int) (v_v_2_3 Int) (v_v_48_3 Int) (v_v_4_3 Int) (v_v_47_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_352 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |#valid| v_idx_352))) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_347) (< v_idx_347 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_347) 0)) (or (<= ULTIMATE.start_malloc_ptr v_idx_346) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_346) v_v_26_3)) (= v_v_4_3 (select |old(#memory_int)| v_idx_353)) (or (< v_idx_355 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_355) v_v_48_3) (<= (+ ULTIMATE.start_main_p1 1) v_idx_355)) (or (< v_idx_356 (+ ULTIMATE.start_main_p1 1)) (= v_v_49_3 (select |#memory_int| v_idx_356))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= v_v_32_3 (select |#valid| v_idx_350)) (<= ULTIMATE.start_malloc_ptr v_idx_350)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_354) v_v_47_3) (<= ULTIMATE.start_main_p1 v_idx_354)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_348) v_v_28_3) (< v_idx_348 (+ ULTIMATE.start_main_p3 1))) (= v_v_2_3 (select |old(#valid)| v_idx_349)) (or (< v_idx_351 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_351) (= 1 (select |#valid| v_idx_351)))))))} [2019-01-18 14:52:00,996 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:52:00,996 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:52:01,207 WARN L276 ngHoareTripleChecker]: Post: {2147483618#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_366 Int)) (or (<= 0 (select |#memory_int| v_idx_366)) (< v_idx_366 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_366))) (forall ((v_idx_358 Int)) (or (< v_idx_358 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_358) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_358)))) (forall ((v_idx_362 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_362) (= 1 (select |#valid| v_idx_362)) (< v_idx_362 ULTIMATE.start_malloc_ptr))) (forall ((v_prenex_8 Int)) (or (< v_prenex_8 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_8))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_8))))} [2019-01-18 14:52:04,160 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:04,160 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:04,161 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:04,161 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:04,161 WARN L224 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_379 Int) (v_idx_388 Int) (v_idx_389 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_384 Int) (v_idx_385 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_49_3 Int) (v_v_26_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_388) (< v_idx_388 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_388) v_v_48_3)) (or (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_381)) (< v_idx_381 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_387) v_v_47_3) (<= c_ULTIMATE.start_main_p1 v_idx_387)) (= (select |c_old(#valid)| v_idx_382) v_v_2_3) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_380) (< v_idx_380 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_380))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_389 (+ c_ULTIMATE.start_main_p1 1)) (= v_v_49_3 (select |c_#memory_int| v_idx_389))) (or (= 1 (select |c_#valid| v_idx_384)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_384) (< v_idx_384 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_386)) (or (< v_idx_385 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_385))) (or (= v_v_26_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_379)) (<= c_ULTIMATE.start_malloc_ptr v_idx_379)) (or (= v_v_32_3 (select |c_#valid| v_idx_383)) (<= c_ULTIMATE.start_malloc_ptr v_idx_383))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_376) (= (select |c_#memory_int| v_idx_376) v_v_41_3)) (or (= v_v_32_3 (select |c_#valid| v_idx_372)) (<= c_ULTIMATE.start_malloc_ptr v_idx_372)) (or (= v_v_28_3 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_370)) (< v_idx_370 (+ c_ULTIMATE.start_main_p3 1))) (or (= 1 (select |c_#valid| v_idx_373)) (< v_idx_373 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_373)) (= (select |c_old(#valid)| v_idx_371) v_v_2_3) (or (= v_v_34_3 (select |c_#valid| v_idx_374)) (< v_idx_374 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_375)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_377) (< v_idx_377 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_377))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_369)) (< v_idx_369 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_369)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_368) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_368) v_v_26_3)) (or (< v_idx_378 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_378) v_v_43_3))))))} [2019-01-18 14:52:04,161 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:04,161 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:04,162 WARN L230 ngHoareTripleChecker]: Post: {2147483616#(forall ((v_idx_399 Int) (v_idx_400 Int) (v_idx_390 Int) (v_idx_393 Int) (v_idx_394 Int) (v_idx_391 Int) (v_idx_392 Int) (v_idx_397 Int) (v_idx_398 Int) (v_idx_395 Int) (v_idx_396 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_104_3 Int) (v_v_103_3 Int) (v_v_105_3 Int) (v_v_28_3 Int) (v_v_26_3 Int) (v_v_2_3 Int) (v_v_4_3 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_394) (= v_v_32_3 (select |c_#valid| v_idx_394))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_391) 0) (< v_idx_391 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_391)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_399) (= v_v_104_3 (select |c_#memory_int| v_idx_399)) (< v_idx_399 c_ULTIMATE.start_main_p1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_392) v_v_28_3) (< v_idx_392 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_390) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_390) v_v_26_3)) (= (select |c_old(#valid)| v_idx_393) v_v_2_3) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_396 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |c_#valid| v_idx_396))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_103_3 (select |c_#memory_int| v_idx_398)) (<= c_ULTIMATE.start_main_p1 v_idx_398)) (or (= (select |c_#memory_int| v_idx_400) v_v_105_3) (< v_idx_400 (+ c_ULTIMATE.start_main_p1 1))) (= v_v_4_3 (select |c_old(#memory_int)| v_idx_397)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_395) (< v_idx_395 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_395))))))} [2019-01-18 14:52:04,162 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:04,636 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:04,636 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:13,049 WARN L181 SmtUtils]: Spent 8.41 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:13,050 WARN L270 ngHoareTripleChecker]: Pre: {2147483617#(or (forall ((v_idx_379 Int) (v_idx_388 Int) (v_idx_389 Int) (v_idx_382 Int) (v_idx_383 Int) (v_idx_380 Int) (v_idx_381 Int) (v_idx_386 Int) (v_idx_387 Int) (v_idx_384 Int) (v_idx_385 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_49_3 Int) (v_v_26_3 Int) (v_v_48_3 Int) (v_v_47_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_388) (< v_idx_388 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_388) v_v_48_3)) (or (= v_v_28_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_381)) (< v_idx_381 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#memory_int| v_idx_387) v_v_47_3) (<= ULTIMATE.start_main_p1 v_idx_387)) (= (select |old(#valid)| v_idx_382) v_v_2_3) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_380) (< v_idx_380 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_380))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_389 (+ ULTIMATE.start_main_p1 1)) (= v_v_49_3 (select |#memory_int| v_idx_389))) (or (= 1 (select |#valid| v_idx_384)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_384) (< v_idx_384 ULTIMATE.start_malloc_ptr)) (= v_v_4_3 (select |old(#memory_int)| v_idx_386)) (or (< v_idx_385 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_3 (select |#valid| v_idx_385))) (or (= v_v_26_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_379)) (<= ULTIMATE.start_malloc_ptr v_idx_379)) (or (= v_v_32_3 (select |#valid| v_idx_383)) (<= ULTIMATE.start_malloc_ptr v_idx_383))))) (forall ((v_idx_368 Int) (v_idx_369 Int) (v_idx_377 Int) (v_idx_378 Int) (v_idx_371 Int) (v_idx_372 Int) (v_idx_370 Int) (v_idx_375 Int) (v_idx_376 Int) (v_idx_373 Int) (v_idx_374 Int)) (exists ((v_v_34_3 Int) (v_v_32_3 Int) (v_v_43_3 Int) (v_v_41_3 Int) (v_v_28_3 Int) (v_v_2_3 Int) (v_v_26_3 Int) (v_v_4_3 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_376) (= (select |#memory_int| v_idx_376) v_v_41_3)) (or (= v_v_32_3 (select |#valid| v_idx_372)) (<= ULTIMATE.start_malloc_ptr v_idx_372)) (or (= v_v_28_3 (select |ULTIMATE.start_malloc_old_#valid| v_idx_370)) (< v_idx_370 (+ ULTIMATE.start_main_p3 1))) (or (= 1 (select |#valid| v_idx_373)) (< v_idx_373 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_373)) (= (select |old(#valid)| v_idx_371) v_v_2_3) (or (= v_v_34_3 (select |#valid| v_idx_374)) (< v_idx_374 (+ ULTIMATE.start_main_p3 1))) (= v_v_4_3 (select |old(#memory_int)| v_idx_375)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_377) (< v_idx_377 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_377))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_369)) (< v_idx_369 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_369)) (or (<= ULTIMATE.start_malloc_ptr v_idx_368) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_368) v_v_26_3)) (or (< v_idx_378 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_378) v_v_43_3))))))} [2019-01-18 14:52:13,050 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:13,050 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:13,233 WARN L276 ngHoareTripleChecker]: Post: {2147483616#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_391 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_391) 0) (< v_idx_391 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_391))) (forall ((v_idx_395 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_395) (< v_idx_395 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_395)))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0))} [2019-01-18 14:52:13,685 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:52:13,685 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:52:13,686 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:13,686 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:52:13,686 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:13,686 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:52:13,695 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:13,695 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:52:13,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:13,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:13,705 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:52:13,747 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:52:13,758 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-18 14:52:13,765 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,767 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,768 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-18 14:52:13,773 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,787 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,793 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,810 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,812 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-18 14:52:13,845 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,846 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,847 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-18 14:52:13,849 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,855 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,871 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:13,872 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-18 14:52:13,876 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:13,876 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_23|, ULTIMATE.start_main_p3, |v_#valid_7|]. (let ((.cse0 (store |v_#valid_7| ULTIMATE.start_main_p1 1))) (and (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (store (store (store |v_#memory_int_23| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0))) [2019-01-18 14:52:13,876 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:52:13,961 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:52:13,962 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-18 14:52:13,967 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:52:13,980 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:52:13,981 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:20 [2019-01-18 14:52:14,732 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:52:14,733 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_24|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_24| ULTIMATE.start_main_p1))) (and (= 0 (select |v_#memory_int_24| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_24| ULTIMATE.start_main_p3)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 .cse0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_24| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-18 14:52:14,733 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:52:14,766 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {393#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:52:14,768 INFO L273 TraceCheckUtils]: 1: Hoare triple {393#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-18 14:52:14,769 INFO L273 TraceCheckUtils]: 2: Hoare triple {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume #memory_int[main_p1] >= 0; {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-18 14:52:14,770 INFO L273 TraceCheckUtils]: 3: Hoare triple {397#(and (exists ((ULTIMATE.start_main_p1 Int)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-18 14:52:14,770 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:52:14,771 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:52:14,795 INFO L273 TraceCheckUtils]: 3: Hoare triple {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {387#false} is VALID [2019-01-18 14:52:14,796 INFO L273 TraceCheckUtils]: 2: Hoare triple {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:52:14,797 INFO L273 TraceCheckUtils]: 1: Hoare triple {411#(<= (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {404#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:52:14,799 INFO L273 TraceCheckUtils]: 0: Hoare triple {386#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {411#(<= (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:52:14,800 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:14,821 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:52:14,821 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 2, 2] total 6 [2019-01-18 14:52:14,822 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:52:14,822 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-01-18 14:52:14,822 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:52:14,822 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-01-18 14:52:14,837 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:52:14,837 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-01-18 14:52:14,837 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-01-18 14:52:14,838 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=32, Unknown=0, NotChecked=0, Total=56 [2019-01-18 14:52:14,838 INFO L87 Difference]: Start difference. First operand 12 states and 29 transitions. Second operand 6 states. [2019-01-18 14:52:15,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:15,096 INFO L93 Difference]: Finished difference Result 21 states and 43 transitions. [2019-01-18 14:52:15,096 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-01-18 14:52:15,096 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-01-18 14:52:15,097 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:52:15,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:15,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2019-01-18 14:52:15,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-18 14:52:15,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2019-01-18 14:52:15,099 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 26 transitions. [2019-01-18 14:52:15,137 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:52:15,139 INFO L225 Difference]: With dead ends: 21 [2019-01-18 14:52:15,139 INFO L226 Difference]: Without dead ends: 20 [2019-01-18 14:52:15,139 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=41, Unknown=0, NotChecked=0, Total=72 [2019-01-18 14:52:15,143 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2019-01-18 14:52:15,198 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 14. [2019-01-18 14:52:15,198 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:52:15,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand 14 states. [2019-01-18 14:52:15,198 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand 14 states. [2019-01-18 14:52:15,198 INFO L87 Difference]: Start difference. First operand 20 states. Second operand 14 states. [2019-01-18 14:52:15,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:15,200 INFO L93 Difference]: Finished difference Result 20 states and 41 transitions. [2019-01-18 14:52:15,200 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 41 transitions. [2019-01-18 14:52:15,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:15,201 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:15,201 INFO L74 IsIncluded]: Start isIncluded. First operand 14 states. Second operand 20 states. [2019-01-18 14:52:15,201 INFO L87 Difference]: Start difference. First operand 14 states. Second operand 20 states. [2019-01-18 14:52:15,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:52:15,203 INFO L93 Difference]: Finished difference Result 20 states and 41 transitions. [2019-01-18 14:52:15,203 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 41 transitions. [2019-01-18 14:52:15,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:52:15,204 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:52:15,204 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:52:15,204 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:52:15,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2019-01-18 14:52:15,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 34 transitions. [2019-01-18 14:52:15,205 INFO L78 Accepts]: Start accepts. Automaton has 14 states and 34 transitions. Word has length 4 [2019-01-18 14:52:15,205 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:52:15,205 INFO L480 AbstractCegarLoop]: Abstraction has 14 states and 34 transitions. [2019-01-18 14:52:15,206 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-01-18 14:52:15,206 INFO L276 IsEmpty]: Start isEmpty. Operand 14 states and 34 transitions. [2019-01-18 14:52:15,206 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:52:15,206 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:52:15,206 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:52:15,206 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:52:15,207 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:52:15,207 INFO L82 PathProgramCache]: Analyzing trace with hash 929612, now seen corresponding path program 1 times [2019-01-18 14:52:15,207 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:52:15,208 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:15,208 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:52:15,208 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:52:15,208 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:52:15,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:52:15,320 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {508#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:52:15,321 INFO L273 TraceCheckUtils]: 1: Hoare triple {508#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {509#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:52:15,322 INFO L273 TraceCheckUtils]: 2: Hoare triple {509#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {510#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:52:15,324 INFO L273 TraceCheckUtils]: 3: Hoare triple {510#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {507#false} is VALID [2019-01-18 14:52:15,324 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:52:15,325 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:52:15,325 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:52:15,325 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:52:15,325 INFO L207 CegarAbsIntRunner]: [0], [6], [10], [15] [2019-01-18 14:52:15,327 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:52:15,327 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:52:17,868 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:17,868 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:17,868 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:17,868 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:17,869 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_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_426) (< v_idx_426 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_426) 0)) (or (= v_v_32_4 (select |c_#valid| v_idx_421)) (<= c_ULTIMATE.start_malloc_ptr v_idx_421)) (or (= (select |c_#memory_int| v_idx_427) v_v_43_4) (< v_idx_427 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_422 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_422)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_422)) (or (< v_idx_419 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_419) v_v_28_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_26_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_417)) (<= c_ULTIMATE.start_malloc_ptr v_idx_417)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_424)) (or (< v_idx_423 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_4 (select |c_#valid| v_idx_423))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_425) (= (select |c_#memory_int| v_idx_425) v_v_41_4)) (= (select |c_old(#valid)| v_idx_420) v_v_2_4) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_418) (< v_idx_418 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_418) 0)))))} [2019-01-18 14:52:17,869 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:17,869 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:17,869 WARN L230 ngHoareTripleChecker]: Post: {2147483612#(forall ((v_idx_434 Int) (v_idx_435 Int) (v_idx_432 Int) (v_idx_433 Int) (v_idx_438 Int) (v_idx_428 Int) (v_idx_436 Int) (v_idx_437 Int) (v_idx_429 Int) (v_idx_430 Int) (v_idx_431 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_34_4 Int) (v_v_4_4 Int) (v_v_45_4 Int)) (and (or (= (select |c_#valid| v_idx_434) v_v_34_4) (< v_idx_434 (+ c_ULTIMATE.start_main_p3 1))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_432) v_v_32_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_432)) (or (< v_idx_430 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_430) v_v_28_4)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_429) (< v_idx_429 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_429))) (or (= (select |c_#memory_int| v_idx_438) v_v_46_4) (< v_idx_438 (+ c_ULTIMATE.start_main_p1 1))) (or (= v_v_26_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_428)) (<= c_ULTIMATE.start_malloc_ptr v_idx_428)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_435)) (or (<= c_ULTIMATE.start_main_p1 v_idx_436) (= (select |c_#memory_int| v_idx_436) v_v_44_4)) (or (< v_idx_433 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_433) (= 1 (select |c_#valid| v_idx_433))) (= v_v_2_4 (select |c_old(#valid)| v_idx_431)) (or (= (select |c_#memory_int| v_idx_437) v_v_45_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_437) (< v_idx_437 c_ULTIMATE.start_main_p1)))))} [2019-01-18 14:52:17,869 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:18,396 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:18,396 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:18,624 WARN L270 ngHoareTripleChecker]: Pre: {2147483613#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_418 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_418) (< v_idx_418 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_418) 0))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_426 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_426) (< v_idx_426 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_426) 0))) (forall ((v_idx_422 Int)) (or (< v_idx_422 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_422)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_422))))} [2019-01-18 14:52:18,624 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:18,625 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:18,658 WARN L276 ngHoareTripleChecker]: Post: {2147483612#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_433 Int)) (or (< v_idx_433 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_433) (= 1 (select |#valid| v_idx_433)))) (forall ((v_idx_429 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_429) (< v_idx_429 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_429)))))} [2019-01-18 14:52:21,327 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:21,328 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:21,328 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:21,328 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:21,328 WARN L224 ngHoareTripleChecker]: Pre: {2147483611#(forall ((v_idx_445 Int) (v_idx_446 Int) (v_idx_443 Int) (v_idx_444 Int) (v_idx_449 Int) (v_idx_439 Int) (v_idx_447 Int) (v_idx_448 Int) (v_idx_441 Int) (v_idx_442 Int) (v_idx_440 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_440)) (< v_idx_440 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_440)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_448) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_448) (< v_idx_448 c_ULTIMATE.start_malloc_ptr)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_446)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_449 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_449) v_v_43_4)) (or (= (select |c_#valid| v_idx_445) v_v_34_4) (< v_idx_445 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_447) v_v_41_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_447)) (or (< v_idx_441 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_441))) (or (= (select |c_#valid| v_idx_443) v_v_32_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_443)) (= (select |c_old(#valid)| v_idx_442) v_v_2_4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_439) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_439) v_v_26_4)) (or (< v_idx_444 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_444) (= (select |c_#valid| v_idx_444) 1)))))} [2019-01-18 14:52:21,329 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:52:21,329 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:52:21,329 WARN L230 ngHoareTripleChecker]: Post: {2147483610#(forall ((v_idx_456 Int) (v_idx_457 Int) (v_idx_454 Int) (v_idx_455 Int) (v_idx_458 Int) (v_idx_459 Int) (v_idx_460 Int) (v_idx_452 Int) (v_idx_453 Int) (v_idx_450 Int) (v_idx_451 Int)) (exists ((v_v_32_4 Int) (v_v_60_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_58_4 Int) (v_v_34_4 Int) (v_v_4_4 Int) (v_v_59_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_455) (< v_idx_455 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_455) 1)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_456) v_v_34_4) (< v_idx_456 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#valid)| v_idx_453) v_v_2_4) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_457)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_450) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_450) v_v_26_4)) (or (= (select |c_#memory_int| v_idx_460) v_v_60_4) (< v_idx_460 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_452 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_452))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_454) (= v_v_32_4 (select |c_#valid| v_idx_454))) (or (<= c_ULTIMATE.start_main_p2 v_idx_458) (= (select |c_#memory_int| v_idx_458) v_v_58_4)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_459) (< v_idx_459 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_459) v_v_59_4)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_451)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_451) (< v_idx_451 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-18 14:52:21,329 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:21,862 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:21,862 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:22,075 WARN L270 ngHoareTripleChecker]: Pre: {2147483611#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_440 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_440)) (< v_idx_440 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_440))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_448 Int)) (or (= (select |#memory_int| v_idx_448) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_448) (< v_idx_448 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_444 Int)) (or (< v_idx_444 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_444) (= (select |#valid| v_idx_444) 1))))} [2019-01-18 14:52:22,075 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:52:22,075 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:52:22,155 WARN L276 ngHoareTripleChecker]: Post: {2147483610#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_455 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_455) (< v_idx_455 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_455) 1))) (forall ((v_idx_451 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_451)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_451) (< v_idx_451 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:52:24,605 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:24,605 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:24,605 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:24,606 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:24,606 WARN L224 ngHoareTripleChecker]: Pre: {2147483609#(forall ((v_idx_467 Int) (v_idx_468 Int) (v_idx_465 Int) (v_idx_466 Int) (v_idx_469 Int) (v_idx_470 Int) (v_idx_471 Int) (v_idx_463 Int) (v_idx_464 Int) (v_idx_461 Int) (v_idx_462 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_470) (< v_idx_470 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_470) 0)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_471 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_471) v_v_43_4)) (or (= (select |c_#valid| v_idx_467) v_v_34_4) (< v_idx_467 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_468)) (= (select |c_old(#valid)| v_idx_464) v_v_2_4) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_461) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_461) v_v_26_4)) (or (= (select |c_#valid| v_idx_465) v_v_32_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_465)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_466) (< v_idx_466 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_466) 1)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_463) v_v_28_4) (< v_idx_463 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_469) v_v_41_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_469)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_462)) (< v_idx_462 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_462)))))} [2019-01-18 14:52:24,606 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:24,606 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:24,606 WARN L230 ngHoareTripleChecker]: Post: {2147483608#(forall ((v_idx_478 Int) (v_idx_479 Int) (v_idx_476 Int) (v_idx_477 Int) (v_idx_481 Int) (v_idx_482 Int) (v_idx_480 Int) (v_idx_474 Int) (v_idx_475 Int) (v_idx_472 Int) (v_idx_473 Int)) (exists ((v_v_32_4 Int) (v_v_82_4 Int) (v_v_81_4 Int) (v_v_83_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (= (select |c_old(#memory_int)| v_idx_479) v_v_4_4) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_473) (< v_idx_473 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_473))) (<= (+ v_v_82_4 1) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_476) (= v_v_32_4 (select |c_#valid| v_idx_476))) (or (= 1 (select |c_#valid| v_idx_477)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_477) (< v_idx_477 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_472) v_v_26_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_472)) (<= (- v_v_82_4 (- v_v_82_4)) (- 2)) (or (= (select |c_#memory_int| v_idx_480) v_v_81_4) (<= c_ULTIMATE.start_main_p1 v_idx_480)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_481) (< v_idx_481 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_481) v_v_82_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_34_4 (select |c_#valid| v_idx_478)) (< v_idx_478 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_4 (select |c_old(#valid)| v_idx_475)) (or (< v_idx_474 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_474))) (or (= (select |c_#memory_int| v_idx_482) v_v_83_4) (< v_idx_482 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-18 14:52:24,606 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:25,210 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:25,210 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:25,380 WARN L270 ngHoareTripleChecker]: Pre: {2147483609#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_462 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_462)) (< v_idx_462 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_462))) (forall ((v_idx_466 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_466) (< v_idx_466 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_466) 1))) (forall ((v_idx_470 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_470) (< v_idx_470 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_470) 0))))} [2019-01-18 14:52:25,381 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:25,381 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:25,467 WARN L276 ngHoareTripleChecker]: Post: {2147483608#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_481 Int)) (or (<= (+ (select |#memory_int| v_idx_481) 1) 0) (< v_idx_481 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_481))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_473 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_473) (< v_idx_473 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_473)))) (forall ((v_prenex_9 Int)) (or (< v_prenex_9 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_9) (<= (+ (* 2 (select |#memory_int| v_prenex_9)) 2) 0))) (forall ((v_idx_477 Int)) (or (= 1 (select |#valid| v_idx_477)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_477) (< v_idx_477 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:52:28,262 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:28,262 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:28,263 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:28,263 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:28,263 WARN L224 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (or (= (select |c_#memory_int| v_idx_493) v_v_43_4) (< v_idx_493 (+ c_ULTIMATE.start_main_p3 1))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_484) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_484)) (< v_idx_484 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_487) (= (select |c_#valid| v_idx_487) v_v_32_4)) (or (< v_idx_492 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_492) (= (select |c_#memory_int| v_idx_492) 0)) (or (< v_idx_488 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_488) (= 1 (select |c_#valid| v_idx_488))) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_490)) (= (select |c_old(#valid)| v_idx_486) v_v_2_4) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_483) v_v_26_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_483)) (or (= (select |c_#memory_int| v_idx_491) v_v_41_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_491)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_485) v_v_28_4) (< v_idx_485 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_489) v_v_34_4) (< v_idx_489 (+ c_ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_504 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_503) (= v_v_45_4 (select |c_#memory_int| v_idx_503)) (< v_idx_503 c_ULTIMATE.start_main_p1)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_501)) (or (= (select |c_#memory_int| v_idx_504) v_v_46_4) (< v_idx_504 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_495) (< v_idx_495 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_495))) (= v_v_2_4 (select |c_old(#valid)| v_idx_497)) (or (= 1 (select |c_#valid| v_idx_499)) (< v_idx_499 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_499)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_498) (= (select |c_#valid| v_idx_498) v_v_32_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_496) v_v_28_4) (< v_idx_496 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_main_p1 v_idx_502) (= (select |c_#memory_int| v_idx_502) v_v_44_4)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_494) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_494) v_v_26_4)) (or (= (select |c_#valid| v_idx_500) v_v_34_4) (< v_idx_500 (+ c_ULTIMATE.start_main_p3 1)))))))} [2019-01-18 14:52:28,263 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:28,263 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:28,263 WARN L230 ngHoareTripleChecker]: Post: {2147483606#(forall ((v_idx_511 Int) (v_idx_512 Int) (v_idx_510 Int) (v_idx_515 Int) (v_idx_505 Int) (v_idx_513 Int) (v_idx_514 Int) (v_idx_508 Int) (v_idx_509 Int) (v_idx_506 Int) (v_idx_507 Int)) (exists ((v_v_86_4 Int) (v_v_85_4 Int) (v_v_32_4 Int) (v_v_84_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (or (= v_v_34_4 (select |c_#valid| v_idx_511)) (< v_idx_511 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_506) 0) (< v_idx_506 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_506)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_26_4 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_505)) (<= c_ULTIMATE.start_malloc_ptr v_idx_505)) (or (< v_idx_507 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_507) v_v_28_4)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_514) (< v_idx_514 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_514) v_v_85_4)) (or (<= c_ULTIMATE.start_main_p1 v_idx_513) (= (select |c_#memory_int| v_idx_513) v_v_84_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_509) (= v_v_32_4 (select |c_#valid| v_idx_509))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_4 (select |c_old(#valid)| v_idx_508)) (or (< v_idx_515 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_515) v_v_86_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_512)) (or (< v_idx_510 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_510)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_510)))))} [2019-01-18 14:52:28,264 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:28,828 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:28,828 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:37,160 WARN L181 SmtUtils]: Spent 8.33 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:37,160 WARN L270 ngHoareTripleChecker]: Pre: {2147483607#(or (forall ((v_idx_489 Int) (v_idx_487 Int) (v_idx_488 Int) (v_idx_492 Int) (v_idx_493 Int) (v_idx_490 Int) (v_idx_491 Int) (v_idx_485 Int) (v_idx_486 Int) (v_idx_483 Int) (v_idx_484 Int)) (exists ((v_v_43_4 Int) (v_v_32_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (or (= (select |#memory_int| v_idx_493) v_v_43_4) (< v_idx_493 (+ ULTIMATE.start_main_p3 1))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_484) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_484)) (< v_idx_484 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_malloc_ptr v_idx_487) (= (select |#valid| v_idx_487) v_v_32_4)) (or (< v_idx_492 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_492) (= (select |#memory_int| v_idx_492) 0)) (or (< v_idx_488 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_488) (= 1 (select |#valid| v_idx_488))) (= v_v_4_4 (select |old(#memory_int)| v_idx_490)) (= (select |old(#valid)| v_idx_486) v_v_2_4) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_483) v_v_26_4) (<= ULTIMATE.start_malloc_ptr v_idx_483)) (or (= (select |#memory_int| v_idx_491) v_v_41_4) (<= ULTIMATE.start_malloc_ptr v_idx_491)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_485) v_v_28_4) (< v_idx_485 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#valid| v_idx_489) v_v_34_4) (< v_idx_489 (+ ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_500 Int) (v_idx_501 Int) (v_idx_498 Int) (v_idx_499 Int) (v_idx_504 Int) (v_idx_502 Int) (v_idx_503 Int) (v_idx_496 Int) (v_idx_497 Int) (v_idx_494 Int) (v_idx_495 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_503) (= v_v_45_4 (select |#memory_int| v_idx_503)) (< v_idx_503 ULTIMATE.start_main_p1)) (= v_v_4_4 (select |old(#memory_int)| v_idx_501)) (or (= (select |#memory_int| v_idx_504) v_v_46_4) (< v_idx_504 (+ ULTIMATE.start_main_p1 1))) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_495) (< v_idx_495 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_495))) (= v_v_2_4 (select |old(#valid)| v_idx_497)) (or (= 1 (select |#valid| v_idx_499)) (< v_idx_499 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_499)) (or (<= ULTIMATE.start_malloc_ptr v_idx_498) (= (select |#valid| v_idx_498) v_v_32_4)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_496) v_v_28_4) (< v_idx_496 (+ ULTIMATE.start_main_p3 1))) (or (<= ULTIMATE.start_main_p1 v_idx_502) (= (select |#memory_int| v_idx_502) v_v_44_4)) (or (<= ULTIMATE.start_malloc_ptr v_idx_494) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_494) v_v_26_4)) (or (= (select |#valid| v_idx_500) v_v_34_4) (< v_idx_500 (+ ULTIMATE.start_main_p3 1)))))))} [2019-01-18 14:52:37,160 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-18 14:52:37,161 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) [2019-01-18 14:52:37,183 WARN L276 ngHoareTripleChecker]: Post: {2147483606#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_506 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_506) 0) (< v_idx_506 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_506))) (forall ((v_idx_510 Int)) (or (< v_idx_510 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_510)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_510))))} [2019-01-18 14:52:40,182 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:40,183 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:40,183 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:40,183 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:40,184 WARN L224 ngHoareTripleChecker]: Pre: {2147483605#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_526 Int) (v_idx_516 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_525) 0) (< v_idx_525 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_525)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_524) (= (select |c_#memory_int| v_idx_524) v_v_41_4)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_523)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_517) (< v_idx_517 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_517))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_520) (= v_v_32_4 (select |c_#valid| v_idx_520))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_516) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_516) v_v_26_4)) (or (= v_v_34_4 (select |c_#valid| v_idx_522)) (< v_idx_522 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_518) v_v_28_4) (< v_idx_518 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_526) v_v_43_4) (< v_idx_526 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#valid)| v_idx_519) v_v_2_4) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_521) (< v_idx_521 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_521)))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_537 Int) (v_idx_527 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int) (v_v_34_4 Int) (v_v_45_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_main_p1 v_idx_535) (= (select |c_#memory_int| v_idx_535) v_v_44_4)) (or (= (select |c_#memory_int| v_idx_537) v_v_46_4) (< v_idx_537 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_527) v_v_26_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_527)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_534)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_529) v_v_28_4) (< v_idx_529 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_32_4 (select |c_#valid| v_idx_531)) (<= c_ULTIMATE.start_malloc_ptr v_idx_531)) (or (= v_v_34_4 (select |c_#valid| v_idx_533)) (< v_idx_533 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_528) (< v_idx_528 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_528))) (or (= (select |c_#memory_int| v_idx_536) v_v_45_4) (< v_idx_536 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_536)) (or (< v_idx_532 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_532)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_532)) (= v_v_2_4 (select |c_old(#valid)| v_idx_530))))))} [2019-01-18 14:52:40,184 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:52:40,184 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:52:40,184 WARN L230 ngHoareTripleChecker]: Post: {2147483604#(forall ((v_idx_544 Int) (v_idx_545 Int) (v_idx_542 Int) (v_idx_543 Int) (v_idx_548 Int) (v_idx_538 Int) (v_idx_546 Int) (v_idx_547 Int) (v_idx_539 Int) (v_idx_540 Int) (v_idx_541 Int)) (exists ((v_v_32_4 Int) (v_v_128_4 Int) (v_v_129_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_34_4 Int) (v_v_130_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_547) v_v_129_4) (< v_idx_547 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_547)) (or (<= c_ULTIMATE.start_main_p2 v_idx_546) (= v_v_128_4 (select |c_#memory_int| v_idx_546))) (or (= v_v_34_4 (select |c_#valid| v_idx_544)) (< v_idx_544 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_130_4 (select |c_#memory_int| v_idx_548)) (< v_idx_548 (+ c_ULTIMATE.start_main_p2 1))) (or (= 1 (select |c_#valid| v_idx_543)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_543) (< v_idx_543 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_538) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_538) v_v_26_4)) (= (select |c_old(#valid)| v_idx_541) v_v_2_4) (or (= v_v_32_4 (select |c_#valid| v_idx_542)) (<= c_ULTIMATE.start_malloc_ptr v_idx_542)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_545)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_540) v_v_28_4) (< v_idx_540 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_539 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_539) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_539)))))} [2019-01-18 14:52:40,184 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:40,749 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:40,749 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:52:48,898 WARN L181 SmtUtils]: Spent 8.15 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:52:48,899 WARN L270 ngHoareTripleChecker]: Pre: {2147483605#(or (forall ((v_idx_522 Int) (v_idx_523 Int) (v_idx_520 Int) (v_idx_521 Int) (v_idx_526 Int) (v_idx_516 Int) (v_idx_524 Int) (v_idx_525 Int) (v_idx_519 Int) (v_idx_517 Int) (v_idx_518 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#memory_int| v_idx_525) 0) (< v_idx_525 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_525)) (or (<= ULTIMATE.start_malloc_ptr v_idx_524) (= (select |#memory_int| v_idx_524) v_v_41_4)) (= v_v_4_4 (select |old(#memory_int)| v_idx_523)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_517) (< v_idx_517 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_517))) (or (<= ULTIMATE.start_malloc_ptr v_idx_520) (= v_v_32_4 (select |#valid| v_idx_520))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_516) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_516) v_v_26_4)) (or (= v_v_34_4 (select |#valid| v_idx_522)) (< v_idx_522 (+ ULTIMATE.start_main_p3 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_518) v_v_28_4) (< v_idx_518 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#memory_int| v_idx_526) v_v_43_4) (< v_idx_526 (+ ULTIMATE.start_main_p3 1))) (= (select |old(#valid)| v_idx_519) v_v_2_4) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_521) (< v_idx_521 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_521)))))) (forall ((v_idx_533 Int) (v_idx_534 Int) (v_idx_531 Int) (v_idx_532 Int) (v_idx_537 Int) (v_idx_527 Int) (v_idx_535 Int) (v_idx_536 Int) (v_idx_528 Int) (v_idx_529 Int) (v_idx_530 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_4_4 Int) (v_v_34_4 Int) (v_v_45_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_main_p1 v_idx_535) (= (select |#memory_int| v_idx_535) v_v_44_4)) (or (= (select |#memory_int| v_idx_537) v_v_46_4) (< v_idx_537 (+ ULTIMATE.start_main_p1 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_527) v_v_26_4) (<= ULTIMATE.start_malloc_ptr v_idx_527)) (= v_v_4_4 (select |old(#memory_int)| v_idx_534)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_529) v_v_28_4) (< v_idx_529 (+ ULTIMATE.start_main_p3 1))) (or (= v_v_32_4 (select |#valid| v_idx_531)) (<= ULTIMATE.start_malloc_ptr v_idx_531)) (or (= v_v_34_4 (select |#valid| v_idx_533)) (< v_idx_533 (+ ULTIMATE.start_main_p3 1))) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_528) (< v_idx_528 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_528))) (or (= (select |#memory_int| v_idx_536) v_v_45_4) (< v_idx_536 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_536)) (or (< v_idx_532 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_532)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_532)) (= v_v_2_4 (select |old(#valid)| v_idx_530))))))} [2019-01-18 14:52:48,899 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:52:48,899 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:52:48,999 WARN L276 ngHoareTripleChecker]: Post: {2147483604#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_543 Int)) (or (= 1 (select |#valid| v_idx_543)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_543) (< v_idx_543 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_539 Int)) (or (< v_idx_539 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_539) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_539))))} [2019-01-18 14:52:52,150 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:52:52,150 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:52:52,151 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:52:52,151 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:52:52,151 WARN L224 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_559 Int) (v_idx_549 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_558) (< v_idx_558 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_558) 0)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_556)) (or (= 1 (select |c_#valid| v_idx_554)) (< v_idx_554 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_554)) (or (= v_v_34_4 (select |c_#valid| v_idx_555)) (< v_idx_555 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_32_4 (select |c_#valid| v_idx_553)) (<= c_ULTIMATE.start_malloc_ptr v_idx_553)) (or (< v_idx_559 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_559) v_v_43_4)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= (select |c_old(#valid)| v_idx_552) v_v_2_4) (or (< v_idx_550 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_550) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_550))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_549) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_549) v_v_26_4)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_557) v_v_41_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_557)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_551) v_v_28_4) (< v_idx_551 (+ c_ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_565) (= 1 (select |c_#valid| v_idx_565)) (< v_idx_565 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_568) v_v_44_4) (<= c_ULTIMATE.start_main_p1 v_idx_568)) (or (< v_idx_562 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_562) v_v_28_4)) (or (= (select |c_#memory_int| v_idx_569) v_v_45_4) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_569) (< v_idx_569 c_ULTIMATE.start_main_p1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_561) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_561)) (< v_idx_561 c_ULTIMATE.start_malloc_ptr)) (or (= v_v_34_4 (select |c_#valid| v_idx_566)) (< v_idx_566 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_570) v_v_46_4) (< v_idx_570 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_560) v_v_26_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_560)) (or (= v_v_32_4 (select |c_#valid| v_idx_564)) (<= c_ULTIMATE.start_malloc_ptr v_idx_564)) (= v_v_2_4 (select |c_old(#valid)| v_idx_563)) (= v_v_4_4 (select |c_old(#memory_int)| v_idx_567))))))} [2019-01-18 14:52:52,151 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:52:52,151 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:52:52,151 WARN L230 ngHoareTripleChecker]: Post: {2147483602#(forall ((v_idx_577 Int) (v_idx_578 Int) (v_idx_575 Int) (v_idx_576 Int) (v_idx_579 Int) (v_idx_580 Int) (v_idx_581 Int) (v_idx_573 Int) (v_idx_574 Int) (v_idx_571 Int) (v_idx_572 Int)) (exists ((v_v_172_1 Int) (v_v_173_1 Int) (v_v_32_4 Int) (v_v_174_1 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_581 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_581) v_v_174_1)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_572) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_572)) (< v_idx_572 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#memory_int)| v_idx_578) v_v_4_4) (or (= 1 (select |c_#valid| v_idx_576)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_576) (< v_idx_576 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_573 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_573) v_v_28_4)) (<= (+ v_v_173_1 1) 0) (<= (- v_v_173_1 (- v_v_173_1)) (- 2)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_580) (< v_idx_580 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_580) v_v_173_1)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_34_4 (select |c_#valid| v_idx_577)) (< v_idx_577 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#valid)| v_idx_574) v_v_2_4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_571) v_v_26_4) (<= c_ULTIMATE.start_malloc_ptr v_idx_571)) (or (<= c_ULTIMATE.start_main_p1 v_idx_579) (= (select |c_#memory_int| v_idx_579) v_v_172_1)) (or (= v_v_32_4 (select |c_#valid| v_idx_575)) (<= c_ULTIMATE.start_malloc_ptr v_idx_575)))))} [2019-01-18 14:52:52,151 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:52:52,299 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:52:52,300 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:00,629 WARN L181 SmtUtils]: Spent 8.33 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:00,630 WARN L270 ngHoareTripleChecker]: Pre: {2147483603#(or (forall ((v_idx_555 Int) (v_idx_556 Int) (v_idx_553 Int) (v_idx_554 Int) (v_idx_559 Int) (v_idx_549 Int) (v_idx_557 Int) (v_idx_558 Int) (v_idx_551 Int) (v_idx_552 Int) (v_idx_550 Int)) (exists ((v_v_32_4 Int) (v_v_43_4 Int) (v_v_41_4 Int) (v_v_28_4 Int) (v_v_2_4 Int) (v_v_26_4 Int) (v_v_4_4 Int) (v_v_34_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_558) (< v_idx_558 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_558) 0)) (= v_v_4_4 (select |old(#memory_int)| v_idx_556)) (or (= 1 (select |#valid| v_idx_554)) (< v_idx_554 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_554)) (or (= v_v_34_4 (select |#valid| v_idx_555)) (< v_idx_555 (+ ULTIMATE.start_main_p3 1))) (or (= v_v_32_4 (select |#valid| v_idx_553)) (<= ULTIMATE.start_malloc_ptr v_idx_553)) (or (< v_idx_559 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_559) v_v_43_4)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= (select |old(#valid)| v_idx_552) v_v_2_4) (or (< v_idx_550 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_550) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_550))) (or (<= ULTIMATE.start_malloc_ptr v_idx_549) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_549) v_v_26_4)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#memory_int| v_idx_557) v_v_41_4) (<= ULTIMATE.start_malloc_ptr v_idx_557)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_551) v_v_28_4) (< v_idx_551 (+ ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_566 Int) (v_idx_567 Int) (v_idx_564 Int) (v_idx_565 Int) (v_idx_568 Int) (v_idx_569 Int) (v_idx_570 Int) (v_idx_562 Int) (v_idx_563 Int) (v_idx_560 Int) (v_idx_561 Int)) (exists ((v_v_44_4 Int) (v_v_32_4 Int) (v_v_28_4 Int) (v_v_26_4 Int) (v_v_2_4 Int) (v_v_46_4 Int) (v_v_45_4 Int) (v_v_34_4 Int) (v_v_4_4 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_565) (= 1 (select |#valid| v_idx_565)) (< v_idx_565 ULTIMATE.start_malloc_ptr)) (or (= (select |#memory_int| v_idx_568) v_v_44_4) (<= ULTIMATE.start_main_p1 v_idx_568)) (or (< v_idx_562 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_562) v_v_28_4)) (or (= (select |#memory_int| v_idx_569) v_v_45_4) (<= (+ ULTIMATE.start_main_p1 1) v_idx_569) (< v_idx_569 ULTIMATE.start_main_p1)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_561) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_561)) (< v_idx_561 ULTIMATE.start_malloc_ptr)) (or (= v_v_34_4 (select |#valid| v_idx_566)) (< v_idx_566 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#memory_int| v_idx_570) v_v_46_4) (< v_idx_570 (+ ULTIMATE.start_main_p1 1))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_560) v_v_26_4) (<= ULTIMATE.start_malloc_ptr v_idx_560)) (or (= v_v_32_4 (select |#valid| v_idx_564)) (<= ULTIMATE.start_malloc_ptr v_idx_564)) (= v_v_2_4 (select |old(#valid)| v_idx_563)) (= v_v_4_4 (select |old(#memory_int)| v_idx_567))))))} [2019-01-18 14:53:00,630 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:00,630 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:00,805 WARN L276 ngHoareTripleChecker]: Post: {2147483602#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_576 Int)) (or (= 1 (select |#valid| v_idx_576)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_576) (< v_idx_576 ULTIMATE.start_malloc_ptr))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_10 Int)) (or (< v_prenex_10 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_10) (<= (+ (select |#memory_int| v_prenex_10) 1) 0))) (forall ((v_idx_580 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_580) (<= (+ (* 2 (select |#memory_int| v_idx_580)) 2) 0) (< v_idx_580 ULTIMATE.start_main_p1))) (forall ((v_idx_572 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_572) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_572)) (< v_idx_572 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:00,952 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:53:00,953 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:53:00,953 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:00,953 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:53:00,953 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:00,953 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:53:00,963 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:00,963 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:53:00,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:00,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:00,971 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:53:01,010 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,011 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-18 14:53:01,050 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,052 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,053 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-18 14:53:01,059 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,064 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,082 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:53:01,090 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-18 14:53:01,099 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-18 14:53:01,101 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,111 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,119 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,133 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:01,134 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:32, output treesize:28 [2019-01-18 14:53:01,138 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:01,138 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_26|, ULTIMATE.start_main_p3, |v_#valid_8|]. (let ((.cse0 (store |v_#valid_8| ULTIMATE.start_main_p1 1))) (and (= (store (store (store |v_#memory_int_26| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0) |#memory_int|) (= 0 (select .cse0 ULTIMATE.start_main_p2)) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0))) [2019-01-18 14:53:01,139 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:53:01,185 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,186 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 28 [2019-01-18 14:53:01,189 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,201 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:01,202 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:20 [2019-01-18 14:53:01,206 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:01,206 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_27|, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_27| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_27| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_27| ULTIMATE.start_main_p3)) (= |#memory_int| (store |v_#memory_int_27| ULTIMATE.start_main_p1 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= .cse0 0))) [2019-01-18 14:53:01,206 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:53:01,278 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,280 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,282 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,284 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,286 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:01,286 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 40 [2019-01-18 14:53:01,288 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:01,313 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:01,313 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:16 [2019-01-18 14:53:01,391 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:01,392 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_28|, ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_28| ULTIMATE.start_main_p2))) (and (= |#memory_int| (store |v_#memory_int_28| ULTIMATE.start_main_p2 (+ .cse0 (- 1)))) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_28| ULTIMATE.start_main_p3)) (= (select |v_#memory_int_28| ULTIMATE.start_main_p1) 1))) [2019-01-18 14:53:01,392 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:53:01,426 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {514#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:53:01,428 INFO L273 TraceCheckUtils]: 1: Hoare triple {514#(and (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {518#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-01-18 14:53:01,429 INFO L273 TraceCheckUtils]: 2: Hoare triple {518#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {522#(and (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} is VALID [2019-01-18 14:53:01,437 INFO L273 TraceCheckUtils]: 3: Hoare triple {522#(and (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} assume !(#memory_int[main_p1] >= 0); {507#false} is VALID [2019-01-18 14:53:01,438 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:01,438 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:53:01,547 INFO L273 TraceCheckUtils]: 3: Hoare triple {526#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {507#false} is VALID [2019-01-18 14:53:01,550 INFO L273 TraceCheckUtils]: 2: Hoare triple {530#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {526#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:01,551 INFO L273 TraceCheckUtils]: 1: Hoare triple {534#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {530#(<= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:01,556 INFO L273 TraceCheckUtils]: 0: Hoare triple {506#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {534#(<= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2 (+ (select (store |#memory_int| ULTIMATE.start_main_p1 (+ (select |#memory_int| ULTIMATE.start_main_p1) 1)) ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1))} is VALID [2019-01-18 14:53:01,556 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:01,577 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:53:01,577 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-01-18 14:53:01,577 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:53:01,578 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:53:01,578 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:53:01,578 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:53:01,596 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:53:01,596 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:53:01,597 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:53:01,597 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2019-01-18 14:53:01,597 INFO L87 Difference]: Start difference. First operand 14 states and 34 transitions. Second operand 8 states. [2019-01-18 14:53:02,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:02,149 INFO L93 Difference]: Finished difference Result 35 states and 68 transitions. [2019-01-18 14:53:02,149 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-18 14:53:02,149 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:53:02,150 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:53:02,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:53:02,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 41 transitions. [2019-01-18 14:53:02,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:53:02,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 41 transitions. [2019-01-18 14:53:02,152 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 41 transitions. [2019-01-18 14:53:02,213 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:53:02,214 INFO L225 Difference]: With dead ends: 35 [2019-01-18 14:53:02,215 INFO L226 Difference]: Without dead ends: 34 [2019-01-18 14:53:02,215 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=53, Invalid=79, Unknown=0, NotChecked=0, Total=132 [2019-01-18 14:53:02,216 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2019-01-18 14:53:02,245 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 15. [2019-01-18 14:53:02,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:53:02,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 15 states. [2019-01-18 14:53:02,245 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 15 states. [2019-01-18 14:53:02,245 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 15 states. [2019-01-18 14:53:02,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:02,248 INFO L93 Difference]: Finished difference Result 34 states and 65 transitions. [2019-01-18 14:53:02,248 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 65 transitions. [2019-01-18 14:53:02,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:02,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:02,249 INFO L74 IsIncluded]: Start isIncluded. First operand 15 states. Second operand 34 states. [2019-01-18 14:53:02,249 INFO L87 Difference]: Start difference. First operand 15 states. Second operand 34 states. [2019-01-18 14:53:02,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:02,251 INFO L93 Difference]: Finished difference Result 34 states and 65 transitions. [2019-01-18 14:53:02,251 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 65 transitions. [2019-01-18 14:53:02,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:02,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:02,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:53:02,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:53:02,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-01-18 14:53:02,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 38 transitions. [2019-01-18 14:53:02,253 INFO L78 Accepts]: Start accepts. Automaton has 15 states and 38 transitions. Word has length 4 [2019-01-18 14:53:02,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:53:02,254 INFO L480 AbstractCegarLoop]: Abstraction has 15 states and 38 transitions. [2019-01-18 14:53:02,254 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:53:02,254 INFO L276 IsEmpty]: Start isEmpty. Operand 15 states and 38 transitions. [2019-01-18 14:53:02,254 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:53:02,254 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:53:02,254 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:53:02,254 INFO L423 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:53:02,255 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:02,255 INFO L82 PathProgramCache]: Analyzing trace with hash 933644, now seen corresponding path program 1 times [2019-01-18 14:53:02,255 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:53:02,255 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:02,256 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:02,256 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:02,256 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:53:02,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:02,300 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:02,305 INFO L273 TraceCheckUtils]: 1: Hoare triple {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:02,306 INFO L273 TraceCheckUtils]: 2: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:02,306 INFO L273 TraceCheckUtils]: 3: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-18 14:53:02,306 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:02,307 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:02,307 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:53:02,307 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:53:02,307 INFO L207 CegarAbsIntRunner]: [0], [10], [16], [17] [2019-01-18 14:53:02,309 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:53:02,309 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:04,666 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:04,667 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:04,667 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:04,667 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:04,668 WARN L224 ngHoareTripleChecker]: Pre: {2147483599#(forall ((v_idx_599 Int) (v_idx_600 Int) (v_idx_598 Int) (v_idx_603 Int) (v_idx_604 Int) (v_idx_601 Int) (v_idx_602 Int) (v_idx_607 Int) (v_idx_608 Int) (v_idx_605 Int) (v_idx_606 Int)) (exists ((v_v_32_5 Int) (v_v_43_5 Int) (v_v_4_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (or (< v_idx_600 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_600) v_v_28_5)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_602) (= (select |c_#valid| v_idx_602) v_v_32_5)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_604 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_604) v_v_34_5)) (or (< v_idx_608 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_608) v_v_43_5)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_606) (= (select |c_#memory_int| v_idx_606) v_v_41_5)) (= (select |c_old(#memory_int)| v_idx_605) v_v_4_5) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_603 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_603) (= 1 (select |c_#valid| v_idx_603))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_599) 0) (< v_idx_599 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_599)) (or (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_598)) (<= c_ULTIMATE.start_malloc_ptr v_idx_598)) (= v_v_2_5 (select |c_old(#valid)| v_idx_601)) (or (< v_idx_607 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_607) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_607)))))} [2019-01-18 14:53:04,668 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:53:04,668 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:53:04,669 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_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_46_5 Int) (v_v_2_5 Int) (v_v_45_5 Int) (v_v_34_5 Int) (v_v_44_5 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_614) (< v_idx_614 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_614))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_610 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_610) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_610))) (or (<= c_ULTIMATE.start_main_p1 v_idx_617) (= (select |c_#memory_int| v_idx_617) v_v_44_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_612)) (or (= (select |c_#memory_int| v_idx_619) v_v_46_5) (< v_idx_619 (+ c_ULTIMATE.start_main_p1 1))) (<= (- (- v_v_45_5) v_v_45_5) 0) (or (< v_idx_615 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_615) v_v_34_5)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_609) (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_609))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_613) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_613)) (or (< v_idx_618 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_618) (= (select |c_#memory_int| v_idx_618) v_v_45_5)) (<= 0 v_v_45_5) (or (< v_idx_611 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_611) v_v_28_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_616)))))} [2019-01-18 14:53:04,669 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:05,476 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:05,476 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:05,652 WARN L270 ngHoareTripleChecker]: Pre: {2147483599#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_607 Int)) (or (< v_idx_607 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_607) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_607))) (forall ((v_idx_599 Int)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_599) 0) (< v_idx_599 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_599))) (forall ((v_idx_603 Int)) (or (< v_idx_603 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_603) (= 1 (select |#valid| v_idx_603)))))} [2019-01-18 14:53:05,652 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:53:05,652 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:53:05,697 WARN L276 ngHoareTripleChecker]: Post: {2147483598#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_614 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_614) (< v_idx_614 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_614)))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (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))) (forall ((v_prenex_11 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_11))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_11) (< v_prenex_11 ULTIMATE.start_main_p1))) (forall ((v_idx_610 Int)) (or (< v_idx_610 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_610) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_610)))))} [2019-01-18 14:53:07,913 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:07,914 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:07,914 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:07,914 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:07,914 WARN L224 ngHoareTripleChecker]: Pre: {2147483597#(forall ((v_idx_621 Int) (v_idx_622 Int) (v_idx_630 Int) (v_idx_620 Int) (v_idx_625 Int) (v_idx_626 Int) (v_idx_623 Int) (v_idx_624 Int) (v_idx_629 Int) (v_idx_627 Int) (v_idx_628 Int)) (exists ((v_v_32_5 Int) (v_v_43_5 Int) (v_v_4_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_5 (select |c_old(#valid)| v_idx_623)) (or (< v_idx_622 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_622) v_v_28_5)) (or (= (select |c_#valid| v_idx_626) v_v_34_5) (< v_idx_626 (+ c_ULTIMATE.start_main_p3 1))) (or (= v_v_32_5 (select |c_#valid| v_idx_624)) (<= c_ULTIMATE.start_malloc_ptr v_idx_624)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_621)) (< v_idx_621 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_621)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_629 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_629) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_629)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_628) (= (select |c_#memory_int| v_idx_628) v_v_41_5)) (or (< v_idx_630 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_630) v_v_43_5)) (or (= (select |c_#valid| v_idx_625) 1) (< v_idx_625 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_625)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_620) v_v_26_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_620)) (= (select |c_old(#memory_int)| v_idx_627) v_v_4_5))))} [2019-01-18 14:53:07,914 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:07,915 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-18 14:53:07,915 WARN L230 ngHoareTripleChecker]: Post: {2147483596#(forall ((v_idx_632 Int) (v_idx_633 Int) (v_idx_641 Int) (v_idx_631 Int) (v_idx_636 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_635 Int) (v_idx_638 Int) (v_idx_639 Int) (v_idx_640 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= v_v_47_5 (select |c_#memory_int| v_idx_639)) (<= c_ULTIMATE.start_main_p2 v_idx_639)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_638)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_633) v_v_28_5) (< v_idx_633 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_635) (= (select |c_#valid| v_idx_635) v_v_32_5)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_640) (= (select |c_#memory_int| v_idx_640) v_v_48_5) (< v_idx_640 c_ULTIMATE.start_main_p2)) (= v_v_2_5 (select |c_old(#valid)| v_idx_634)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_641 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_641) v_v_49_5)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_632) (< v_idx_632 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_632))) (or (< v_idx_637 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_5 (select |c_#valid| v_idx_637))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_631) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_631) v_v_26_5)) (or (< v_idx_636 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_636)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_636)))))} [2019-01-18 14:53:07,915 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:08,401 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:08,402 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:08,436 WARN L270 ngHoareTripleChecker]: Pre: {2147483597#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_621 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_621)) (< v_idx_621 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_621))) (forall ((v_idx_629 Int)) (or (< v_idx_629 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_629) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_629))) (forall ((v_idx_625 Int)) (or (= (select |#valid| v_idx_625) 1) (< v_idx_625 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_625))))} [2019-01-18 14:53:08,437 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:08,437 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:08,665 WARN L276 ngHoareTripleChecker]: Post: {2147483596#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_636 Int)) (or (< v_idx_636 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_636)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_636))) (forall ((v_idx_632 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_632) (< v_idx_632 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_632)))))} [2019-01-18 14:53:11,342 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:11,343 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:11,343 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:11,343 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:11,343 WARN L224 ngHoareTripleChecker]: Pre: {2147483595#(forall ((v_idx_643 Int) (v_idx_644 Int) (v_idx_652 Int) (v_idx_642 Int) (v_idx_647 Int) (v_idx_648 Int) (v_idx_645 Int) (v_idx_646 Int) (v_idx_649 Int) (v_idx_650 Int) (v_idx_651 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_46_5 Int) (v_v_34_5 Int) (v_v_2_5 Int) (v_v_45_5 Int) (v_v_44_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_644) v_v_28_5) (< v_idx_644 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_648) v_v_34_5) (< v_idx_648 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_645)) (<= (- (- v_v_45_5) v_v_45_5) 0) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_650) (= (select |c_#memory_int| v_idx_650) v_v_44_5)) (or (= (select |c_#valid| v_idx_646) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_646)) (or (< v_idx_651 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_651) v_v_45_5) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_651)) (or (< v_idx_647 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_647) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_647)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_643) (< v_idx_643 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_643))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_642) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_642) v_v_26_5)) (<= 0 v_v_45_5) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_649)) (or (= (select |c_#memory_int| v_idx_652) v_v_46_5) (< v_idx_652 (+ c_ULTIMATE.start_main_p1 1))))))} [2019-01-18 14:53:11,343 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:53:11,343 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:53:11,344 WARN L230 ngHoareTripleChecker]: Post: {2147483594#(forall ((v_idx_654 Int) (v_idx_655 Int) (v_idx_663 Int) (v_idx_653 Int) (v_idx_658 Int) (v_idx_659 Int) (v_idx_656 Int) (v_idx_657 Int) (v_idx_661 Int) (v_idx_662 Int) (v_idx_660 Int)) (exists ((v_v_62_5 Int) (v_v_32_5 Int) (v_v_4_5 Int) (v_v_63_5 Int) (v_v_61_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_659) v_v_34_5) (< v_idx_659 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_658 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_658) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_658)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_653) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_653) v_v_26_5)) (= v_v_2_5 (select |c_old(#valid)| v_idx_656)) (<= (- (- v_v_62_5) v_v_62_5) (- 2)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_655) v_v_28_5) (< v_idx_655 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= c_ULTIMATE.start_main_p2 v_idx_661) (= v_v_61_5 (select |c_#memory_int| v_idx_661))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_657) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_657)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_654)) (< v_idx_654 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_654)) (or (< v_idx_663 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_663) v_v_63_5)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_660)) (<= 1 v_v_62_5) (or (= v_v_62_5 (select |c_#memory_int| v_idx_662)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_662) (< v_idx_662 c_ULTIMATE.start_main_p2)))))} [2019-01-18 14:53:11,344 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:12,042 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:12,042 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:12,254 WARN L270 ngHoareTripleChecker]: Pre: {2147483595#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_651 Int)) (or (< v_idx_651 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_651) (<= 0 (* 2 (select |#memory_int| v_idx_651))))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_12 Int)) (or (<= 0 (select |#memory_int| v_prenex_12)) (< v_prenex_12 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_12))) (forall ((v_idx_647 Int)) (or (< v_idx_647 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_647) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_647))) (forall ((v_idx_643 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_643) (< v_idx_643 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_643)))))} [2019-01-18 14:53:12,254 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:53:12,255 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:53:12,296 WARN L276 ngHoareTripleChecker]: Post: {2147483594#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_662 Int)) (or (<= 1 (select |#memory_int| v_idx_662)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_662) (< v_idx_662 ULTIMATE.start_main_p2))) (forall ((v_prenex_13 Int)) (or (<= 2 (* 2 (select |#memory_int| v_prenex_13))) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_13) (< v_prenex_13 ULTIMATE.start_main_p2))) (forall ((v_idx_654 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_654)) (< v_idx_654 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_654))) (forall ((v_idx_658 Int)) (or (< v_idx_658 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_658) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_658))))} [2019-01-18 14:53:14,800 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:14,801 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:14,801 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:14,801 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:14,801 WARN L224 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_685 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_49_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (or (= v_v_28_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_677)) (< v_idx_677 (+ c_ULTIMATE.start_main_p3 1))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_684 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_684) (= (select |c_#memory_int| v_idx_684) v_v_48_5)) (or (< v_idx_681 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_681) v_v_34_5)) (or (< v_idx_676 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_676)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_676)) (or (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_675)) (<= c_ULTIMATE.start_malloc_ptr v_idx_675)) (or (= (select |c_#valid| v_idx_679) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_679)) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_682)) (or (< v_idx_685 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_685) v_v_49_5)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= (select |c_old(#valid)| v_idx_678) v_v_2_5) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_680) (< v_idx_680 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_680))) (or (= (select |c_#memory_int| v_idx_683) v_v_47_5) (<= c_ULTIMATE.start_main_p2 v_idx_683))))) (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_674 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_43_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_664) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_664) v_v_26_5)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_669 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_669)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_669)) (or (< v_idx_665 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_665) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_665))) (or (< v_idx_673 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_673) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_673)) (or (< v_idx_670 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_670) v_v_34_5)) (or (= (select |c_#memory_int| v_idx_672) v_v_41_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_672)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_5 (select |c_old(#memory_int)| v_idx_671)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_666) v_v_28_5) (< v_idx_666 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_667)) (or (= (select |c_#valid| v_idx_668) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_668)) (or (< v_idx_674 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_674) v_v_43_5))))))} [2019-01-18 14:53:14,801 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:53:14,801 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:53:14,802 WARN L230 ngHoareTripleChecker]: Post: {2147483592#(forall ((v_idx_687 Int) (v_idx_688 Int) (v_idx_696 Int) (v_idx_686 Int) (v_idx_689 Int) (v_idx_690 Int) (v_idx_691 Int) (v_idx_694 Int) (v_idx_695 Int) (v_idx_692 Int) (v_idx_693 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_64_5 Int) (v_v_65_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_66_5 Int) (v_v_2_5 Int) (v_v_34_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_687 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_687) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_687) 0)) (or (< v_idx_696 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_696) v_v_66_5)) (or (= v_v_32_5 (select |c_#valid| v_idx_690)) (<= c_ULTIMATE.start_malloc_ptr v_idx_690)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (<= 0 v_v_65_5) (= v_v_2_5 (select |c_old(#valid)| v_idx_689)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_686) (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_686))) (or (< v_idx_692 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_692) v_v_34_5)) (or (< v_idx_691 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_691)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_691)) (or (= (select |c_#memory_int| v_idx_694) v_v_64_5) (<= c_ULTIMATE.start_main_p1 v_idx_694)) (or (< v_idx_695 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_695) (= (select |c_#memory_int| v_idx_695) v_v_65_5)) (or (< v_idx_688 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_688) v_v_28_5)) (= (select |c_old(#memory_int)| v_idx_693) v_v_4_5) (<= (- (- v_v_65_5) v_v_65_5) 0))))} [2019-01-18 14:53:14,802 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:15,571 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:15,571 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:23,839 WARN L181 SmtUtils]: Spent 8.27 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:23,839 WARN L270 ngHoareTripleChecker]: Pre: {2147483593#(or (forall ((v_idx_676 Int) (v_idx_677 Int) (v_idx_685 Int) (v_idx_675 Int) (v_idx_678 Int) (v_idx_679 Int) (v_idx_680 Int) (v_idx_683 Int) (v_idx_684 Int) (v_idx_681 Int) (v_idx_682 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_49_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (or (= v_v_28_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_677)) (< v_idx_677 (+ ULTIMATE.start_main_p3 1))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_684 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_684) (= (select |#memory_int| v_idx_684) v_v_48_5)) (or (< v_idx_681 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_681) v_v_34_5)) (or (< v_idx_676 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_676)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_676)) (or (= v_v_26_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_675)) (<= ULTIMATE.start_malloc_ptr v_idx_675)) (or (= (select |#valid| v_idx_679) v_v_32_5) (<= ULTIMATE.start_malloc_ptr v_idx_679)) (= v_v_4_5 (select |old(#memory_int)| v_idx_682)) (or (< v_idx_685 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_685) v_v_49_5)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= (select |old(#valid)| v_idx_678) v_v_2_5) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_680) (< v_idx_680 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_680))) (or (= (select |#memory_int| v_idx_683) v_v_47_5) (<= ULTIMATE.start_main_p2 v_idx_683))))) (forall ((v_idx_665 Int) (v_idx_666 Int) (v_idx_674 Int) (v_idx_664 Int) (v_idx_669 Int) (v_idx_667 Int) (v_idx_668 Int) (v_idx_672 Int) (v_idx_673 Int) (v_idx_670 Int) (v_idx_671 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_43_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (or (<= ULTIMATE.start_malloc_ptr v_idx_664) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_664) v_v_26_5)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_669 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_669)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_669)) (or (< v_idx_665 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_665) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_665))) (or (< v_idx_673 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_673) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_673)) (or (< v_idx_670 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_670) v_v_34_5)) (or (= (select |#memory_int| v_idx_672) v_v_41_5) (<= ULTIMATE.start_malloc_ptr v_idx_672)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_5 (select |old(#memory_int)| v_idx_671)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_666) v_v_28_5) (< v_idx_666 (+ ULTIMATE.start_main_p3 1))) (= v_v_2_5 (select |old(#valid)| v_idx_667)) (or (= (select |#valid| v_idx_668) v_v_32_5) (<= ULTIMATE.start_malloc_ptr v_idx_668)) (or (< v_idx_674 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_674) v_v_43_5))))))} [2019-01-18 14:53:23,839 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:53:23,839 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:53:24,006 WARN L276 ngHoareTripleChecker]: Post: {2147483592#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_691 Int)) (or (< v_idx_691 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_691)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_691))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_14 Int)) (or (<= 0 (select |#memory_int| v_prenex_14)) (< v_prenex_14 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_14))) (forall ((v_idx_695 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_695))) (< v_idx_695 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_695))) (forall ((v_idx_687 Int)) (or (< v_idx_687 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_687) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_687) 0))))} [2019-01-18 14:53:26,574 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:26,575 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:26,575 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:26,575 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:26,575 WARN L224 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_703 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int)) (exists ((v_v_43_5 Int) (v_v_4_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_707 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_707) v_v_43_5)) (or (= (select |c_#valid| v_idx_703) v_v_34_5) (< v_idx_703 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_706) 0) (< v_idx_706 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_706)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_699) v_v_28_5) (< v_idx_699 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_702 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_702)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_702)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_697) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_697) v_v_26_5)) (= (select |c_old(#memory_int)| v_idx_704) v_v_4_5) (= v_v_2_5 (select |c_old(#valid)| v_idx_700)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_701) (= v_v_32_5 (select |c_#valid| v_idx_701))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_705) (= (select |c_#memory_int| v_idx_705) v_v_41_5)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_698) (< v_idx_698 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_698)))))) (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_714 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_717) (< v_idx_717 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_717) v_v_48_5)) (or (= v_v_28_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_710)) (< v_idx_710 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_718) v_v_49_5) (< v_idx_718 (+ c_ULTIMATE.start_main_p2 1))) (or (= (select |c_#valid| v_idx_712) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_712)) (or (= (select |c_#valid| v_idx_714) v_v_34_5) (< v_idx_714 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_main_p2 v_idx_716) (= (select |c_#memory_int| v_idx_716) v_v_47_5)) (or (= (select |c_#valid| v_idx_713) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_713) (< v_idx_713 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_2_5 (select |c_old(#valid)| v_idx_711)) (= (select |c_old(#memory_int)| v_idx_715) v_v_4_5) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_708) (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_708))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_709) 0) (< v_idx_709 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_709))))))} [2019-01-18 14:53:26,576 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:26,576 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:26,576 WARN L230 ngHoareTripleChecker]: Post: {2147483590#(forall ((v_idx_720 Int) (v_idx_721 Int) (v_idx_724 Int) (v_idx_725 Int) (v_idx_722 Int) (v_idx_723 Int) (v_idx_728 Int) (v_idx_729 Int) (v_idx_726 Int) (v_idx_727 Int) (v_idx_719 Int)) (exists ((v_v_4_5 Int) (v_v_32_5 Int) (v_v_104_5 Int) (v_v_28_5 Int) (v_v_103_5 Int) (v_v_26_5 Int) (v_v_105_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_726) v_v_4_5) (or (= (select |c_#valid| v_idx_725) v_v_34_5) (< v_idx_725 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_724 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_724)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_724)) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_728) (= v_v_104_5 (select |c_#memory_int| v_idx_728)) (< v_idx_728 c_ULTIMATE.start_main_p2)) (or (= v_v_105_5 (select |c_#memory_int| v_idx_729)) (< v_idx_729 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_28_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_721)) (< v_idx_721 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_5 (select |c_old(#valid)| v_idx_722)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_720 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_720) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_720))) (or (= (select |c_#valid| v_idx_723) v_v_32_5) (<= c_ULTIMATE.start_malloc_ptr v_idx_723)) (or (<= c_ULTIMATE.start_main_p2 v_idx_727) (= (select |c_#memory_int| v_idx_727) v_v_103_5)) (or (= v_v_26_5 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_719)) (<= c_ULTIMATE.start_malloc_ptr v_idx_719)))))} [2019-01-18 14:53:26,576 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:27,160 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:27,161 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:35,328 WARN L181 SmtUtils]: Spent 8.17 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:35,328 WARN L270 ngHoareTripleChecker]: Pre: {2147483591#(or (forall ((v_idx_698 Int) (v_idx_699 Int) (v_idx_697 Int) (v_idx_702 Int) (v_idx_703 Int) (v_idx_700 Int) (v_idx_701 Int) (v_idx_706 Int) (v_idx_707 Int) (v_idx_704 Int) (v_idx_705 Int)) (exists ((v_v_43_5 Int) (v_v_4_5 Int) (v_v_32_5 Int) (v_v_41_5 Int) (v_v_28_5 Int) (v_v_26_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_707 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_707) v_v_43_5)) (or (= (select |#valid| v_idx_703) v_v_34_5) (< v_idx_703 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#memory_int| v_idx_706) 0) (< v_idx_706 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_706)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_699) v_v_28_5) (< v_idx_699 (+ ULTIMATE.start_main_p3 1))) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_702 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_702)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_702)) (or (<= ULTIMATE.start_malloc_ptr v_idx_697) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_697) v_v_26_5)) (= (select |old(#memory_int)| v_idx_704) v_v_4_5) (= v_v_2_5 (select |old(#valid)| v_idx_700)) (or (<= ULTIMATE.start_malloc_ptr v_idx_701) (= v_v_32_5 (select |#valid| v_idx_701))) (or (<= ULTIMATE.start_malloc_ptr v_idx_705) (= (select |#memory_int| v_idx_705) v_v_41_5)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_698) (< v_idx_698 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_698)))))) (forall ((v_idx_710 Int) (v_idx_713 Int) (v_idx_714 Int) (v_idx_711 Int) (v_idx_712 Int) (v_idx_717 Int) (v_idx_718 Int) (v_idx_715 Int) (v_idx_716 Int) (v_idx_708 Int) (v_idx_709 Int)) (exists ((v_v_32_5 Int) (v_v_4_5 Int) (v_v_28_5 Int) (v_v_49_5 Int) (v_v_26_5 Int) (v_v_48_5 Int) (v_v_47_5 Int) (v_v_34_5 Int) (v_v_2_5 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_717) (< v_idx_717 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_717) v_v_48_5)) (or (= v_v_28_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_710)) (< v_idx_710 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#memory_int| v_idx_718) v_v_49_5) (< v_idx_718 (+ ULTIMATE.start_main_p2 1))) (or (= (select |#valid| v_idx_712) v_v_32_5) (<= ULTIMATE.start_malloc_ptr v_idx_712)) (or (= (select |#valid| v_idx_714) v_v_34_5) (< v_idx_714 (+ ULTIMATE.start_main_p3 1))) (or (<= ULTIMATE.start_main_p2 v_idx_716) (= (select |#memory_int| v_idx_716) v_v_47_5)) (or (= (select |#valid| v_idx_713) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_713) (< v_idx_713 ULTIMATE.start_malloc_ptr)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_2_5 (select |old(#valid)| v_idx_711)) (= (select |old(#memory_int)| v_idx_715) v_v_4_5) (or (<= ULTIMATE.start_malloc_ptr v_idx_708) (= v_v_26_5 (select |ULTIMATE.start_malloc_old_#valid| v_idx_708))) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_709) 0) (< v_idx_709 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_709))))))} [2019-01-18 14:53:35,328 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:35,328 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:35,486 WARN L276 ngHoareTripleChecker]: Post: {2147483590#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_720 Int)) (or (< v_idx_720 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_720) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_720)))) (forall ((v_idx_724 Int)) (or (< v_idx_724 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_724)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_724))))} [2019-01-18 14:53:36,634 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:53:36,635 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:53:36,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:36,636 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:53:36,636 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:36,636 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:53:36,647 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:36,647 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:53:36,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:36,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:36,663 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:53:36,679 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:53:36,684 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 17 [2019-01-18 14:53:36,712 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 16 [2019-01-18 14:53:36,739 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:36,756 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:36,762 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:36,770 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:53:36,771 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 3 variables, input treesize:12, output treesize:16 [2019-01-18 14:53:36,775 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:36,775 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_31|, ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (= |#memory_int| (store (store (store |v_#memory_int_31| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0)) [2019-01-18 14:53:36,775 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p1, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:53:36,786 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:53:36,787 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 5 [2019-01-18 14:53:36,788 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:53:36,790 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:53:36,791 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:16, output treesize:5 [2019-01-18 14:53:36,801 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:53:36,801 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_32|]. (let ((.cse0 (select |v_#memory_int_32| ULTIMATE.start_main_p2))) (and (= .cse0 0) (= (store |v_#memory_int_32| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|))) [2019-01-18 14:53:36,802 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) [2019-01-18 14:53:36,810 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:36,811 INFO L273 TraceCheckUtils]: 1: Hoare triple {679#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-18 14:53:36,812 INFO L273 TraceCheckUtils]: 2: Hoare triple {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume #memory_int[main_p1] >= 0; {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} is VALID [2019-01-18 14:53:36,812 INFO L273 TraceCheckUtils]: 3: Hoare triple {687#(= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-18 14:53:36,813 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:36,813 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:53:36,827 INFO L273 TraceCheckUtils]: 3: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {678#false} is VALID [2019-01-18 14:53:36,828 INFO L273 TraceCheckUtils]: 2: Hoare triple {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:36,829 INFO L273 TraceCheckUtils]: 1: Hoare triple {700#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {680#(<= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:53:36,830 INFO L273 TraceCheckUtils]: 0: Hoare triple {677#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {700#(<= (select |#memory_int| ULTIMATE.start_main_p2) 1)} is VALID [2019-01-18 14:53:36,831 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:36,851 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 2 imperfect interpolant sequences. [2019-01-18 14:53:36,851 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2, 2] total 4 [2019-01-18 14:53:36,851 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-18 14:53:36,852 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:53:36,852 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:53:36,852 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-18 14:53:36,856 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:53:36,856 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-18 14:53:36,856 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-18 14:53:36,856 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-18 14:53:36,857 INFO L87 Difference]: Start difference. First operand 15 states and 38 transitions. Second operand 4 states. [2019-01-18 14:53:37,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:37,005 INFO L93 Difference]: Finished difference Result 30 states and 79 transitions. [2019-01-18 14:53:37,005 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-18 14:53:37,006 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-18 14:53:37,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:53:37,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:53:37,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2019-01-18 14:53:37,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-18 14:53:37,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 23 transitions. [2019-01-18 14:53:37,007 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 23 transitions. [2019-01-18 14:53:37,029 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:53:37,031 INFO L225 Difference]: With dead ends: 30 [2019-01-18 14:53:37,031 INFO L226 Difference]: Without dead ends: 29 [2019-01-18 14:53:37,032 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 3 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2019-01-18 14:53:37,032 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2019-01-18 14:53:37,127 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 23. [2019-01-18 14:53:37,127 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:53:37,127 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 23 states. [2019-01-18 14:53:37,127 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 23 states. [2019-01-18 14:53:37,128 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 23 states. [2019-01-18 14:53:37,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:37,130 INFO L93 Difference]: Finished difference Result 29 states and 78 transitions. [2019-01-18 14:53:37,130 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 78 transitions. [2019-01-18 14:53:37,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:37,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:37,131 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand 29 states. [2019-01-18 14:53:37,131 INFO L87 Difference]: Start difference. First operand 23 states. Second operand 29 states. [2019-01-18 14:53:37,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:53:37,133 INFO L93 Difference]: Finished difference Result 29 states and 78 transitions. [2019-01-18 14:53:37,133 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 78 transitions. [2019-01-18 14:53:37,134 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:53:37,134 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:53:37,134 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:53:37,134 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:53:37,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-01-18 14:53:37,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 74 transitions. [2019-01-18 14:53:37,136 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 74 transitions. Word has length 4 [2019-01-18 14:53:37,136 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:53:37,136 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 74 transitions. [2019-01-18 14:53:37,136 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-18 14:53:37,136 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 74 transitions. [2019-01-18 14:53:37,137 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:53:37,137 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:53:37,137 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:53:37,137 INFO L423 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:53:37,138 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:53:37,138 INFO L82 PathProgramCache]: Analyzing trace with hash 933518, now seen corresponding path program 1 times [2019-01-18 14:53:37,138 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:53:37,139 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:37,139 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:53:37,139 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:53:37,139 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:53:37,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:53:37,298 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {848#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:53:37,300 INFO L273 TraceCheckUtils]: 1: Hoare triple {848#(and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p2)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {849#(and (or (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3))) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3)))} is VALID [2019-01-18 14:53:37,301 INFO L273 TraceCheckUtils]: 2: Hoare triple {849#(and (or (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3))) (or (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p3)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:53:37,301 INFO L273 TraceCheckUtils]: 3: Hoare triple {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-18 14:53:37,302 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:53:37,302 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:53:37,302 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:53:37,302 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:53:37,302 INFO L207 CegarAbsIntRunner]: [0], [10], [12], [15] [2019-01-18 14:53:37,303 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:53:37,303 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:53:39,725 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:39,725 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:39,726 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:39,726 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:39,726 WARN L224 ngHoareTripleChecker]: Pre: {2147483587#(forall ((v_idx_753 Int) (v_idx_754 Int) (v_idx_751 Int) (v_idx_752 Int) (v_idx_746 Int) (v_idx_747 Int) (v_idx_755 Int) (v_idx_756 Int) (v_idx_748 Int) (v_idx_749 Int) (v_idx_750 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_750) (= v_v_32_6 (select |c_#valid| v_idx_750))) (or (= (select |c_#memory_int| v_idx_754) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_754)) (= (select |c_old(#memory_int)| v_idx_753) v_v_4_6) (= v_v_2_6 (select |c_old(#valid)| v_idx_749)) (or (= 1 (select |c_#valid| v_idx_751)) (< v_idx_751 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_751)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_747) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_747)) (< v_idx_747 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_746) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_746) v_v_26_6)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_755) (= (select |c_#memory_int| v_idx_755) 0) (< v_idx_755 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_748 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_748))) (or (= v_v_34_6 (select |c_#valid| v_idx_752)) (< v_idx_752 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_756 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_756) v_v_43_6)))))} [2019-01-18 14:53:39,726 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:39,726 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:39,726 WARN L230 ngHoareTripleChecker]: Post: {2147483586#(forall ((v_idx_764 Int) (v_idx_765 Int) (v_idx_762 Int) (v_idx_763 Int) (v_idx_757 Int) (v_idx_758 Int) (v_idx_766 Int) (v_idx_767 Int) (v_idx_759 Int) (v_idx_760 Int) (v_idx_761 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_767) v_v_46_6) (< v_idx_767 (+ c_ULTIMATE.start_main_p2 1))) (= v_v_2_6 (select |c_old(#valid)| v_idx_760)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_758) (< v_idx_758 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_758) 0)) (or (= (select |c_#valid| v_idx_763) v_v_34_6) (< v_idx_763 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_766 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_766) (= (select |c_#memory_int| v_idx_766) v_v_45_6)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_762) (= (select |c_#valid| v_idx_762) 1) (< v_idx_762 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_main_p2 v_idx_765) (= (select |c_#memory_int| v_idx_765) v_v_44_6)) (= (select |c_old(#memory_int)| v_idx_764) v_v_4_6) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_759 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_759) v_v_28_6)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_757) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_757) v_v_26_6)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_761) (= v_v_32_6 (select |c_#valid| v_idx_761))))))} [2019-01-18 14:53:39,727 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:40,202 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:40,202 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:40,413 WARN L270 ngHoareTripleChecker]: Pre: {2147483587#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_751 Int)) (or (= 1 (select |#valid| v_idx_751)) (< v_idx_751 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_751))) (forall ((v_idx_747 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_747) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_747)) (< v_idx_747 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_755 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_755) (= (select |#memory_int| v_idx_755) 0) (< v_idx_755 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:40,414 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:40,414 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:40,445 WARN L276 ngHoareTripleChecker]: Post: {2147483586#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_762 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_762) (= (select |#valid| v_idx_762) 1) (< v_idx_762 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_758 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_758) (< v_idx_758 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_758) 0))))} [2019-01-18 14:53:42,799 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:42,799 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:42,799 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:42,799 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:42,799 WARN L224 ngHoareTripleChecker]: Pre: {2147483585#(forall ((v_idx_775 Int) (v_idx_776 Int) (v_idx_773 Int) (v_idx_774 Int) (v_idx_768 Int) (v_idx_769 Int) (v_idx_777 Int) (v_idx_778 Int) (v_idx_771 Int) (v_idx_772 Int) (v_idx_770 Int)) (exists ((v_v_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_43_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= (select |c_old(#memory_int)| v_idx_775) v_v_4_6) (or (= (select |c_#memory_int| v_idx_777) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_777) (< v_idx_777 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_776) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_776)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_768) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_768) v_v_26_6)) (or (< v_idx_773 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_773) (= (select |c_#valid| v_idx_773) 1)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_778 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_778) v_v_43_6)) (or (< v_idx_774 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_774) v_v_34_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_771)) (or (= (select |c_#valid| v_idx_772) v_v_32_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_772)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_770) v_v_28_6) (< v_idx_770 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_769 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_769) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_769) 0)))))} [2019-01-18 14:53:42,800 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:53:42,800 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:53:42,800 WARN L230 ngHoareTripleChecker]: Post: {2147483584#(forall ((v_idx_786 Int) (v_idx_787 Int) (v_idx_784 Int) (v_idx_785 Int) (v_idx_779 Int) (v_idx_788 Int) (v_idx_789 Int) (v_idx_782 Int) (v_idx_783 Int) (v_idx_780 Int) (v_idx_781 Int)) (exists ((v_v_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_782)) (or (= 1 (select |c_#valid| v_idx_784)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_784) (< v_idx_784 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_783) v_v_32_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_783)) (or (< v_idx_789 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_789) v_v_43_6)) (or (< v_idx_780 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_780) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_780) 0)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_786) v_v_4_6) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_788) (= (select |c_#memory_int| v_idx_788) 1) (< v_idx_788 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_781) v_v_28_6) (< v_idx_781 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_787) (= (select |c_#memory_int| v_idx_787) v_v_41_6)) (or (= (select |c_#valid| v_idx_785) v_v_34_6) (< v_idx_785 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_779) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_779) v_v_26_6)))))} [2019-01-18 14:53:42,800 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:43,256 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:43,256 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:43,481 WARN L270 ngHoareTripleChecker]: Pre: {2147483585#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_769 Int)) (or (< v_idx_769 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_769) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_769) 0))) (forall ((v_idx_777 Int)) (or (= (select |#memory_int| v_idx_777) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_777) (< v_idx_777 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_773 Int)) (or (< v_idx_773 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_773) (= (select |#valid| v_idx_773) 1))))} [2019-01-18 14:53:43,481 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:53:43,481 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:53:43,512 WARN L276 ngHoareTripleChecker]: Post: {2147483584#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_780 Int)) (or (< v_idx_780 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_780) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_780) 0))) (forall ((v_idx_788 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_788) (= (select |#memory_int| v_idx_788) 1) (< v_idx_788 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_784 Int)) (or (= 1 (select |#valid| v_idx_784)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_784) (< v_idx_784 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:46,243 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:46,243 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:46,243 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:46,244 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:46,244 WARN L224 ngHoareTripleChecker]: Pre: {2147483583#(forall ((v_idx_797 Int) (v_idx_798 Int) (v_idx_795 Int) (v_idx_796 Int) (v_idx_799 Int) (v_idx_800 Int) (v_idx_790 Int) (v_idx_793 Int) (v_idx_794 Int) (v_idx_791 Int) (v_idx_792 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_793)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_795) (< v_idx_795 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_795) 1)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_794) (= (select |c_#valid| v_idx_794) v_v_32_6)) (or (< v_idx_792 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_792) v_v_28_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_799 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_799) (= (select |c_#memory_int| v_idx_799) 0)) (or (= (select |c_#memory_int| v_idx_800) v_v_43_6) (< v_idx_800 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_790) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_790) v_v_26_6)) (or (= (select |c_#memory_int| v_idx_798) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_798)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_791) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_791)) (< v_idx_791 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_796) v_v_34_6) (< v_idx_796 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#memory_int)| v_idx_797) v_v_4_6))))} [2019-01-18 14:53:46,244 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:46,244 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:46,244 WARN L230 ngHoareTripleChecker]: Post: {2147483582#(forall ((v_idx_801 Int) (v_idx_802 Int) (v_idx_810 Int) (v_idx_811 Int) (v_idx_805 Int) (v_idx_806 Int) (v_idx_803 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int) (v_idx_808 Int)) (exists ((v_v_84_6 Int) (v_v_4_6 Int) (v_v_83_6 Int) (v_v_85_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_806) 1) (< v_idx_806 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_806)) (<= (- v_v_84_6 (- v_v_84_6)) (- 2)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_801) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_801) v_v_26_6)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_805) (= (select |c_#valid| v_idx_805) v_v_32_6)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_808)) (= v_v_2_6 (select |c_old(#valid)| v_idx_804)) (or (< v_idx_807 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_807) v_v_34_6)) (or (= (select |c_#memory_int| v_idx_811) v_v_85_6) (< v_idx_811 (+ c_ULTIMATE.start_main_p1 1))) (or (= (select |c_#memory_int| v_idx_809) v_v_83_6) (<= c_ULTIMATE.start_main_p1 v_idx_809)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#memory_int| v_idx_810) v_v_84_6) (< v_idx_810 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_810)) (<= (+ v_v_84_6 1) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_803) v_v_28_6) (< v_idx_803 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_802) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_802) 0) (< v_idx_802 c_ULTIMATE.start_malloc_ptr)))))} [2019-01-18 14:53:46,244 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:46,602 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:46,602 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:46,768 WARN L270 ngHoareTripleChecker]: Pre: {2147483583#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_799 Int)) (or (< v_idx_799 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_799) (= (select |#memory_int| v_idx_799) 0))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_795 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_795) (< v_idx_795 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_795) 1))) (forall ((v_idx_791 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_791) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_791)) (< v_idx_791 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:46,769 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:53:46,769 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:53:46,812 WARN L276 ngHoareTripleChecker]: Post: {2147483582#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_prenex_15 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (<= (+ (select |#memory_int| v_prenex_15) 1) 0) (< v_prenex_15 ULTIMATE.start_main_p1))) (forall ((v_idx_806 Int)) (or (= (select |#valid| v_idx_806) 1) (< v_idx_806 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_806))) (forall ((v_idx_810 Int)) (or (< v_idx_810 ULTIMATE.start_main_p1) (<= (+ (* 2 (select |#memory_int| v_idx_810)) 2) 0) (<= (+ ULTIMATE.start_main_p1 1) v_idx_810))) (forall ((v_idx_802 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_802) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_802) 0) (< v_idx_802 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:53:49,211 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:53:49,212 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:53:49,212 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:53:49,212 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:53:49,212 WARN L224 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_823 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_827) (= (select |c_#valid| v_idx_827) v_v_32_6)) (or (= (select |c_#memory_int| v_idx_833) v_v_46_6) (< v_idx_833 (+ c_ULTIMATE.start_main_p2 1))) (or (< v_idx_824 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_824) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_824) 0)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_830)) (or (= v_v_28_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_825)) (< v_idx_825 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_829) v_v_34_6) (< v_idx_829 (+ c_ULTIMATE.start_main_p3 1))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_823) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_823) v_v_26_6)) (or (< v_idx_832 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_832) (= (select |c_#memory_int| v_idx_832) v_v_45_6)) (or (= (select |c_#memory_int| v_idx_831) v_v_44_6) (<= c_ULTIMATE.start_main_p2 v_idx_831)) (= v_v_2_6 (select |c_old(#valid)| v_idx_826)) (or (= 1 (select |c_#valid| v_idx_828)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_828) (< v_idx_828 c_ULTIMATE.start_malloc_ptr))))) (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_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_812) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_812) v_v_26_6)) (or (= (select |c_#valid| v_idx_818) v_v_34_6) (< v_idx_818 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_819)) (or (= (select |c_#memory_int| v_idx_820) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_820)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_816) (= (select |c_#valid| v_idx_816) v_v_32_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (= v_v_2_6 (select |c_old(#valid)| v_idx_815)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_814 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_814))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_821) (= (select |c_#memory_int| v_idx_821) 0) (< v_idx_821 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_817) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_817) (< v_idx_817 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_822 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_822) v_v_43_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_813) 0) (< v_idx_813 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_813))))))} [2019-01-18 14:53:49,212 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:49,212 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:49,213 WARN L230 ngHoareTripleChecker]: Post: {2147483580#(forall ((v_idx_841 Int) (v_idx_842 Int) (v_idx_840 Int) (v_idx_834 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_844 Int) (v_idx_838 Int) (v_idx_839 Int) (v_idx_836 Int) (v_idx_837 Int)) (exists ((v_v_4_6 Int) (v_v_86_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_88_6 Int) (v_v_87_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_836 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_836) v_v_28_6)) (or (= (select |c_#memory_int| v_idx_842) v_v_86_6) (<= c_ULTIMATE.start_main_p2 v_idx_842)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_839) (< v_idx_839 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_839) 1)) (= v_v_2_6 (select |c_old(#valid)| v_idx_837)) (or (< v_idx_843 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_843) (= (select |c_#memory_int| v_idx_843) v_v_87_6)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (< v_idx_844 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_844) v_v_88_6)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_835 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_835)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_841)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_840) v_v_34_6) (< v_idx_840 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_834) v_v_26_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_834)) (or (= (select |c_#valid| v_idx_838) v_v_32_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_838)))))} [2019-01-18 14:53:49,213 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:53:49,747 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:53:49,747 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:53:57,994 WARN L181 SmtUtils]: Spent 8.25 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:53:57,995 WARN L270 ngHoareTripleChecker]: Pre: {2147483581#(or (forall ((v_idx_830 Int) (v_idx_831 Int) (v_idx_823 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_833 Int) (v_idx_827 Int) (v_idx_828 Int) (v_idx_825 Int) (v_idx_826 Int) (v_idx_829 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_34_6 Int) (v_v_45_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_827) (= (select |#valid| v_idx_827) v_v_32_6)) (or (= (select |#memory_int| v_idx_833) v_v_46_6) (< v_idx_833 (+ ULTIMATE.start_main_p2 1))) (or (< v_idx_824 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_824) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_824) 0)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= v_v_4_6 (select |old(#memory_int)| v_idx_830)) (or (= v_v_28_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_825)) (< v_idx_825 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#valid| v_idx_829) v_v_34_6) (< v_idx_829 (+ ULTIMATE.start_main_p3 1))) (or (<= ULTIMATE.start_malloc_ptr v_idx_823) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_823) v_v_26_6)) (or (< v_idx_832 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_832) (= (select |#memory_int| v_idx_832) v_v_45_6)) (or (= (select |#memory_int| v_idx_831) v_v_44_6) (<= ULTIMATE.start_main_p2 v_idx_831)) (= v_v_2_6 (select |old(#valid)| v_idx_826)) (or (= 1 (select |#valid| v_idx_828)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_828) (< v_idx_828 ULTIMATE.start_malloc_ptr))))) (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_4_6 Int) (v_v_41_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_812) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_812) v_v_26_6)) (or (= (select |#valid| v_idx_818) v_v_34_6) (< v_idx_818 (+ ULTIMATE.start_main_p3 1))) (= v_v_4_6 (select |old(#memory_int)| v_idx_819)) (or (= (select |#memory_int| v_idx_820) v_v_41_6) (<= ULTIMATE.start_malloc_ptr v_idx_820)) (or (<= ULTIMATE.start_malloc_ptr v_idx_816) (= (select |#valid| v_idx_816) v_v_32_6)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (= v_v_2_6 (select |old(#valid)| v_idx_815)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_814 (+ ULTIMATE.start_main_p3 1)) (= v_v_28_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_814))) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_821) (= (select |#memory_int| v_idx_821) 0) (< v_idx_821 ULTIMATE.start_malloc_ptr)) (or (= (select |#valid| v_idx_817) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_817) (< v_idx_817 ULTIMATE.start_malloc_ptr)) (or (< v_idx_822 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_822) v_v_43_6)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_813) 0) (< v_idx_813 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_813))))))} [2019-01-18 14:53:57,995 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-18 14:53:57,995 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:58,155 WARN L276 ngHoareTripleChecker]: Post: {2147483580#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_835 Int)) (or (< v_idx_835 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_835))) (forall ((v_idx_839 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_839) (< v_idx_839 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_839) 1))))} [2019-01-18 14:54:01,305 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:01,305 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:01,306 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:01,306 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:01,306 WARN L224 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_856 Int) (v_idx_857 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (or (< v_idx_866 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_866) v_v_46_6)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_861) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_861) (< v_idx_861 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_857) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_857) (< v_idx_857 c_ULTIMATE.start_malloc_ptr)) (or (<= c_ULTIMATE.start_main_p2 v_idx_864) (= (select |c_#memory_int| v_idx_864) v_v_44_6)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_863)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_856) v_v_26_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_856)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#valid)| v_idx_859) v_v_2_6) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_858) v_v_28_6) (< v_idx_858 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_860) v_v_32_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_860)) (or (< v_idx_865 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_865) (= v_v_45_6 (select |c_#memory_int| v_idx_865))) (or (< v_idx_862 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_862) v_v_34_6))))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_845 Int) (v_idx_846 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (= v_v_2_6 (select |c_old(#valid)| v_idx_848)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_847 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_847) v_v_28_6)) (or (< v_idx_851 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_851) v_v_34_6)) (or (= (select |c_#memory_int| v_idx_853) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_853)) (or (= v_v_32_6 (select |c_#valid| v_idx_849)) (<= c_ULTIMATE.start_malloc_ptr v_idx_849)) (or (< v_idx_855 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_855) v_v_43_6)) (or (< v_idx_846 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_846) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_846))) (= (select |c_old(#memory_int)| v_idx_852) v_v_4_6) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_854) (= 0 (select |c_#memory_int| v_idx_854)) (< v_idx_854 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_845) v_v_26_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_845)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_#valid| v_idx_850) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_850) (< v_idx_850 c_ULTIMATE.start_malloc_ptr))))))} [2019-01-18 14:54:01,306 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:54:01,306 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:54:01,306 WARN L230 ngHoareTripleChecker]: Post: {2147483578#(forall ((v_idx_874 Int) (v_idx_875 Int) (v_idx_872 Int) (v_idx_873 Int) (v_idx_867 Int) (v_idx_868 Int) (v_idx_876 Int) (v_idx_877 Int) (v_idx_869 Int) (v_idx_870 Int) (v_idx_871 Int)) (exists ((v_v_4_6 Int) (v_v_135_6 Int) (v_v_134_6 Int) (v_v_133_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_867) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_867) v_v_26_6)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_871) v_v_32_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_871)) (or (< v_idx_868 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_868)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_868)) (or (< v_idx_873 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_6 (select |c_#valid| v_idx_873))) (or (< v_idx_877 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_135_6 (select |c_#memory_int| v_idx_877))) (or (< v_idx_872 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_872) (= 1 (select |c_#valid| v_idx_872))) (= (select |c_old(#memory_int)| v_idx_874) v_v_4_6) (= v_v_2_6 (select |c_old(#valid)| v_idx_870)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_869 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_869) v_v_28_6)) (or (< v_idx_876 c_ULTIMATE.start_malloc_ptr) (= v_v_134_6 (select |c_#memory_int| v_idx_876)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_876)) (or (= v_v_133_6 (select |c_#memory_int| v_idx_875)) (<= c_ULTIMATE.start_malloc_ptr v_idx_875)))))} [2019-01-18 14:54:01,306 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:01,940 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:01,940 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:10,239 WARN L181 SmtUtils]: Spent 8.30 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:10,240 WARN L270 ngHoareTripleChecker]: Pre: {2147483579#(or (forall ((v_idx_863 Int) (v_idx_864 Int) (v_idx_861 Int) (v_idx_862 Int) (v_idx_856 Int) (v_idx_857 Int) (v_idx_865 Int) (v_idx_866 Int) (v_idx_858 Int) (v_idx_859 Int) (v_idx_860 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_2_6 Int) (v_v_32_6 Int)) (and (or (< v_idx_866 (+ ULTIMATE.start_main_p2 1)) (= (select |#memory_int| v_idx_866) v_v_46_6)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= (select |#valid| v_idx_861) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_861) (< v_idx_861 ULTIMATE.start_malloc_ptr)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_857) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_857) (< v_idx_857 ULTIMATE.start_malloc_ptr)) (or (<= ULTIMATE.start_main_p2 v_idx_864) (= (select |#memory_int| v_idx_864) v_v_44_6)) (= v_v_4_6 (select |old(#memory_int)| v_idx_863)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_856) v_v_26_6) (<= ULTIMATE.start_malloc_ptr v_idx_856)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (= (select |old(#valid)| v_idx_859) v_v_2_6) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_858) v_v_28_6) (< v_idx_858 (+ ULTIMATE.start_main_p3 1))) (or (= (select |#valid| v_idx_860) v_v_32_6) (<= ULTIMATE.start_malloc_ptr v_idx_860)) (or (< v_idx_865 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_865) (= v_v_45_6 (select |#memory_int| v_idx_865))) (or (< v_idx_862 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_862) v_v_34_6))))) (forall ((v_idx_852 Int) (v_idx_853 Int) (v_idx_850 Int) (v_idx_851 Int) (v_idx_845 Int) (v_idx_846 Int) (v_idx_854 Int) (v_idx_855 Int) (v_idx_849 Int) (v_idx_847 Int) (v_idx_848 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_32_6 Int) (v_v_43_6 Int)) (and (= v_v_2_6 (select |old(#valid)| v_idx_848)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (< v_idx_847 (+ ULTIMATE.start_main_p3 1)) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_847) v_v_28_6)) (or (< v_idx_851 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_851) v_v_34_6)) (or (= (select |#memory_int| v_idx_853) v_v_41_6) (<= ULTIMATE.start_malloc_ptr v_idx_853)) (or (= v_v_32_6 (select |#valid| v_idx_849)) (<= ULTIMATE.start_malloc_ptr v_idx_849)) (or (< v_idx_855 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_855) v_v_43_6)) (or (< v_idx_846 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_846) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_846))) (= (select |old(#memory_int)| v_idx_852) v_v_4_6) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_854) (= 0 (select |#memory_int| v_idx_854)) (< v_idx_854 ULTIMATE.start_malloc_ptr)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_845) v_v_26_6) (<= ULTIMATE.start_malloc_ptr v_idx_845)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |#valid| v_idx_850) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_850) (< v_idx_850 ULTIMATE.start_malloc_ptr))))))} [2019-01-18 14:54:10,240 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:54:10,240 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:54:10,417 WARN L276 ngHoareTripleChecker]: Post: {2147483578#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_868 Int)) (or (< v_idx_868 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_868)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_868))) (forall ((v_idx_872 Int)) (or (< v_idx_872 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_872) (= 1 (select |#valid| v_idx_872)))))} [2019-01-18 14:54:13,595 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:13,595 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:13,595 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:13,595 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:13,596 WARN L224 ngHoareTripleChecker]: Pre: {2147483577#(or (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_878 Int) (v_idx_879 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_878) (= v_v_26_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_878))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_882) (= v_v_32_6 (select |c_#valid| v_idx_882))) (= v_v_2_6 (select |c_old(#valid)| v_idx_881)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_879) (< v_idx_879 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_879))) (or (< v_idx_883 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_883) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_883)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_887) (= (select |c_#memory_int| v_idx_887) 0) (< v_idx_887 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_886) v_v_41_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_886)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_880) v_v_28_6) (< v_idx_880 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#memory_int)| v_idx_885) v_v_4_6) (or (< v_idx_884 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_884) v_v_34_6)) (or (= (select |c_#memory_int| v_idx_888) v_v_43_6) (< v_idx_888 (+ c_ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_889 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_890) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_890)) (< v_idx_890 c_ULTIMATE.start_malloc_ptr)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (< v_idx_898 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_898) v_v_45_6) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_898)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_891) v_v_28_6) (< v_idx_891 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_895 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_895) v_v_34_6)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_893) (= (select |c_#valid| v_idx_893) v_v_32_6)) (= v_v_2_6 (select |c_old(#valid)| v_idx_892)) (or (= (select |c_#memory_int| v_idx_899) v_v_46_6) (< v_idx_899 (+ c_ULTIMATE.start_main_p2 1))) (or (= v_v_26_6 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_889)) (<= c_ULTIMATE.start_malloc_ptr v_idx_889)) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_896)) (or (< v_idx_894 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_894) 1) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_894)) (or (= (select |c_#memory_int| v_idx_897) v_v_44_6) (<= c_ULTIMATE.start_main_p2 v_idx_897))))))} [2019-01-18 14:54:13,596 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:13,596 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:13,596 WARN L230 ngHoareTripleChecker]: Post: {2147483576#(forall ((v_idx_900 Int) (v_idx_901 Int) (v_idx_910 Int) (v_idx_904 Int) (v_idx_905 Int) (v_idx_902 Int) (v_idx_903 Int) (v_idx_908 Int) (v_idx_909 Int) (v_idx_906 Int) (v_idx_907 Int)) (exists ((v_v_4_6 Int) (v_v_180_2 Int) (v_v_179_2 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_2_6 Int) (v_v_178_2 Int) (v_v_32_6 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_6 (select |c_old(#valid)| v_idx_903)) (or (< v_idx_905 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_905) (= (select |c_#valid| v_idx_905) 1)) (or (< v_idx_906 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_906) v_v_34_6)) (or (<= c_ULTIMATE.start_main_p1 v_idx_908) (= (select |c_#memory_int| v_idx_908) v_v_178_2)) (<= (+ v_v_179_2 1) 0) (or (< v_idx_901 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_901) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_901)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_904) (= (select |c_#valid| v_idx_904) v_v_32_6)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_900) v_v_26_6) (<= c_ULTIMATE.start_malloc_ptr v_idx_900)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_902) v_v_28_6) (< v_idx_902 (+ c_ULTIMATE.start_main_p3 1))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= v_v_4_6 (select |c_old(#memory_int)| v_idx_907)) (<= (- v_v_179_2 (- v_v_179_2)) (- 2)) (or (< v_idx_910 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_910) v_v_180_2)) (or (< v_idx_909 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_909) (= (select |c_#memory_int| v_idx_909) v_v_179_2)))))} [2019-01-18 14:54:13,596 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:13,988 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:13,988 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:22,297 WARN L181 SmtUtils]: Spent 8.31 s on a formula simplification that was a NOOP. DAG size: 146 [2019-01-18 14:54:22,298 WARN L270 ngHoareTripleChecker]: Pre: {2147483577#(or (forall ((v_idx_885 Int) (v_idx_886 Int) (v_idx_883 Int) (v_idx_884 Int) (v_idx_878 Int) (v_idx_879 Int) (v_idx_887 Int) (v_idx_888 Int) (v_idx_881 Int) (v_idx_882 Int) (v_idx_880 Int)) (exists ((v_v_41_6 Int) (v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_34_6 Int) (v_v_32_6 Int) (v_v_2_6 Int) (v_v_43_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (<= ULTIMATE.start_malloc_ptr v_idx_878) (= v_v_26_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_878))) (or (<= ULTIMATE.start_malloc_ptr v_idx_882) (= v_v_32_6 (select |#valid| v_idx_882))) (= v_v_2_6 (select |old(#valid)| v_idx_881)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_879) (< v_idx_879 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_879))) (or (< v_idx_883 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_883) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_883)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_887) (= (select |#memory_int| v_idx_887) 0) (< v_idx_887 ULTIMATE.start_malloc_ptr)) (or (= (select |#memory_int| v_idx_886) v_v_41_6) (<= ULTIMATE.start_malloc_ptr v_idx_886)) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_880) v_v_28_6) (< v_idx_880 (+ ULTIMATE.start_main_p3 1))) (= (select |old(#memory_int)| v_idx_885) v_v_4_6) (or (< v_idx_884 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_884) v_v_34_6)) (or (= (select |#memory_int| v_idx_888) v_v_43_6) (< v_idx_888 (+ ULTIMATE.start_main_p3 1)))))) (forall ((v_idx_896 Int) (v_idx_897 Int) (v_idx_894 Int) (v_idx_895 Int) (v_idx_889 Int) (v_idx_898 Int) (v_idx_899 Int) (v_idx_892 Int) (v_idx_893 Int) (v_idx_890 Int) (v_idx_891 Int)) (exists ((v_v_4_6 Int) (v_v_28_6 Int) (v_v_26_6 Int) (v_v_46_6 Int) (v_v_45_6 Int) (v_v_34_6 Int) (v_v_44_6 Int) (v_v_32_6 Int) (v_v_2_6 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_890) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_890)) (< v_idx_890 ULTIMATE.start_malloc_ptr)) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (< v_idx_898 ULTIMATE.start_main_p2) (= (select |#memory_int| v_idx_898) v_v_45_6) (<= (+ ULTIMATE.start_main_p2 1) v_idx_898)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_891) v_v_28_6) (< v_idx_891 (+ ULTIMATE.start_main_p3 1))) (or (< v_idx_895 (+ ULTIMATE.start_main_p3 1)) (= (select |#valid| v_idx_895) v_v_34_6)) (or (<= ULTIMATE.start_malloc_ptr v_idx_893) (= (select |#valid| v_idx_893) v_v_32_6)) (= v_v_2_6 (select |old(#valid)| v_idx_892)) (or (= (select |#memory_int| v_idx_899) v_v_46_6) (< v_idx_899 (+ ULTIMATE.start_main_p2 1))) (or (= v_v_26_6 (select |ULTIMATE.start_malloc_old_#valid| v_idx_889)) (<= ULTIMATE.start_malloc_ptr v_idx_889)) (= v_v_4_6 (select |old(#memory_int)| v_idx_896)) (or (< v_idx_894 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_894) 1) (<= (+ ULTIMATE.start_main_p3 1) v_idx_894)) (or (= (select |#memory_int| v_idx_897) v_v_44_6) (<= ULTIMATE.start_main_p2 v_idx_897))))))} [2019-01-18 14:54:22,298 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p1] >= 0); [2019-01-18 14:54:22,298 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1))) [2019-01-18 14:54:22,509 WARN L276 ngHoareTripleChecker]: Post: {2147483576#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_901 Int)) (or (< v_idx_901 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_901) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_901))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_909 Int)) (or (<= (+ (select |#memory_int| v_idx_909) 1) 0) (< v_idx_909 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_909))) (forall ((v_idx_905 Int)) (or (< v_idx_905 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_905) (= (select |#valid| v_idx_905) 1))) (forall ((v_prenex_16 Int)) (or (< v_prenex_16 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_16) (<= (+ (* 2 (select |#memory_int| v_prenex_16)) 2) 0))))} [2019-01-18 14:54:22,651 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-01-18 14:54:22,652 INFO L272 AbstractInterpreter]: Visited 4 different actions 7 times. Merged at 1 different actions 1 times. Never widened. Found 4 fixpoints after 3 different actions. Largest state had 0 variables. [2019-01-18 14:54:22,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:22,652 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-01-18 14:54:22,652 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:22,653 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:54:22,662 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:22,663 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-01-18 14:54:22,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:22,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:22,672 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-01-18 14:54:22,699 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 15 [2019-01-18 14:54:22,705 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 21 [2019-01-18 14:54:22,716 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,718 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,719 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 28 [2019-01-18 14:54:22,721 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,732 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,740 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,760 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,761 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 29 [2019-01-18 14:54:22,795 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,796 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,797 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 13 [2019-01-18 14:54:22,799 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,805 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,819 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,819 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 2 variables, input treesize:32, output treesize:28 [2019-01-18 14:54:22,823 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:22,824 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_34|, |v_#valid_9|]. (let ((.cse0 (store |v_#valid_9| ULTIMATE.start_main_p1 1))) (and (= (select .cse0 ULTIMATE.start_main_p2) 0) (= (select (store .cse0 ULTIMATE.start_main_p2 1) ULTIMATE.start_main_p3) 0) (= |#memory_int| (store (store (store |v_#memory_int_34| ULTIMATE.start_main_p1 0) ULTIMATE.start_main_p2 0) ULTIMATE.start_main_p3 0)))) [2019-01-18 14:54:22,824 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:54:22,867 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,869 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 34 [2019-01-18 14:54:22,877 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,890 INFO L267 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:22,891 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:20 [2019-01-18 14:54:22,924 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:22,924 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_35|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_35| ULTIMATE.start_main_p2))) (and (= 0 (select |v_#memory_int_35| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_35| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= 0 .cse0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_35| ULTIMATE.start_main_p3)))) [2019-01-18 14:54:22,924 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (- 1) (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-01-18 14:54:22,959 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,960 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,961 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,962 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,963 INFO L701 Elim1Store]: detected not equals via solver [2019-01-18 14:54:22,964 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 50 [2019-01-18 14:54:22,968 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-01-18 14:54:22,984 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-01-18 14:54:22,984 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:32, output treesize:18 [2019-01-18 14:54:23,052 WARN L384 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-01-18 14:54:23,052 WARN L385 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_36|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_36| ULTIMATE.start_main_p3))) (and (= (store |v_#memory_int_36| ULTIMATE.start_main_p3 (+ .cse0 1)) |#memory_int|) (= 0 (+ (select |v_#memory_int_36| ULTIMATE.start_main_p2) 1)) (= .cse0 0) (= (select |v_#memory_int_36| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-01-18 14:54:23,052 WARN L386 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) [2019-01-18 14:54:23,075 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {854#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-01-18 14:54:23,077 INFO L273 TraceCheckUtils]: 1: Hoare triple {854#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {858#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-01-18 14:54:23,079 INFO L273 TraceCheckUtils]: 2: Hoare triple {858#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {862#(and (exists ((ULTIMATE.start_main_p2 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 1)))} is VALID [2019-01-18 14:54:23,080 INFO L273 TraceCheckUtils]: 3: Hoare triple {862#(and (exists ((ULTIMATE.start_main_p2 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p2) 1) 0)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p3 Int)) (= (select |#memory_int| ULTIMATE.start_main_p3) 1)))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-18 14:54:23,080 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-18 14:54:23,080 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-01-18 14:54:23,130 INFO L273 TraceCheckUtils]: 3: Hoare triple {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {847#false} is VALID [2019-01-18 14:54:23,132 INFO L273 TraceCheckUtils]: 2: Hoare triple {869#(or (= (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1) 0) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {850#(or (<= 1 (select |#memory_int| ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-01-18 14:54:23,133 INFO L273 TraceCheckUtils]: 1: Hoare triple {873#(or (<= 1 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {869#(or (= (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1) 0) (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:54:23,135 INFO L273 TraceCheckUtils]: 0: Hoare triple {846#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {873#(or (<= 1 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)) (= 0 (select (store (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3 (+ (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p1)))} is VALID [2019-01-18 14:54:23,136 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:54:23,156 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-01-18 14:54:23,156 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 8 [2019-01-18 14:54:23,156 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-01-18 14:54:23,157 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:54:23,157 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-18 14:54:23,157 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-01-18 14:54:23,174 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-18 14:54:23,174 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-01-18 14:54:23,174 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-01-18 14:54:23,174 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=54, Unknown=0, NotChecked=0, Total=90 [2019-01-18 14:54:23,175 INFO L87 Difference]: Start difference. First operand 23 states and 74 transitions. Second operand 8 states. [2019-01-18 14:54:23,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:23,694 INFO L93 Difference]: Finished difference Result 48 states and 138 transitions. [2019-01-18 14:54:23,694 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-01-18 14:54:23,694 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-01-18 14:54:23,694 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-18 14:54:23,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:54:23,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2019-01-18 14:54:23,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-18 14:54:23,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2019-01-18 14:54:23,696 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 39 transitions. [2019-01-18 14:54:23,802 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:54:23,805 INFO L225 Difference]: With dead ends: 48 [2019-01-18 14:54:23,805 INFO L226 Difference]: Without dead ends: 44 [2019-01-18 14:54:23,806 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=52, Invalid=80, Unknown=0, NotChecked=0, Total=132 [2019-01-18 14:54:23,806 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2019-01-18 14:54:23,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 31. [2019-01-18 14:54:23,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-18 14:54:23,892 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand 31 states. [2019-01-18 14:54:23,892 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 31 states. [2019-01-18 14:54:23,893 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 31 states. [2019-01-18 14:54:23,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:23,895 INFO L93 Difference]: Finished difference Result 44 states and 128 transitions. [2019-01-18 14:54:23,896 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 128 transitions. [2019-01-18 14:54:23,896 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:23,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:23,896 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 44 states. [2019-01-18 14:54:23,897 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 44 states. [2019-01-18 14:54:23,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-18 14:54:23,899 INFO L93 Difference]: Finished difference Result 44 states and 128 transitions. [2019-01-18 14:54:23,900 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 128 transitions. [2019-01-18 14:54:23,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-18 14:54:23,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-18 14:54:23,900 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-18 14:54:23,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-18 14:54:23,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2019-01-18 14:54:23,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 105 transitions. [2019-01-18 14:54:23,903 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 105 transitions. Word has length 4 [2019-01-18 14:54:23,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-18 14:54:23,903 INFO L480 AbstractCegarLoop]: Abstraction has 31 states and 105 transitions. [2019-01-18 14:54:23,903 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-01-18 14:54:23,903 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 105 transitions. [2019-01-18 14:54:23,903 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-18 14:54:23,904 INFO L394 BasicCegarLoop]: Found error trace [2019-01-18 14:54:23,904 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-18 14:54:23,904 INFO L423 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-18 14:54:23,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-18 14:54:23,904 INFO L82 PathProgramCache]: Analyzing trace with hash 935566, now seen corresponding path program 1 times [2019-01-18 14:54:23,904 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-18 14:54:23,905 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:23,905 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-18 14:54:23,905 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-18 14:54:23,905 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-18 14:54:23,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-18 14:54:23,963 INFO L273 TraceCheckUtils]: 0: Hoare triple {1099#true} havoc main_p1, main_p2, main_p3;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p3 := malloc_ptr;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0];#memory_int := #memory_int[main_p3 := 0]; {1101#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p3)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p2)))} is VALID [2019-01-18 14:54:23,964 INFO L273 TraceCheckUtils]: 1: Hoare triple {1101#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p3)) (= 0 (select (store |#memory_int| ULTIMATE.start_main_p3 (+ (select |#memory_int| ULTIMATE.start_main_p3) 1)) ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:23,965 INFO L273 TraceCheckUtils]: 2: Hoare triple {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume #memory_int[main_p1] >= 0; {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} is VALID [2019-01-18 14:54:23,966 INFO L273 TraceCheckUtils]: 3: Hoare triple {1102#(= (select |#memory_int| ULTIMATE.start_main_p2) 0)} assume !(#memory_int[main_p2] <= 0); {1100#false} is VALID [2019-01-18 14:54:23,966 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:23,967 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-18 14:54:23,967 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-18 14:54:23,967 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-18 14:54:23,967 INFO L207 CegarAbsIntRunner]: [0], [12], [16], [17] [2019-01-18 14:54:23,969 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-18 14:54:23,969 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-18 14:54:26,277 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:26,277 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:26,277 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:26,277 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:26,277 WARN L224 ngHoareTripleChecker]: Pre: {2147483573#(forall ((v_idx_930 Int) (v_idx_933 Int) (v_idx_934 Int) (v_idx_931 Int) (v_idx_932 Int) (v_idx_937 Int) (v_idx_927 Int) (v_idx_935 Int) (v_idx_936 Int) (v_idx_928 Int) (v_idx_929 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_935) (= (select |c_#memory_int| v_idx_935) v_v_41_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_927) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_927)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_928) (< v_idx_928 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_928))) (or (= (select |c_#memory_int| v_idx_937) v_v_43_7) (< v_idx_937 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#memory_int)| v_idx_934) v_v_4_7) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_932) (= (select |c_#valid| v_idx_932) 1) (< v_idx_932 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#valid| v_idx_933) v_v_34_7) (< v_idx_933 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_936 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_936) (= (select |c_#memory_int| v_idx_936) 0)) (= (select |c_old(#valid)| v_idx_930) v_v_2_7) (or (< v_idx_929 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_929) v_v_28_7)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_931) (= (select |c_#valid| v_idx_931) v_v_32_7)))))} [2019-01-18 14:54:26,278 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:26,278 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:26,278 WARN L230 ngHoareTripleChecker]: Post: {2147483572#(forall ((v_idx_940 Int) (v_idx_941 Int) (v_idx_944 Int) (v_idx_945 Int) (v_idx_942 Int) (v_idx_943 Int) (v_idx_948 Int) (v_idx_938 Int) (v_idx_946 Int) (v_idx_947 Int) (v_idx_939 Int)) (exists ((v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_46_7 Int) (v_v_45_7 Int) (v_v_34_7 Int) (v_v_44_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_947) (< v_idx_947 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_947) v_v_45_7)) (= (select |c_old(#valid)| v_idx_941) v_v_2_7) (or (<= c_ULTIMATE.start_main_p1 v_idx_946) (= v_v_44_7 (select |c_#memory_int| v_idx_946))) (or (< v_idx_944 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_944) v_v_34_7)) (<= (- (- v_v_45_7) v_v_45_7) 0) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_948) v_v_46_7) (< v_idx_948 (+ c_ULTIMATE.start_main_p1 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_939) (< v_idx_939 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_939))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_942) (= (select |c_#valid| v_idx_942) v_v_32_7)) (or (< v_idx_943 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_943)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_943)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_945)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_940) v_v_28_7) (< v_idx_940 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_938) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_938)) (<= 0 v_v_45_7))))} [2019-01-18 14:54:26,278 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:26,867 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:26,868 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:27,034 WARN L270 ngHoareTripleChecker]: Pre: {2147483573#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_idx_936 Int)) (or (< v_idx_936 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_936) (= (select |#memory_int| v_idx_936) 0))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_932 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_932) (= (select |#valid| v_idx_932) 1) (< v_idx_932 ULTIMATE.start_malloc_ptr))) (forall ((v_idx_928 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_928) (< v_idx_928 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_928)))))} [2019-01-18 14:54:27,035 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:27,035 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:27,079 WARN L276 ngHoareTripleChecker]: Post: {2147483572#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_17 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_17))) (< v_prenex_17 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_17))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_943 Int)) (or (< v_idx_943 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_943)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_943))) (forall ((v_idx_947 Int)) (or (< v_idx_947 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_947) (<= 0 (select |#memory_int| v_idx_947)))) (forall ((v_idx_939 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_939) (< v_idx_939 ULTIMATE.start_malloc_ptr) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_939)))))} [2019-01-18 14:54:29,208 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:29,209 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:29,209 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:29,209 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:29,209 WARN L224 ngHoareTripleChecker]: Pre: {2147483571#(forall ((v_idx_951 Int) (v_idx_952 Int) (v_idx_950 Int) (v_idx_955 Int) (v_idx_956 Int) (v_idx_953 Int) (v_idx_954 Int) (v_idx_959 Int) (v_idx_949 Int) (v_idx_957 Int) (v_idx_958 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_949) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_949)) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_956)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_951) v_v_28_7) (< v_idx_951 (+ c_ULTIMATE.start_main_p3 1))) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_958) (< v_idx_958 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_958))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_950) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_950)) (< v_idx_950 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_957) v_v_41_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_957)) (= v_v_2_7 (select |c_old(#valid)| v_idx_952)) (or (< v_idx_959 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_43_7 (select |c_#memory_int| v_idx_959))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_954) (< v_idx_954 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_954) 1)) (or (< v_idx_955 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_955) v_v_34_7)) (or (= (select |c_#valid| v_idx_953) v_v_32_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_953)))))} [2019-01-18 14:54:29,209 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:54:29,209 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:54:29,210 WARN L230 ngHoareTripleChecker]: Post: {2147483570#(forall ((v_idx_962 Int) (v_idx_963 Int) (v_idx_960 Int) (v_idx_961 Int) (v_idx_966 Int) (v_idx_967 Int) (v_idx_964 Int) (v_idx_965 Int) (v_idx_968 Int) (v_idx_969 Int) (v_idx_970 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_961)) (< v_idx_961 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_961)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_960) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_960)) (or (= (select |c_#memory_int| v_idx_968) v_v_41_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_968)) (or (= (select |c_#valid| v_idx_964) v_v_32_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_964)) (or (= (select |c_#memory_int| v_idx_970) v_v_43_7) (< v_idx_970 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_965 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_965)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_965)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_969) (< v_idx_969 c_ULTIMATE.start_malloc_ptr) (= (select |c_#memory_int| v_idx_969) 1)) (= v_v_2_7 (select |c_old(#valid)| v_idx_963)) (or (= (select |c_#valid| v_idx_966) v_v_34_7) (< v_idx_966 (+ c_ULTIMATE.start_main_p3 1))) (= (select |c_old(#memory_int)| v_idx_967) v_v_4_7) (or (< v_idx_962 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_962) v_v_28_7)))))} [2019-01-18 14:54:29,210 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:29,668 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:29,668 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:29,890 WARN L270 ngHoareTripleChecker]: Pre: {2147483571#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_954 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_954) (< v_idx_954 ULTIMATE.start_malloc_ptr) (= (select |#valid| v_idx_954) 1))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_958 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_958) (< v_idx_958 ULTIMATE.start_malloc_ptr) (= 0 (select |#memory_int| v_idx_958)))) (forall ((v_idx_950 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_950) (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_950)) (< v_idx_950 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:54:29,890 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:54:29,890 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:54:29,921 WARN L276 ngHoareTripleChecker]: Post: {2147483570#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_961 Int)) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_961)) (< v_idx_961 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_961))) (forall ((v_idx_965 Int)) (or (< v_idx_965 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_965)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_965))) (forall ((v_idx_969 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_969) (< v_idx_969 ULTIMATE.start_malloc_ptr) (= (select |#memory_int| v_idx_969) 1))))} [2019-01-18 14:54:32,328 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:32,329 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:32,329 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:32,329 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:32,329 WARN L224 ngHoareTripleChecker]: Pre: {2147483569#(forall ((v_idx_973 Int) (v_idx_974 Int) (v_idx_971 Int) (v_idx_972 Int) (v_idx_977 Int) (v_idx_978 Int) (v_idx_975 Int) (v_idx_976 Int) (v_idx_979 Int) (v_idx_980 Int) (v_idx_981 Int)) (exists ((v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_46_7 Int) (v_v_45_7 Int) (v_v_34_7 Int) (v_v_44_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_976) (< v_idx_976 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_976))) (or (= (select |c_#valid| v_idx_975) v_v_32_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_975)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_973) v_v_28_7) (< v_idx_973 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_974)) (or (< v_idx_980 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_980) (= (select |c_#memory_int| v_idx_980) v_v_45_7)) (or (< v_idx_981 (+ c_ULTIMATE.start_main_p1 1)) (= (select |c_#memory_int| v_idx_981) v_v_46_7)) (<= (- (- v_v_45_7) v_v_45_7) 0) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_main_p1 v_idx_979) (= (select |c_#memory_int| v_idx_979) v_v_44_7)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_971) (= v_v_26_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_971))) (or (< v_idx_972 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_972) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_972)) (or (= v_v_34_7 (select |c_#valid| v_idx_977)) (< v_idx_977 (+ c_ULTIMATE.start_main_p3 1))) (<= 0 v_v_45_7) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_978)))))} [2019-01-18 14:54:32,330 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:54:32,330 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:54:32,330 WARN L230 ngHoareTripleChecker]: Post: {2147483568#(forall ((v_idx_984 Int) (v_idx_985 Int) (v_idx_982 Int) (v_idx_983 Int) (v_idx_988 Int) (v_idx_989 Int) (v_idx_986 Int) (v_idx_987 Int) (v_idx_991 Int) (v_idx_992 Int) (v_idx_990 Int)) (exists ((v_v_2_7 Int) (v_v_61_7 Int) (v_v_62_7 Int) (v_v_4_7 Int) (v_v_63_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int)) (and (or (= (select |c_#memory_int| v_idx_990) v_v_61_7) (<= c_ULTIMATE.start_main_p2 v_idx_990)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (<= 1 v_v_62_7) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_982) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_982) v_v_26_7)) (<= (- (- v_v_62_7) v_v_62_7) (- 2)) (or (< v_idx_983 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_983) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_983) 0)) (or (< v_idx_987 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_987) (= 1 (select |c_#valid| v_idx_987))) (or (= (select |c_#valid| v_idx_988) v_v_34_7) (< v_idx_988 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_991) v_v_62_7) (< v_idx_991 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_991)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (< v_idx_984 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_984) v_v_28_7)) (= (select |c_old(#memory_int)| v_idx_989) v_v_4_7) (or (< v_idx_992 (+ c_ULTIMATE.start_main_p2 1)) (= (select |c_#memory_int| v_idx_992) v_v_63_7)) (or (= (select |c_#valid| v_idx_986) v_v_32_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_986)) (= v_v_2_7 (select |c_old(#valid)| v_idx_985)))))} [2019-01-18 14:54:32,330 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:32,788 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:32,788 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:32,922 WARN L270 ngHoareTripleChecker]: Pre: {2147483569#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_972 Int)) (or (< v_idx_972 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_972) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_972))) (forall ((v_idx_980 Int)) (or (< v_idx_980 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_980))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_980))) (forall ((v_prenex_18 Int)) (or (< v_prenex_18 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_18)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_18))) (forall ((v_idx_976 Int)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_976) (< v_idx_976 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_976)))))} [2019-01-18 14:54:32,922 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-18 14:54:32,922 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-18 14:54:32,970 WARN L276 ngHoareTripleChecker]: Post: {2147483568#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (forall ((v_prenex_19 Int)) (or (< v_prenex_19 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_19) (<= 2 (* 2 (select |#memory_int| v_prenex_19))))) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_991 Int)) (or (< v_idx_991 ULTIMATE.start_main_p2) (<= 1 (select |#memory_int| v_idx_991)) (<= (+ ULTIMATE.start_main_p2 1) v_idx_991))) (forall ((v_idx_983 Int)) (or (< v_idx_983 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_983) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_983) 0))) (forall ((v_idx_987 Int)) (or (< v_idx_987 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_987) (= 1 (select |#valid| v_idx_987)))))} [2019-01-18 14:54:35,470 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:35,470 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:35,471 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:35,471 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:35,471 WARN L224 ngHoareTripleChecker]: Pre: {2147483567#(or (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_1003 Int) (v_idx_993 Int) (v_idx_1002 Int) (v_idx_994 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_997 Int) (v_idx_998 Int)) (exists ((v_v_2_7 Int) (v_v_41_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_2_7 (select |c_old(#valid)| v_idx_996)) (or (< v_idx_1003 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_1003) v_v_43_7)) (= (select |c_old(#memory_int)| v_idx_1000) v_v_4_7) (or (< v_idx_999 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_7 (select |c_#valid| v_idx_999))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_994)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_994) (< v_idx_994 c_ULTIMATE.start_malloc_ptr)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_993) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_993) v_v_26_7)) (or (< v_idx_995 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_995))) (or (< v_idx_1002 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1002) (= (select |c_#memory_int| v_idx_1002) 0)) (or (= v_v_32_7 (select |c_#valid| v_idx_997)) (<= c_ULTIMATE.start_malloc_ptr v_idx_997)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_998) (= 1 (select |c_#valid| v_idx_998)) (< v_idx_998 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_#memory_int| v_idx_1001) v_v_41_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1001))))) (forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1004) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1004) v_v_26_7)) (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#memory_int| v_idx_1013)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1013) (< v_idx_1013 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_1006 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_28_7 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1006))) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1011)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_1012) v_v_41_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1012)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1008) (= v_v_32_7 (select |c_#valid| v_idx_1008))) (= v_v_2_7 (select |c_old(#valid)| v_idx_1007)) (or (< v_idx_1014 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_1014) v_v_43_7)) (or (< v_idx_1010 (+ c_ULTIMATE.start_main_p3 1)) (= v_v_34_7 (select |c_#valid| v_idx_1010))) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1005)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1005) (< v_idx_1005 c_ULTIMATE.start_malloc_ptr)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1009) (< v_idx_1009 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_1009)))))))} [2019-01-18 14:54:35,471 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:35,471 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:35,471 WARN L230 ngHoareTripleChecker]: Post: {2147483566#(forall ((v_idx_1016 Int) (v_idx_1015 Int) (v_idx_1025 Int) (v_idx_1024 Int) (v_idx_1023 Int) (v_idx_1022 Int) (v_idx_1021 Int) (v_idx_1020 Int) (v_idx_1019 Int) (v_idx_1018 Int) (v_idx_1017 Int)) (exists ((v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_64_7 Int) (v_v_65_7 Int) (v_v_32_7 Int) (v_v_66_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1016 c_ULTIMATE.start_malloc_ptr) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1016) 0) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1016)) (or (< v_idx_1017 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1017) v_v_28_7)) (<= (- (- v_v_65_7) v_v_65_7) 0) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1024) (< v_idx_1024 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1024) v_v_65_7)) (or (= 1 (select |c_#valid| v_idx_1020)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1020) (< v_idx_1020 c_ULTIMATE.start_malloc_ptr)) (= (select |c_old(#memory_int)| v_idx_1022) v_v_4_7) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (= (select |c_#valid| v_idx_1019) v_v_32_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1019)) (or (= (select |c_#valid| v_idx_1021) v_v_34_7) (< v_idx_1021 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_1025) v_v_66_7) (< v_idx_1025 (+ c_ULTIMATE.start_main_p1 1))) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1015) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1015) v_v_26_7)) (<= 0 v_v_65_7) (or (= (select |c_#memory_int| v_idx_1023) v_v_64_7) (<= c_ULTIMATE.start_main_p1 v_idx_1023)) (= v_v_2_7 (select |c_old(#valid)| v_idx_1018)))))} [2019-01-18 14:54:35,471 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:35,786 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:35,787 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:43,919 WARN L181 SmtUtils]: Spent 8.13 s on a formula simplification that was a NOOP. DAG size: 141 [2019-01-18 14:54:43,920 WARN L270 ngHoareTripleChecker]: Pre: {2147483567#(or (forall ((v_idx_995 Int) (v_idx_996 Int) (v_idx_1003 Int) (v_idx_993 Int) (v_idx_1002 Int) (v_idx_994 Int) (v_idx_1001 Int) (v_idx_999 Int) (v_idx_1000 Int) (v_idx_997 Int) (v_idx_998 Int)) (exists ((v_v_2_7 Int) (v_v_41_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (= v_v_2_7 (select |old(#valid)| v_idx_996)) (or (< v_idx_1003 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_1003) v_v_43_7)) (= (select |old(#memory_int)| v_idx_1000) v_v_4_7) (or (< v_idx_999 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_7 (select |#valid| v_idx_999))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_994)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_994) (< v_idx_994 ULTIMATE.start_malloc_ptr)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_993) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_993) v_v_26_7)) (or (< v_idx_995 (+ ULTIMATE.start_main_p3 1)) (= v_v_28_7 (select |ULTIMATE.start_malloc_old_#valid| v_idx_995))) (or (< v_idx_1002 ULTIMATE.start_malloc_ptr) (<= (+ ULTIMATE.start_main_p3 1) v_idx_1002) (= (select |#memory_int| v_idx_1002) 0)) (or (= v_v_32_7 (select |#valid| v_idx_997)) (<= ULTIMATE.start_malloc_ptr v_idx_997)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_998) (= 1 (select |#valid| v_idx_998)) (< v_idx_998 ULTIMATE.start_malloc_ptr)) (or (= (select |#memory_int| v_idx_1001) v_v_41_7) (<= ULTIMATE.start_malloc_ptr v_idx_1001))))) (forall ((v_idx_1005 Int) (v_idx_1004 Int) (v_idx_1014 Int) (v_idx_1013 Int) (v_idx_1012 Int) (v_idx_1011 Int) (v_idx_1010 Int) (v_idx_1009 Int) (v_idx_1008 Int) (v_idx_1007 Int) (v_idx_1006 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (or (<= ULTIMATE.start_malloc_ptr v_idx_1004) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1004) v_v_26_7)) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (or (= 1 (select |#memory_int| v_idx_1013)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_1013) (< v_idx_1013 ULTIMATE.start_malloc_ptr)) (or (< v_idx_1006 (+ ULTIMATE.start_main_p3 1)) (= v_v_28_7 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1006))) (= v_v_4_7 (select |old(#memory_int)| v_idx_1011)) (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (or (= (select |#memory_int| v_idx_1012) v_v_41_7) (<= ULTIMATE.start_malloc_ptr v_idx_1012)) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (or (<= ULTIMATE.start_malloc_ptr v_idx_1008) (= v_v_32_7 (select |#valid| v_idx_1008))) (= v_v_2_7 (select |old(#valid)| v_idx_1007)) (or (< v_idx_1014 (+ ULTIMATE.start_main_p3 1)) (= (select |#memory_int| v_idx_1014) v_v_43_7)) (or (< v_idx_1010 (+ ULTIMATE.start_main_p3 1)) (= v_v_34_7 (select |#valid| v_idx_1010))) (or (= 0 (select |ULTIMATE.start_malloc_old_#valid| v_idx_1005)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_1005) (< v_idx_1005 ULTIMATE.start_malloc_ptr)) (or (<= (+ ULTIMATE.start_main_p3 1) v_idx_1009) (< v_idx_1009 ULTIMATE.start_malloc_ptr) (= 1 (select |#valid| v_idx_1009)))))))} [2019-01-18 14:54:43,920 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-18 14:54:43,920 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-18 14:54:44,099 WARN L276 ngHoareTripleChecker]: Post: {2147483566#(and (<= (- (- ULTIMATE.start_main_p3) (- ULTIMATE.start_malloc_ptr)) 0) (<= ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) (<= ULTIMATE.start_malloc_ptr ULTIMATE.start_main_p3) (forall ((v_idx_1016 Int)) (or (< v_idx_1016 ULTIMATE.start_malloc_ptr) (= (select |ULTIMATE.start_malloc_old_#valid| v_idx_1016) 0) (<= (+ ULTIMATE.start_main_p3 1) v_idx_1016))) (<= (- ULTIMATE.start_main_p3 ULTIMATE.start_malloc_ptr) 0) (forall ((v_idx_1024 Int)) (or (<= 0 (* 2 (select |#memory_int| v_idx_1024))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1024) (< v_idx_1024 ULTIMATE.start_main_p1))) (forall ((v_prenex_20 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_20) (< v_prenex_20 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_20)))) (forall ((v_idx_1020 Int)) (or (= 1 (select |#valid| v_idx_1020)) (<= (+ ULTIMATE.start_main_p3 1) v_idx_1020) (< v_idx_1020 ULTIMATE.start_malloc_ptr))))} [2019-01-18 14:54:47,087 WARN L212 ngHoareTripleChecker]: Soundness check inconclusive for the following hoare triple [2019-01-18 14:54:47,087 WARN L217 ngHoareTripleChecker]: Expected: VALID Actual: UNKNOWN [2019-01-18 14:54:47,087 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-18 14:54:47,087 WARN L223 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,088 WARN L224 ngHoareTripleChecker]: Pre: {2147483565#(or (forall ((v_idx_1027 Int) (v_idx_1026 Int) (v_idx_1036 Int) (v_idx_1035 Int) (v_idx_1034 Int) (v_idx_1033 Int) (v_idx_1032 Int) (v_idx_1031 Int) (v_idx_1030 Int) (v_idx_1029 Int) (v_idx_1028 Int)) (exists ((v_v_2_7 Int) (v_v_41_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1035 c_ULTIMATE.start_malloc_ptr) (= 0 (select |c_#memory_int| v_idx_1035)) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1035)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1031) (< v_idx_1031 c_ULTIMATE.start_malloc_ptr) (= (select |c_#valid| v_idx_1031) 1)) (= v_v_2_7 (select |c_old(#valid)| v_idx_1029)) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1027)) (< v_idx_1027 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1027)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1028) v_v_28_7) (< v_idx_1028 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_1032) v_v_34_7) (< v_idx_1032 (+ c_ULTIMATE.start_main_p3 1))) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (= (select |c_old(#memory_int)| v_idx_1033) v_v_4_7) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1030) (= v_v_32_7 (select |c_#valid| v_idx_1030))) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1026) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1026)) (or (= (select |c_#memory_int| v_idx_1036) v_v_43_7) (< v_idx_1036 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_1034) v_v_41_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1034))))) (forall ((v_idx_1038 Int) (v_idx_1037 Int) (v_idx_1047 Int) (v_idx_1046 Int) (v_idx_1045 Int) (v_idx_1044 Int) (v_idx_1043 Int) (v_idx_1042 Int) (v_idx_1041 Int) (v_idx_1040 Int) (v_idx_1039 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1037) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1037)) (= (select |c_old(#memory_int)| v_idx_1044) v_v_4_7) (or (= v_v_34_7 (select |c_#valid| v_idx_1043)) (< v_idx_1043 (+ c_ULTIMATE.start_main_p3 1))) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1042) (= (select |c_#valid| v_idx_1042) 1) (< v_idx_1042 c_ULTIMATE.start_malloc_ptr)) (or (< v_idx_1038 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1038) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1038))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1045) (= (select |c_#memory_int| v_idx_1045) v_v_41_7)) (= (select |c_old(#valid)| v_idx_1040) v_v_2_7) (or (< v_idx_1047 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_1047) v_v_43_7)) (or (= v_v_32_7 (select |c_#valid| v_idx_1041)) (<= c_ULTIMATE.start_malloc_ptr v_idx_1041)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1039) v_v_28_7) (< v_idx_1039 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_1046 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1046) (= (select |c_#memory_int| v_idx_1046) 1))))))} [2019-01-18 14:54:47,088 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; [2019-01-18 14:54:47,088 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p3 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p3) 1))) [2019-01-18 14:54:47,088 WARN L230 ngHoareTripleChecker]: Post: {2147483564#(or (forall ((v_idx_1059 Int) (v_idx_1069 Int) (v_idx_1068 Int) (v_idx_1067 Int) (v_idx_1066 Int) (v_idx_1065 Int) (v_idx_1064 Int) (v_idx_1063 Int) (v_idx_1062 Int) (v_idx_1061 Int) (v_idx_1060 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_43_7 Int) (v_v_32_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1066)) (or (< v_idx_1065 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#valid| v_idx_1065) v_v_34_7)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1059) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1059) v_v_26_7)) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1060) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1060)) (< v_idx_1060 c_ULTIMATE.start_malloc_ptr)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1061) v_v_28_7) (< v_idx_1061 (+ c_ULTIMATE.start_main_p3 1))) (or (< v_idx_1069 (+ c_ULTIMATE.start_main_p3 1)) (= (select |c_#memory_int| v_idx_1069) v_v_43_7)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1063) (= (select |c_#valid| v_idx_1063) v_v_32_7)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1064) (< v_idx_1064 c_ULTIMATE.start_malloc_ptr) (= 1 (select |c_#valid| v_idx_1064))) (or (= 2 (select |c_#memory_int| v_idx_1068)) (< v_idx_1068 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1068)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1067) (= (select |c_#memory_int| v_idx_1067) v_v_41_7)) (= (select |c_old(#valid)| v_idx_1062) v_v_2_7)))) (forall ((v_idx_1049 Int) (v_idx_1048 Int) (v_idx_1058 Int) (v_idx_1057 Int) (v_idx_1056 Int) (v_idx_1055 Int) (v_idx_1054 Int) (v_idx_1053 Int) (v_idx_1052 Int) (v_idx_1051 Int) (v_idx_1050 Int)) (exists ((v_v_41_7 Int) (v_v_2_7 Int) (v_v_4_7 Int) (v_v_28_7 Int) (v_v_26_7 Int) (v_v_34_7 Int) (v_v_32_7 Int) (v_v_43_7 Int)) (and (<= c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) (= v_v_4_7 (select |c_old(#memory_int)| v_idx_1055)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1050) v_v_28_7) (< v_idx_1050 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#memory_int| v_idx_1057) 1) (< v_idx_1057 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1057)) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1056) (= v_v_41_7 (select |c_#memory_int| v_idx_1056))) (or (<= c_ULTIMATE.start_malloc_ptr v_idx_1052) (= (select |c_#valid| v_idx_1052) v_v_32_7)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1048) v_v_26_7) (<= c_ULTIMATE.start_malloc_ptr v_idx_1048)) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1049) 0) (< v_idx_1049 c_ULTIMATE.start_malloc_ptr) (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1049)) (<= (- (- c_ULTIMATE.start_main_p3) (- c_ULTIMATE.start_malloc_ptr)) 0) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p3) (or (<= (+ c_ULTIMATE.start_main_p3 1) v_idx_1053) (= 1 (select |c_#valid| v_idx_1053)) (< v_idx_1053 c_ULTIMATE.start_malloc_ptr)) (<= (- c_ULTIMATE.start_main_p3 c_ULTIMATE.start_malloc_ptr) 0) (or (= v_v_43_7 (select |c_#memory_int| v_idx_1058)) (< v_idx_1058 (+ c_ULTIMATE.start_main_p3 1))) (or (= (select |c_#valid| v_idx_1054) v_v_34_7) (< v_idx_1054 (+ c_ULTIMATE.start_main_p3 1))) (= v_v_2_7 (select |c_old(#valid)| v_idx_1051))))))} [2019-01-18 14:54:47,088 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-18 14:54:47,609 WARN L268 ngHoareTripleChecker]: -- [2019-01-18 14:54:47,610 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-18 14:54:52,403 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-01-18 14:54:52,405 FATAL L292 ToolchainWalker]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.handleInfeasibleCase(BaseRefinementStrategy.java:296) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:206) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:70) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:456) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:434) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:376) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:225) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:155) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.logic.Util.checkSat(Util.java:61) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.getRedundancy(SimplifyDDA.java:626) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getRedundancy(SimplifyDDAWithTimeout.java:122) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA$Simplifier.walk(SimplifyDDA.java:371) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:122) at de.uni_freiburg.informatik.ultimate.logic.NonRecursive.run(NonRecursive.java:113) at de.uni_freiburg.informatik.ultimate.logic.simplification.SimplifyDDA.simplifyOnce(SimplifyDDA.java:650) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SimplifyDDAWithTimeout.getSimplifiedTerm(SimplifyDDAWithTimeout.java:187) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.SmtUtils.simplify(SmtUtils.java:152) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.toStringSimplified(DebuggingHoareTripleChecker.java:313) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.logUnsoundness(DebuggingHoareTripleChecker.java:270) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:192) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkValidity(DebuggingHoareTripleChecker.java:179) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.DebuggingHoareTripleChecker.checkInternal(DebuggingHoareTripleChecker.java:139) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:80) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:62) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.rcfg.RcfgDebugHelper.isPostSound(RcfgDebugHelper.java:1) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.assertIsPostSound(FixpointEngine.java:268) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateAbstractPost(FixpointEngine.java:254) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.calculateFixpoint(FixpointEngine.java:134) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.algorithm.FixpointEngine.run(FixpointEngine.java:105) at de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2.tool.AbstractInterpreter.runWithoutTimeoutAndResults(AbstractInterpreter.java:149) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarAbsIntRunner.generateFixpoints(CegarAbsIntRunner.java:222) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.constructInterpolantGenerator(BaseTaipanRefinementStrategy.java:382) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseTaipanRefinementStrategy.getInterpolantGenerator(BaseTaipanRefinementStrategy.java:225) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:380) ... 20 more Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:205) ... 50 more [2019-01-18 14:54:52,409 INFO L168 Benchmark]: Toolchain (without parser) took 264177.52 ms. Allocated memory was 141.0 MB in the beginning and 237.0 MB in the end (delta: 95.9 MB). Free memory was 108.6 MB in the beginning and 125.5 MB in the end (delta: -16.9 MB). Peak memory consumption was 151.3 MB. Max. memory is 7.1 GB. [2019-01-18 14:54:52,410 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 141.0 MB. Free memory is still 109.9 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-18 14:54:52,411 INFO L168 Benchmark]: Boogie Procedure Inliner took 61.88 ms. Allocated memory is still 141.0 MB. Free memory was 108.4 MB in the beginning and 106.0 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. [2019-01-18 14:54:52,411 INFO L168 Benchmark]: Boogie Preprocessor took 31.33 ms. Allocated memory is still 141.0 MB. Free memory was 106.0 MB in the beginning and 104.8 MB in the end (delta: 1.2 MB). Peak memory consumption was 1.2 MB. Max. memory is 7.1 GB. [2019-01-18 14:54:52,412 INFO L168 Benchmark]: RCFGBuilder took 558.86 ms. Allocated memory is still 141.0 MB. Free memory was 104.8 MB in the beginning and 92.1 MB in the end (delta: 12.7 MB). Peak memory consumption was 12.7 MB. Max. memory is 7.1 GB. [2019-01-18 14:54:52,413 INFO L168 Benchmark]: TraceAbstraction took 263521.20 ms. Allocated memory was 141.0 MB in the beginning and 237.0 MB in the end (delta: 95.9 MB). Free memory was 91.9 MB in the beginning and 125.5 MB in the end (delta: -33.6 MB). Peak memory consumption was 134.6 MB. Max. memory is 7.1 GB. [2019-01-18 14:54:52,416 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 141.0 MB. Free memory is still 109.9 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 61.88 ms. Allocated memory is still 141.0 MB. Free memory was 108.4 MB in the beginning and 106.0 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 31.33 ms. Allocated memory is still 141.0 MB. Free memory was 106.0 MB in the beginning and 104.8 MB in the end (delta: 1.2 MB). Peak memory consumption was 1.2 MB. Max. memory is 7.1 GB. * RCFGBuilder took 558.86 ms. Allocated memory is still 141.0 MB. Free memory was 104.8 MB in the beginning and 92.1 MB in the end (delta: 12.7 MB). Peak memory consumption was 12.7 MB. Max. memory is 7.1 GB. * TraceAbstraction took 263521.20 ms. Allocated memory was 141.0 MB in the beginning and 237.0 MB in the end (delta: 95.9 MB). Free memory was 91.9 MB in the beginning and 125.5 MB in the end (delta: -33.6 MB). Peak memory consumption was 134.6 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.extractInterpolants(BaseRefinementStrategy.java:391) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...