java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -s ../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf -i ../../../trunk/examples/programs/heapseparator/speedup-poc-dd-2-limited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-fa1c628-m [2019-01-31 15:09:44,190 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-31 15:09:44,192 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-31 15:09:44,203 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-31 15:09:44,204 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-31 15:09:44,205 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-31 15:09:44,206 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-31 15:09:44,208 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-31 15:09:44,209 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-31 15:09:44,210 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-31 15:09:44,211 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-31 15:09:44,211 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-31 15:09:44,212 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-31 15:09:44,213 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-31 15:09:44,214 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-31 15:09:44,215 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-31 15:09:44,216 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-31 15:09:44,219 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-31 15:09:44,224 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-31 15:09:44,226 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-31 15:09:44,232 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-31 15:09:44,233 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-31 15:09:44,239 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-31 15:09:44,239 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-31 15:09:44,239 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-31 15:09:44,241 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-31 15:09:44,242 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-31 15:09:44,245 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-31 15:09:44,247 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-31 15:09:44,248 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-31 15:09:44,248 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-31 15:09:44,251 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-31 15:09:44,251 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-31 15:09:44,251 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-31 15:09:44,252 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-31 15:09:44,253 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-31 15:09:44,253 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-31 15:09:44,277 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-31 15:09:44,277 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-31 15:09:44,278 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-31 15:09:44,278 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-31 15:09:44,278 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-31 15:09:44,279 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-31 15:09:44,279 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-31 15:09:44,279 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-31 15:09:44,279 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-31 15:09:44,279 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-31 15:09:44,280 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-31 15:09:44,280 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-31 15:09:44,280 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-31 15:09:44,281 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-31 15:09:44,281 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-31 15:09:44,281 INFO L133 SettingsManager]: * Use SBE=true [2019-01-31 15:09:44,281 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-31 15:09:44,281 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-31 15:09:44,282 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-31 15:09:44,283 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-31 15:09:44,283 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-31 15:09:44,284 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-31 15:09:44,284 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-31 15:09:44,284 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-31 15:09:44,284 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-31 15:09:44,284 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-31 15:09:44,285 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-31 15:09:44,285 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-31 15:09:44,285 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-31 15:09:44,286 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-31 15:09:44,286 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in -t:10000 [2019-01-31 15:09:44,286 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-31 15:09:44,286 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-31 15:09:44,286 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-31 15:09:44,287 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-31 15:09:44,287 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-31 15:09:44,287 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in [2019-01-31 15:09:44,287 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-31 15:09:44,287 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-31 15:09:44,340 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-31 15:09:44,357 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-31 15:09:44,362 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-31 15:09:44,364 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-31 15:09:44,364 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-31 15:09:44,365 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-2-limited.bpl [2019-01-31 15:09:44,366 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-2-limited.bpl' [2019-01-31 15:09:44,418 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-31 15:09:44,420 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-31 15:09:44,420 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-31 15:09:44,420 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-31 15:09:44,421 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-31 15:09:44,439 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,457 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,488 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-31 15:09:44,489 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-31 15:09:44,489 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-31 15:09:44,489 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-31 15:09:44,501 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,502 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,503 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,504 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,506 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,512 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,514 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/1) ... [2019-01-31 15:09:44,516 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-31 15:09:44,516 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-31 15:09:44,516 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-31 15:09:44,516 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-31 15:09:44,517 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (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:8092 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in -t:10000 [2019-01-31 15:09:44,587 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-01-31 15:09:44,588 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-01-31 15:09:44,959 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-01-31 15:09:44,959 INFO L286 CfgBuilder]: Removed 7 assue(true) statements. [2019-01-31 15:09:44,961 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.01 03:09:44 BoogieIcfgContainer [2019-01-31 15:09:44,961 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-31 15:09:44,962 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-31 15:09:44,962 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-31 15:09:44,965 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-31 15:09:44,966 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:09:44" (1/2) ... [2019-01-31 15:09:44,967 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54f9484f and model type speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 31.01 03:09:44, skipping insertion in model container [2019-01-31 15:09:44,967 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.01 03:09:44" (2/2) ... [2019-01-31 15:09:44,969 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-2-limited.bpl [2019-01-31 15:09:44,978 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-31 15:09:44,986 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 2 error locations. [2019-01-31 15:09:45,003 INFO L257 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2019-01-31 15:09:45,035 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-31 15:09:45,035 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-31 15:09:45,036 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-31 15:09:45,036 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-31 15:09:45,036 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-31 15:09:45,036 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-31 15:09:45,036 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-31 15:09:45,037 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-31 15:09:45,052 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states. [2019-01-31 15:09:45,058 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-01-31 15:09:45,058 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:09:45,059 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-01-31 15:09:45,062 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:09:45,068 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:09:45,068 INFO L82 PathProgramCache]: Analyzing trace with hash 972, now seen corresponding path program 1 times [2019-01-31 15:09:45,071 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:09:45,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:09:45,116 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:09:45,117 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:09:45,117 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:09:45,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:09:45,353 INFO L273 TraceCheckUtils]: 0: Hoare triple {10#true} havoc main_p1, main_p2;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;assume main_p1 < main_p2;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {12#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-31 15:09:45,360 INFO L273 TraceCheckUtils]: 1: Hoare triple {12#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {11#false} is VALID [2019-01-31 15:09:45,362 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-31 15:09:45,364 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-31 15:09:45,364 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-01-31 15:09:45,365 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:09:45,371 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-31 15:09:45,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:09:45,377 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-31 15:09:45,403 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-31 15:09:45,403 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-31 15:09:45,410 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-31 15:09:45,410 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:09:45,412 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 3 states. [2019-01-31 15:09:45,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:09:45,567 INFO L93 Difference]: Finished difference Result 13 states and 15 transitions. [2019-01-31 15:09:45,567 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-31 15:09:45,568 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-01-31 15:09:45,568 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:09:45,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:09:45,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-31 15:09:45,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:09:45,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 15 transitions. [2019-01-31 15:09:45,574 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 15 transitions. [2019-01-31 15:09:45,639 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-31 15:09:45,651 INFO L225 Difference]: With dead ends: 13 [2019-01-31 15:09:45,651 INFO L226 Difference]: Without dead ends: 8 [2019-01-31 15:09:45,655 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:09:45,670 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states. [2019-01-31 15:09:45,721 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 6. [2019-01-31 15:09:45,722 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:09:45,722 INFO L82 GeneralOperation]: Start isEquivalent. First operand 8 states. Second operand 6 states. [2019-01-31 15:09:45,723 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 6 states. [2019-01-31 15:09:45,723 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 6 states. [2019-01-31 15:09:45,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:09:45,726 INFO L93 Difference]: Finished difference Result 8 states and 10 transitions. [2019-01-31 15:09:45,726 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 10 transitions. [2019-01-31 15:09:45,726 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:09:45,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:09:45,727 INFO L74 IsIncluded]: Start isIncluded. First operand 6 states. Second operand 8 states. [2019-01-31 15:09:45,727 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 8 states. [2019-01-31 15:09:45,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:09:45,729 INFO L93 Difference]: Finished difference Result 8 states and 10 transitions. [2019-01-31 15:09:45,730 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 10 transitions. [2019-01-31 15:09:45,730 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:09:45,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:09:45,730 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:09:45,731 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:09:45,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-31 15:09:45,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2019-01-31 15:09:45,734 INFO L78 Accepts]: Start accepts. Automaton has 6 states and 9 transitions. Word has length 2 [2019-01-31 15:09:45,734 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:09:45,747 INFO L480 AbstractCegarLoop]: Abstraction has 6 states and 9 transitions. [2019-01-31 15:09:45,748 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-31 15:09:45,749 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states and 9 transitions. [2019-01-31 15:09:45,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-31 15:09:45,750 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:09:45,750 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-31 15:09:45,750 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:09:45,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:09:45,751 INFO L82 PathProgramCache]: Analyzing trace with hash 29988, now seen corresponding path program 1 times [2019-01-31 15:09:45,751 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:09:45,752 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:09:45,752 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:09:45,752 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:09:45,752 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:09:45,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:09:46,003 INFO L273 TraceCheckUtils]: 0: Hoare triple {54#true} havoc main_p1, main_p2;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;assume main_p1 < main_p2;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-31 15:09:46,021 INFO L273 TraceCheckUtils]: 1: Hoare triple {56#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-31 15:09:46,030 INFO L273 TraceCheckUtils]: 2: Hoare triple {57#(<= 0 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {55#false} is VALID [2019-01-31 15:09:46,031 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-31 15:09:46,031 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-31 15:09:46,032 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-31 15:09:46,033 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-31 15:09:46,034 INFO L207 CegarAbsIntRunner]: [0], [6], [11] [2019-01-31 15:09:46,096 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-31 15:09:46,097 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-31 15:10:42,657 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-01-31 15:10:42,658 INFO L272 AbstractInterpreter]: Visited 3 different actions 13 times. Merged at 1 different actions 5 times. Widened at 1 different actions 1 times. Found 1 fixpoints after 1 different actions. Largest state had 0 variables. [2019-01-31 15:10:42,662 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:10:42,663 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-01-31 15:10:48,021 INFO L227 lantSequenceWeakener]: Weakened 2 states. On average, predicates are now at 66.67% of their original sizes. [2019-01-31 15:10:49,425 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-01-31 15:10:50,244 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-01-31 15:10:52,979 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-01-31 15:10:52,981 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-01-31 15:10:52,981 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [2] total 3 [2019-01-31 15:10:52,982 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:10:52,984 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-31 15:10:52,984 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:10:52,984 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-31 15:10:52,991 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-31 15:10:52,991 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-31 15:10:52,992 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-31 15:10:52,992 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:10:52,993 INFO L87 Difference]: Start difference. First operand 6 states and 9 transitions. Second operand 3 states. [2019-01-31 15:10:53,252 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:10:53,253 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:10:53,256 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:10:53,257 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:10:53,257 WARN L224 ngHoareTripleChecker]: Pre: {86#(forall ((v_idx_711 Int)) (or (< v_idx_711 c_ULTIMATE.start_main_p1) (and (<= 0 (select |c_#memory_int| v_idx_711)) (<= 0 (* 2 (select |c_#memory_int| v_idx_711)))) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_711)))} [2019-01-31 15:10:53,257 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:10:53,258 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-31 15:10:53,258 WARN L230 ngHoareTripleChecker]: Post: {87#false} [2019-01-31 15:10:53,259 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:10:53,259 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:10:53,260 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:10:53,445 WARN L270 ngHoareTripleChecker]: Pre: {86#(and (forall ((v_prenex_1 Int)) (or (< v_prenex_1 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_1) (<= 0 (* 2 (select |#memory_int| v_prenex_1))))) (forall ((v_idx_711 Int)) (or (<= 0 (select |#memory_int| v_idx_711)) (< v_idx_711 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_711))))} [2019-01-31 15:10:53,445 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:10:53,447 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-31 15:10:53,450 WARN L276 ngHoareTripleChecker]: Post: {87#false} [2019-01-31 15:10:53,451 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:10:53,451 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:10:53,452 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], [#valid] -> [-inf_0] v_1993 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1992 [inf_0], [old(#memory_int)] -> [-inf_0] v_1995 [inf_0], [old(#valid)] -> [-inf_0] v_1994 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:53,452 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) (#memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1];) [2019-01-31 15:10:53,452 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:10:53,452 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:10:54,534 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:10:54,535 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:10:54,537 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:10:54,537 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:10:54,537 WARN L224 ngHoareTripleChecker]: Pre: {90#(forall ((v_idx_720 Int)) (or (< v_idx_720 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_720) (and (<= 0 (select |c_#memory_int| v_idx_720)) (<= 0 (* 2 (select |c_#memory_int| v_idx_720))))))} [2019-01-31 15:10:54,538 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:10:54,538 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-31 15:10:54,539 WARN L230 ngHoareTripleChecker]: Post: {91#false} [2019-01-31 15:10:54,539 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:10:54,539 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:10:54,540 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:10:54,672 WARN L270 ngHoareTripleChecker]: Pre: {90#(and (forall ((v_idx_720 Int)) (or (< v_idx_720 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_720) (<= 0 (* 2 (select |#memory_int| v_idx_720))))) (forall ((v_prenex_2 Int)) (or (<= 0 (select |#memory_int| v_prenex_2)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_2) (< v_prenex_2 ULTIMATE.start_main_p1))))} [2019-01-31 15:10:54,673 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:10:54,673 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-31 15:10:54,675 WARN L276 ngHoareTripleChecker]: Post: {91#false} [2019-01-31 15:10:54,675 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:10:54,676 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:10:54,676 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], [#valid] -> [-inf_0] v_2000 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1999 [inf_0], [old(#memory_int)] -> [-inf_0] v_2002 [inf_0], [old(#valid)] -> [-inf_0] v_2001 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:54,676 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:10:54,676 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:10:54,677 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:10:56,543 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:10:56,544 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:10:56,544 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:10:56,545 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:10:56,545 WARN L224 ngHoareTripleChecker]: Pre: {92#(forall ((v_idx_745 Int)) (or (and (<= 0 (* 2 (select |c_#memory_int| v_idx_745))) (<= 0 (select |c_#memory_int| v_idx_745))) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_745) (< v_idx_745 c_ULTIMATE.start_main_p1)))} [2019-01-31 15:10:56,545 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:10:56,546 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-31 15:10:56,546 WARN L230 ngHoareTripleChecker]: Post: {93#(forall ((v_idx_751 Int)) (or (and (<= 0 (select |c_#memory_int| v_idx_751)) (<= 0 (* 2 (select |c_#memory_int| v_idx_751)))) (< v_idx_751 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_751)))} [2019-01-31 15:10:56,546 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:10:56,547 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:10:56,547 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:10:56,601 WARN L270 ngHoareTripleChecker]: Pre: {92#(and (forall ((v_idx_745 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_745) (<= 0 (select |#memory_int| v_idx_745)) (< v_idx_745 ULTIMATE.start_main_p1))) (forall ((v_prenex_3 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_3) (<= 0 (* 2 (select |#memory_int| v_prenex_3))) (< v_prenex_3 ULTIMATE.start_main_p1))))} [2019-01-31 15:10:56,601 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:10:56,601 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-31 15:10:56,630 WARN L276 ngHoareTripleChecker]: Post: {93#(and (forall ((v_prenex_4 Int)) (or (< v_prenex_4 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_4)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_4))) (forall ((v_idx_751 Int)) (or (< v_idx_751 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_751))) (<= (+ ULTIMATE.start_main_p1 1) v_idx_751))))} [2019-01-31 15:10:56,631 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:10:56,631 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:10:56,631 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], [#valid] -> [-inf_0] v_2007 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2006 [inf_0], [old(#memory_int)] -> [-inf_0] v_2009 [inf_0], [old(#valid)] -> [-inf_0] v_2008 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:56,632 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:10:56,632 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 8 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:56,632 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:10:57,003 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:10:57,003 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:10:57,003 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:10:57,004 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:10:57,004 WARN L224 ngHoareTripleChecker]: Pre: {96#(forall ((v_idx_759 Int)) (or (< v_idx_759 c_ULTIMATE.start_main_p1) (and (<= 0 (select |c_#memory_int| v_idx_759)) (<= 0 (* 2 (select |c_#memory_int| v_idx_759)))) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_759)))} [2019-01-31 15:10:57,004 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:10:57,004 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:10:57,004 WARN L230 ngHoareTripleChecker]: Post: {97#false} [2019-01-31 15:10:57,004 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:10:57,005 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:10:57,005 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:10:57,037 WARN L270 ngHoareTripleChecker]: Pre: {96#(and (forall ((v_prenex_5 Int)) (or (< v_prenex_5 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_5) (<= 0 (* 2 (select |#memory_int| v_prenex_5))))) (forall ((v_idx_759 Int)) (or (< v_idx_759 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_idx_759)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_759))))} [2019-01-31 15:10:57,037 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:10:57,037 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:10:57,039 WARN L276 ngHoareTripleChecker]: Post: {97#false} [2019-01-31 15:10:57,039 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:10:57,039 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:10:57,040 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], [#valid] -> [-inf_0] v_2024 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2023 [inf_0], [old(#memory_int)] -> [-inf_0] v_2026 [inf_0], [old(#valid)] -> [-inf_0] v_2025 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:57,040 WARN L628 ntHoareTripleChecker]: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) (assume #memory_int[main_p1] >= 0;) [2019-01-31 15:10:57,040 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:10:57,040 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:10:58,496 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:10:58,496 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:10:58,497 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:10:58,497 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:10:58,498 WARN L224 ngHoareTripleChecker]: Pre: {100#true} [2019-01-31 15:10:58,498 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:10:58,498 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-31 15:10:58,499 WARN L230 ngHoareTripleChecker]: Post: {101#(forall ((v_idx_786 Int)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_786) (and (<= 0 (select |c_#memory_int| v_idx_786)) (<= 0 (* 2 (select |c_#memory_int| v_idx_786)))) (< v_idx_786 c_ULTIMATE.start_main_p1)))} [2019-01-31 15:10:58,499 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:10:58,500 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:10:58,500 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:10:58,501 WARN L270 ngHoareTripleChecker]: Pre: {100#true} [2019-01-31 15:10:58,501 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:10:58,501 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-31 15:10:58,549 WARN L276 ngHoareTripleChecker]: Post: {101#(and (forall ((v_idx_786 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_786) (<= 0 (* 2 (select |#memory_int| v_idx_786))) (< v_idx_786 ULTIMATE.start_main_p1))) (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-31 15:10:58,549 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:10:58,549 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:10:58,550 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_2033 [inf_0], [#valid] -> [-inf_0] v_2031 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2030 [inf_0], [old(#memory_int)] -> [-inf_0] v_2034 [inf_0], [old(#valid)] -> [-inf_0] v_2032 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:10:58,550 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) (#memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1];) [2019-01-31 15:10:58,550 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 8 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:10:58,551 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:11:00,270 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:11:00,271 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:11:00,271 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:11:00,272 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:11:00,272 WARN L224 ngHoareTripleChecker]: Pre: {107#(forall ((v_idx_838 Int)) (or (and (<= 0 (select |c_#memory_int| v_idx_838)) (<= 0 (* 2 (select |c_#memory_int| v_idx_838)))) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_838) (< v_idx_838 c_ULTIMATE.start_main_p1)))} [2019-01-31 15:11:00,272 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:11:00,272 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:11:00,273 WARN L230 ngHoareTripleChecker]: Post: {108#false} [2019-01-31 15:11:00,273 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:11:00,273 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:11:00,274 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:11:00,289 WARN L270 ngHoareTripleChecker]: Pre: {107#(and (forall ((v_prenex_7 Int)) (or (< v_prenex_7 ULTIMATE.start_main_p1) (<= 0 (select |#memory_int| v_prenex_7)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_7))) (forall ((v_idx_838 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_838) (< v_idx_838 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_838))))))} [2019-01-31 15:11:00,289 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:11:00,289 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:11:00,291 WARN L276 ngHoareTripleChecker]: Post: {108#false} [2019-01-31 15:11:00,291 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:11:00,291 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:11:00,292 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1351 [b_84] v_1352 [b_85] v_1353 [b_86] v_1354 [b_87] v_1355 [inf_0], [#valid] -> [-inf_0] v_2080 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2079 [inf_0], [old(#memory_int)] -> [-inf_0] v_2082 [inf_0], [old(#valid)] -> [-inf_0] v_2081 [inf_0], }, Substate: {ints: {v_1352 = [0; inf]; v_1354 = [0; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; b_86 - b_87 = [-1; -1]; b_85 - b_87 = [-inf; -1]; b_84 - b_87 = [-inf; -2]; v_1352 + v_1354 = [0; inf]; v_1352 - v_1354 = [0; inf]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]}, }}} [2019-01-31 15:11:00,292 WARN L628 ntHoareTripleChecker]: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) (assume !(#memory_int[main_p2] <= 0);) [2019-01-31 15:11:00,292 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:11:00,292 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:11:00,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:11:00,297 INFO L93 Difference]: Finished difference Result 8 states and 13 transitions. [2019-01-31 15:11:00,297 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-31 15:11:00,297 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-31 15:11:00,298 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:11:00,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:11:00,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 10 transitions. [2019-01-31 15:11:00,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:11:00,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 10 transitions. [2019-01-31 15:11:00,300 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 10 transitions. [2019-01-31 15:11:00,317 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:11:00,318 INFO L225 Difference]: With dead ends: 8 [2019-01-31 15:11:00,318 INFO L226 Difference]: Without dead ends: 7 [2019-01-31 15:11:00,319 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:11:00,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 7 states. [2019-01-31 15:11:00,331 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 7 to 6. [2019-01-31 15:11:00,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:11:00,332 INFO L82 GeneralOperation]: Start isEquivalent. First operand 7 states. Second operand 6 states. [2019-01-31 15:11:00,332 INFO L74 IsIncluded]: Start isIncluded. First operand 7 states. Second operand 6 states. [2019-01-31 15:11:00,332 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 6 states. [2019-01-31 15:11:00,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:11:00,334 INFO L93 Difference]: Finished difference Result 7 states and 12 transitions. [2019-01-31 15:11:00,334 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 12 transitions. [2019-01-31 15:11:00,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:11:00,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:11:00,334 INFO L74 IsIncluded]: Start isIncluded. First operand 6 states. Second operand 7 states. [2019-01-31 15:11:00,335 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 7 states. [2019-01-31 15:11:00,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:11:00,336 INFO L93 Difference]: Finished difference Result 7 states and 12 transitions. [2019-01-31 15:11:00,336 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 12 transitions. [2019-01-31 15:11:00,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:11:00,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:11:00,337 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:11:00,337 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:11:00,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-01-31 15:11:00,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2019-01-31 15:11:00,338 INFO L78 Accepts]: Start accepts. Automaton has 6 states and 9 transitions. Word has length 3 [2019-01-31 15:11:00,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:11:00,338 INFO L480 AbstractCegarLoop]: Abstraction has 6 states and 9 transitions. [2019-01-31 15:11:00,338 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-31 15:11:00,338 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states and 9 transitions. [2019-01-31 15:11:00,339 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-31 15:11:00,339 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:11:00,339 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-31 15:11:00,339 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:11:00,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:11:00,340 INFO L82 PathProgramCache]: Analyzing trace with hash 30050, now seen corresponding path program 1 times [2019-01-31 15:11:00,340 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:11:00,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:11:00,341 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:11:00,341 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:11:00,341 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:11:00,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:11:00,428 INFO L273 TraceCheckUtils]: 0: Hoare triple {134#true} havoc main_p1, main_p2;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;assume main_p1 < main_p2;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {136#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 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-31 15:11:00,430 INFO L273 TraceCheckUtils]: 1: Hoare triple {136#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 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]; {137#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} is VALID [2019-01-31 15:11:00,431 INFO L273 TraceCheckUtils]: 2: Hoare triple {137#(= (select |#memory_int| ULTIMATE.start_main_p1) 0)} assume !(#memory_int[main_p1] >= 0); {135#false} is VALID [2019-01-31 15:11:00,432 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-31 15:11:00,432 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-31 15:11:00,432 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-31 15:11:00,432 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-01-31 15:11:00,433 INFO L207 CegarAbsIntRunner]: [0], [8], [11] [2019-01-31 15:11:00,436 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-31 15:11:00,436 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-31 15:11:50,869 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-01-31 15:11:50,869 INFO L272 AbstractInterpreter]: Visited 3 different actions 13 times. Merged at 1 different actions 5 times. Widened at 1 different actions 1 times. Found 1 fixpoints after 1 different actions. Largest state had 0 variables. [2019-01-31 15:11:50,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:11:50,870 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-01-31 15:11:56,040 INFO L227 lantSequenceWeakener]: Weakened 2 states. On average, predicates are now at 58.33% of their original sizes. [2019-01-31 15:11:56,313 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-01-31 15:11:56,976 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-01-31 15:11:58,828 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-01-31 15:11:58,828 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-01-31 15:11:58,828 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 4 [2019-01-31 15:11:58,828 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:11:58,829 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-31 15:11:58,829 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:11:58,829 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-31 15:11:58,836 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-31 15:11:58,837 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-31 15:11:58,837 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-31 15:11:58,837 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-31 15:11:58,838 INFO L87 Difference]: Start difference. First operand 6 states and 9 transitions. Second operand 4 states. [2019-01-31 15:11:59,775 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:11:59,776 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:11:59,776 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:11:59,776 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:11:59,777 WARN L224 ngHoareTripleChecker]: Pre: {169#(forall ((v_idx_1565 Int) (v_idx_1567 Int)) (and (or (= (select |c_#memory_int| v_idx_1565) 0) (< v_idx_1565 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1565)) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2) (or (and (<= (select |c_#memory_int| v_idx_1567) 0) (<= (* 2 (select |c_#memory_int| v_idx_1567)) 0)) (< v_idx_1567 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1567))))} [2019-01-31 15:11:59,777 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:11:59,777 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-31 15:11:59,777 WARN L230 ngHoareTripleChecker]: Post: {170#false} [2019-01-31 15:11:59,777 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:11:59,778 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:11:59,778 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:11:59,798 WARN L270 ngHoareTripleChecker]: Pre: {169#(and (forall ((v_prenex_8 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_8)) 0) (< v_prenex_8 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_8))) (forall ((v_idx_1567 Int)) (or (< v_idx_1567 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1567) (<= (select |#memory_int| v_idx_1567) 0))) (forall ((v_idx_1565 Int)) (or (= (select |#memory_int| v_idx_1565) 0) (< v_idx_1565 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1565))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:11:59,798 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:11:59,798 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-31 15:11:59,800 WARN L276 ngHoareTripleChecker]: Post: {170#false} [2019-01-31 15:11:59,800 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:11:59,801 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:11:59,801 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], [#valid] -> [-inf_0] v_1897 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1896 [inf_0], [old(#memory_int)] -> [-inf_0] v_1899 [inf_0], [old(#valid)] -> [-inf_0] v_1898 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 14 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:11:59,801 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) (#memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1];) [2019-01-31 15:11:59,802 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:11:59,802 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,227 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:01,227 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:01,227 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:01,228 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,228 WARN L224 ngHoareTripleChecker]: Pre: {177#(forall ((v_idx_1642 Int) (v_idx_1644 Int)) (and (or (< v_idx_1644 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1644) (and (<= (* 2 (select |c_#memory_int| v_idx_1644)) 0) (<= (select |c_#memory_int| v_idx_1644) 0))) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2) (or (< v_idx_1642 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_1642)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1642))))} [2019-01-31 15:12:01,228 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:01,228 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) [2019-01-31 15:12:01,228 WARN L230 ngHoareTripleChecker]: Post: {178#false} [2019-01-31 15:12:01,228 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:01,229 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,229 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:01,285 WARN L270 ngHoareTripleChecker]: Pre: {177#(and (forall ((v_idx_1644 Int)) (or (< v_idx_1644 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1644) (<= (* 2 (select |#memory_int| v_idx_1644)) 0))) (forall ((v_prenex_9 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_9) (< v_prenex_9 ULTIMATE.start_main_p2) (<= (select |#memory_int| v_prenex_9) 0))) (forall ((v_idx_1642 Int)) (or (< v_idx_1642 ULTIMATE.start_main_p1) (= 0 (select |#memory_int| v_idx_1642)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1642))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:12:01,286 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:01,286 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-31 15:12:01,297 WARN L276 ngHoareTripleChecker]: Post: {178#false} [2019-01-31 15:12:01,298 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,298 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:01,298 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], [#valid] -> [-inf_0] v_1942 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1941 [inf_0], [old(#memory_int)] -> [-inf_0] v_1944 [inf_0], [old(#valid)] -> [-inf_0] v_1943 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 14 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:01,299 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:12:01,299 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:12:01,299 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,581 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:01,582 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:01,582 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:01,582 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,583 WARN L224 ngHoareTripleChecker]: Pre: {183#(forall ((v_idx_1675 Int) (v_idx_1677 Int)) (and (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1677) (and (<= (* 2 (select |c_#memory_int| v_idx_1677)) 0) (<= (select |c_#memory_int| v_idx_1677) 0)) (< v_idx_1677 c_ULTIMATE.start_main_p2)) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1675) (= 0 (select |c_#memory_int| v_idx_1675)) (< v_idx_1675 c_ULTIMATE.start_main_p1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2)))} [2019-01-31 15:12:01,583 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:01,583 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:01,584 WARN L230 ngHoareTripleChecker]: Post: {184#false} [2019-01-31 15:12:01,584 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:01,585 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,585 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:01,612 WARN L270 ngHoareTripleChecker]: Pre: {183#(and (forall ((v_idx_1677 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_idx_1677) (< v_idx_1677 ULTIMATE.start_main_p2) (<= (select |#memory_int| v_idx_1677) 0))) (forall ((v_prenex_10 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_10)) 0) (< v_prenex_10 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_10))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (forall ((v_idx_1675 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1675) (= 0 (select |#memory_int| v_idx_1675)) (< v_idx_1675 ULTIMATE.start_main_p1))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:12:01,612 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:01,612 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:01,613 WARN L276 ngHoareTripleChecker]: Post: {184#false} [2019-01-31 15:12:01,614 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,614 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:01,615 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], [#valid] -> [-inf_0] v_1961 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1960 [inf_0], [old(#memory_int)] -> [-inf_0] v_1963 [inf_0], [old(#valid)] -> [-inf_0] v_1962 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 14 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:01,615 WARN L628 ntHoareTripleChecker]: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) (assume #memory_int[main_p1] >= 0;) [2019-01-31 15:12:01,615 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:12:01,616 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,817 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:01,818 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:01,818 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:01,819 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,819 WARN L224 ngHoareTripleChecker]: Pre: {186#true} [2019-01-31 15:12:01,820 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:01,820 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-31 15:12:01,820 WARN L230 ngHoareTripleChecker]: Post: {187#(forall ((v_idx_1704 Int) (v_idx_1702 Int)) (and (or (< v_idx_1704 c_ULTIMATE.start_main_p2) (and (<= (select |c_#memory_int| v_idx_1704) 0) (<= (* 2 (select |c_#memory_int| v_idx_1704)) 0)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1704)) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (or (= 0 (select |c_#memory_int| v_idx_1702)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1702) (< v_idx_1702 c_ULTIMATE.start_main_p1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2)))} [2019-01-31 15:12:01,821 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:01,821 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:01,822 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:01,829 WARN L270 ngHoareTripleChecker]: Pre: {186#true} [2019-01-31 15:12:01,829 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:01,829 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-31 15:12:01,855 WARN L276 ngHoareTripleChecker]: Post: {187#(and (forall ((v_idx_1702 Int)) (or (= 0 (select |#memory_int| v_idx_1702)) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1702) (< v_idx_1702 ULTIMATE.start_main_p1))) (forall ((v_idx_1704 Int)) (or (<= (select |#memory_int| v_idx_1704) 0) (< v_idx_1704 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1704))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (forall ((v_prenex_11 Int)) (or (< v_prenex_11 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_11)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_11))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:12:01,855 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:01,856 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:01,856 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1970 [inf_0], [#valid] -> [-inf_0] v_1968 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1967 [inf_0], [old(#memory_int)] -> [-inf_0] v_1971 [inf_0], [old(#valid)] -> [-inf_0] v_1969 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:01,856 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:12:01,857 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 9 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:01,857 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:02,678 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:02,679 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:02,679 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:02,680 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:02,680 WARN L224 ngHoareTripleChecker]: Pre: {188#true} [2019-01-31 15:12:02,680 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:02,680 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-31 15:12:02,681 WARN L230 ngHoareTripleChecker]: Post: {189#(forall ((v_idx_1728 Int)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1728) (< v_idx_1728 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1728) 0)))} [2019-01-31 15:12:02,681 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:02,681 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:02,682 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:02,683 WARN L270 ngHoareTripleChecker]: Pre: {188#true} [2019-01-31 15:12:02,683 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:12:02,684 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-31 15:12:02,699 WARN L276 ngHoareTripleChecker]: Post: {189#(forall ((v_idx_1728 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1728) (< v_idx_1728 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_1728) 0)))} [2019-01-31 15:12:02,700 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:02,700 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:02,701 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1988 [inf_0], [#valid] -> [-inf_0] v_1986 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_1985 [inf_0], [old(#memory_int)] -> [-inf_0] v_1989 [inf_0], [old(#valid)] -> [-inf_0] v_1987 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:02,701 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:12:02,702 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 8 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:02,702 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:02,935 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:02,935 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:02,935 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:02,936 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:02,936 WARN L224 ngHoareTripleChecker]: Pre: {192#true} [2019-01-31 15:12:02,936 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:02,936 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:02,937 WARN L230 ngHoareTripleChecker]: Post: {193#(forall ((v_idx_1756 Int) (v_idx_1754 Int)) (and (or (= (select |c_#memory_int| v_idx_1754) 0) (< v_idx_1754 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1754)) (or (< v_idx_1756 c_ULTIMATE.start_main_p2) (and (<= (select |c_#memory_int| v_idx_1756) 0) (<= (* 2 (select |c_#memory_int| v_idx_1756)) 0)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1756)) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2)))} [2019-01-31 15:12:02,937 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:02,937 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:02,938 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:02,939 WARN L270 ngHoareTripleChecker]: Pre: {192#true} [2019-01-31 15:12:02,939 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:02,939 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:02,961 WARN L276 ngHoareTripleChecker]: Post: {193#(and (forall ((v_idx_1754 Int)) (or (= (select |#memory_int| v_idx_1754) 0) (< v_idx_1754 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_1754))) (forall ((v_idx_1756 Int)) (or (< v_idx_1756 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_idx_1756)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1756))) (forall ((v_prenex_12 Int)) (or (<= (select |#memory_int| v_prenex_12) 0) (< v_prenex_12 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_12))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:12:02,961 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:02,962 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:02,962 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_2006 [inf_0], [#valid] -> [-inf_0] v_2004 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2003 [inf_0], [old(#memory_int)] -> [-inf_0] v_2007 [inf_0], [old(#valid)] -> [-inf_0] v_2005 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:02,962 WARN L628 ntHoareTripleChecker]: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) (assume #memory_int[main_p1] >= 0;) [2019-01-31 15:12:02,963 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 9 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:02,963 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:04,281 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:04,281 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:04,282 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:04,282 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:04,282 WARN L224 ngHoareTripleChecker]: Pre: {194#true} [2019-01-31 15:12:04,282 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:04,282 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:04,283 WARN L230 ngHoareTripleChecker]: Post: {195#(forall ((v_idx_1780 Int)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1780) (< v_idx_1780 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1780) 0)))} [2019-01-31 15:12:04,283 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:04,283 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:04,283 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:04,284 WARN L270 ngHoareTripleChecker]: Pre: {194#true} [2019-01-31 15:12:04,284 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:12:04,284 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:12:04,297 WARN L276 ngHoareTripleChecker]: Post: {195#(forall ((v_idx_1780 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1780) (< v_idx_1780 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_1780) 0)))} [2019-01-31 15:12:04,298 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:04,298 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:04,298 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_2024 [inf_0], [#valid] -> [-inf_0] v_2022 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2021 [inf_0], [old(#memory_int)] -> [-inf_0] v_2025 [inf_0], [old(#valid)] -> [-inf_0] v_2023 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:04,299 WARN L628 ntHoareTripleChecker]: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) (assume #memory_int[main_p1] >= 0;) [2019-01-31 15:12:04,299 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 8 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:04,300 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:06,090 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:06,091 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:06,091 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:06,092 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:06,092 WARN L224 ngHoareTripleChecker]: Pre: {206#true} [2019-01-31 15:12:06,092 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:12:06,092 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:12:06,093 WARN L230 ngHoareTripleChecker]: Post: {207#(forall ((v_idx_1869 Int) (v_idx_1867 Int)) (and (or (< v_idx_1869 c_ULTIMATE.start_main_p2) (and (<= (* 2 (select |c_#memory_int| v_idx_1869)) 0) (<= (select |c_#memory_int| v_idx_1869) 0)) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_1869)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1867) (< v_idx_1867 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1867) 0)) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2)))} [2019-01-31 15:12:06,093 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:06,093 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:06,094 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:06,094 WARN L270 ngHoareTripleChecker]: Pre: {206#true} [2019-01-31 15:12:06,095 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:12:06,095 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:12:06,118 WARN L276 ngHoareTripleChecker]: Post: {207#(and (forall ((v_prenex_13 Int)) (or (<= (select |#memory_int| v_prenex_13) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_13) (< v_prenex_13 ULTIMATE.start_main_p2))) (forall ((v_idx_1867 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1867) (< v_idx_1867 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_1867) 0))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (forall ((v_idx_1869 Int)) (or (< v_idx_1869 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_idx_1869)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_1869))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2))} [2019-01-31 15:12:06,118 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:06,119 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:06,119 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_2085 [inf_0], [#valid] -> [-inf_0] v_2083 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2082 [inf_0], [old(#memory_int)] -> [-inf_0] v_2086 [inf_0], [old(#valid)] -> [-inf_0] v_2084 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:06,120 WARN L628 ntHoareTripleChecker]: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) (assume !(#memory_int[main_p2] <= 0);) [2019-01-31 15:12:06,120 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 9 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; ULTIMATE.start_main_p2 - b_85 = [0; inf]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p2 - b_86 = [0; 0]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; ULTIMATE.start_main_p2 - b_84 = [1; inf]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; ULTIMATE.start_main_p2 - b_87 = [-1; -1]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:06,120 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:06,936 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:12:06,936 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:12:06,936 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:12:06,937 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:12:06,937 WARN L224 ngHoareTripleChecker]: Pre: {208#true} [2019-01-31 15:12:06,937 WARN L228 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:12:06,937 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:12:06,938 WARN L230 ngHoareTripleChecker]: Post: {209#(forall ((v_idx_1893 Int)) (or (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_1893) (< v_idx_1893 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_1893) 0)))} [2019-01-31 15:12:06,938 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:12:06,938 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:12:06,939 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:12:06,940 WARN L270 ngHoareTripleChecker]: Pre: {208#true} [2019-01-31 15:12:06,940 WARN L274 ngHoareTripleChecker]: Action: assume !(#memory_int[main_p2] <= 0); [2019-01-31 15:12:06,940 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) [2019-01-31 15:12:06,950 WARN L276 ngHoareTripleChecker]: Post: {209#(forall ((v_idx_1893 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_idx_1893) (< v_idx_1893 ULTIMATE.start_main_p1) (= (select |#memory_int| v_idx_1893) 0)))} [2019-01-31 15:12:06,950 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:12:06,950 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:12:06,951 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_2103 [inf_0], [#valid] -> [-inf_0] v_2101 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_2100 [inf_0], [old(#memory_int)] -> [-inf_0] v_2104 [inf_0], [old(#valid)] -> [-inf_0] v_2102 [inf_0], }, Substate: {8 vars top, }}} [2019-01-31 15:12:06,951 WARN L628 ntHoareTripleChecker]: (not (<= (select |c_#memory_int| c_ULTIMATE.start_main_p2) 0)) (assume !(#memory_int[main_p2] <= 0);) [2019-01-31 15:12:06,951 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[#memory_int] -> [-inf_0] v_1208 [b_84] v_1209 [b_85] v_1210 [b_86] v_1211 [b_87] v_1212 [inf_0], }, Substate: {ints: {v_1209 = [0; 0]; v_1211 = [-inf; 0]}, 8 vars top, relations: {b_84 - b_85 = [-1; -1]; ULTIMATE.start_main_p1 - b_85 = [-1; -1]; b_85 - b_86 = [-inf; 0]; b_84 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_86 = [-inf; -1]; ULTIMATE.start_main_p1 - b_84 = [0; 0]; b_85 - b_87 = [-inf; -1]; b_86 - b_87 = [-1; -1]; b_84 - b_87 = [-inf; -2]; ULTIMATE.start_main_p1 - b_87 = [-inf; -2]; v_1209 + v_1211 = [-inf; 0]; v_1209 - v_1211 = [0; inf]}, }}} [2019-01-31 15:12:06,952 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:12:06,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:12:06,955 INFO L93 Difference]: Finished difference Result 11 states and 17 transitions. [2019-01-31 15:12:06,955 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-31 15:12:06,955 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-01-31 15:12:06,955 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:12:06,955 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:12:06,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 11 transitions. [2019-01-31 15:12:06,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:12:06,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 11 transitions. [2019-01-31 15:12:06,957 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 11 transitions. [2019-01-31 15:12:06,980 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:12:06,981 INFO L225 Difference]: With dead ends: 11 [2019-01-31 15:12:06,981 INFO L226 Difference]: Without dead ends: 8 [2019-01-31 15:12:06,982 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-31 15:12:06,982 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states. [2019-01-31 15:12:06,998 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 8. [2019-01-31 15:12:06,998 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:12:06,999 INFO L82 GeneralOperation]: Start isEquivalent. First operand 8 states. Second operand 8 states. [2019-01-31 15:12:06,999 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 8 states. [2019-01-31 15:12:06,999 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 8 states. [2019-01-31 15:12:07,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:12:07,001 INFO L93 Difference]: Finished difference Result 8 states and 13 transitions. [2019-01-31 15:12:07,001 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 13 transitions. [2019-01-31 15:12:07,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:12:07,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:12:07,002 INFO L74 IsIncluded]: Start isIncluded. First operand 8 states. Second operand 8 states. [2019-01-31 15:12:07,002 INFO L87 Difference]: Start difference. First operand 8 states. Second operand 8 states. [2019-01-31 15:12:07,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:12:07,003 INFO L93 Difference]: Finished difference Result 8 states and 13 transitions. [2019-01-31 15:12:07,003 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 13 transitions. [2019-01-31 15:12:07,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:12:07,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:12:07,004 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:12:07,004 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:12:07,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-01-31 15:12:07,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 13 transitions. [2019-01-31 15:12:07,005 INFO L78 Accepts]: Start accepts. Automaton has 8 states and 13 transitions. Word has length 3 [2019-01-31 15:12:07,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:12:07,005 INFO L480 AbstractCegarLoop]: Abstraction has 8 states and 13 transitions. [2019-01-31 15:12:07,006 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-31 15:12:07,006 INFO L276 IsEmpty]: Start isEmpty. Operand 8 states and 13 transitions. [2019-01-31 15:12:07,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-31 15:12:07,006 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:12:07,006 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-31 15:12:07,007 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:12:07,007 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:12:07,007 INFO L82 PathProgramCache]: Analyzing trace with hash 929546, now seen corresponding path program 1 times [2019-01-31 15:12:07,007 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:12:07,008 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:12:07,008 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:12:07,008 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:12:07,008 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:12:07,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:12:07,142 INFO L273 TraceCheckUtils]: 0: Hoare triple {241#true} havoc main_p1, main_p2;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p1 := malloc_ptr;malloc_old_#valid := #valid;havoc malloc_ptr;havoc #valid;assume malloc_old_#valid[malloc_ptr] == 0;assume #valid == malloc_old_#valid[malloc_ptr := 1];main_p2 := malloc_ptr;assume main_p1 < main_p2;#memory_int := #memory_int[main_p1 := 0];#memory_int := #memory_int[main_p2 := 0]; {243#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-01-31 15:12:07,142 INFO L273 TraceCheckUtils]: 1: Hoare triple {243#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {244#(and (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-01-31 15:12:07,143 INFO L273 TraceCheckUtils]: 2: Hoare triple {244#(and (<= 1 (select (store |#memory_int| ULTIMATE.start_main_p2 (+ (select |#memory_int| ULTIMATE.start_main_p2) (- 1))) ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {245#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} is VALID [2019-01-31 15:12:07,144 INFO L273 TraceCheckUtils]: 3: Hoare triple {245#(<= 1 (select |#memory_int| ULTIMATE.start_main_p1))} assume !(#memory_int[main_p1] >= 0); {242#false} is VALID [2019-01-31 15:12:07,145 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-31 15:12:07,145 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-31 15:12:07,145 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-31 15:12:07,146 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-31 15:12:07,146 INFO L207 CegarAbsIntRunner]: [0], [6], [8], [11] [2019-01-31 15:12:07,147 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-31 15:12:07,148 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-31 15:14:07,297 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-01-31 15:14:07,297 INFO L272 AbstractInterpreter]: Visited 4 different actions 28 times. Merged at 2 different actions 8 times. Widened at 2 different actions 4 times. Found 10 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-31 15:14:07,297 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:14:07,297 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-01-31 15:14:14,867 INFO L227 lantSequenceWeakener]: Weakened 3 states. On average, predicates are now at 55.56% of their original sizes. [2019-01-31 15:14:15,162 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-01-31 15:14:15,751 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-01-31 15:14:17,355 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-01-31 15:14:17,355 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-01-31 15:14:17,355 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [3] total 5 [2019-01-31 15:14:17,356 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:14:17,356 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-31 15:14:17,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:14:17,356 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-31 15:14:17,367 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-31 15:14:17,367 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-31 15:14:17,367 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-31 15:14:17,368 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-31 15:14:17,368 INFO L87 Difference]: Start difference. First operand 8 states and 13 transitions. Second operand 4 states. [2019-01-31 15:14:18,119 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:14:18,120 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:14:18,120 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:14:18,121 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:14:18,121 WARN L224 ngHoareTripleChecker]: Pre: {286#(forall ((v_idx_3293 Int) (v_idx_3291 Int)) (and (or (and (or (< v_idx_3293 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3293) (<= (* 2 (select |c_#memory_int| v_idx_3293)) 0)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_3291)) (and (or (< v_idx_3293 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3293) (<= (* 2 (select |c_#memory_int| v_idx_3293)) 0)) (< v_idx_3291 c_ULTIMATE.start_main_p1)) (and (<= 0 (* 2 (select |c_#memory_int| v_idx_3291))) (or (and (<= (* 2 (select |c_#memory_int| v_idx_3293)) 0) (<= (select |c_#memory_int| v_idx_3293) (select |c_#memory_int| v_idx_3291))) (< v_idx_3293 c_ULTIMATE.start_main_p2) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3293)))) (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2)))} [2019-01-31 15:14:18,121 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:14:18,122 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-31 15:14:18,122 WARN L230 ngHoareTripleChecker]: Post: {287#false} [2019-01-31 15:14:18,122 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:14:18,123 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:14:18,123 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:14:18,219 WARN L270 ngHoareTripleChecker]: Pre: {286#(and (forall ((v_idx_3293 Int) (v_idx_3291 Int)) (or (< v_idx_3291 ULTIMATE.start_main_p1) (< v_idx_3293 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_idx_3293) (<= (* 2 (select |#memory_int| v_idx_3293)) 0) (<= (select |#memory_int| v_idx_3293) (select |#memory_int| v_idx_3291)))) (forall ((v_prenex_25 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_25) (< v_prenex_25 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_25)) 0))) (or (forall ((v_prenex_22 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_22))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_22))) (forall ((v_prenex_21 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_21) (< v_prenex_21 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_21)) 0)))) (forall ((v_prenex_18 Int) (v_prenex_19 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_18) (<= (* 2 (select |#memory_int| v_prenex_18)) 0) (< v_prenex_18 ULTIMATE.start_main_p2) (<= (select |#memory_int| v_prenex_18) (select |#memory_int| v_prenex_19)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_19))) (forall ((v_prenex_20 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_20) (<= 0 (* 2 (select |#memory_int| v_prenex_20))) (< v_prenex_20 ULTIMATE.start_main_p1))) (or (forall ((v_prenex_24 Int)) (or (< v_prenex_24 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_24))))) (forall ((v_prenex_23 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_23) (<= (* 2 (select |#memory_int| v_prenex_23)) 0) (< v_prenex_23 ULTIMATE.start_main_p2)))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (or (forall ((v_prenex_26 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_26)) 0) (< v_prenex_26 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_26))) (forall ((v_prenex_27 Int)) (<= 0 (* 2 (select |#memory_int| v_prenex_27))))) (forall ((v_prenex_16 Int) (v_prenex_17 Int)) (or (< v_prenex_16 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_16) (<= (* 2 (select |#memory_int| v_prenex_16)) 0) (<= (select |#memory_int| v_prenex_16) (select |#memory_int| v_prenex_17)))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2) (forall ((v_prenex_15 Int) (v_prenex_14 Int)) (or (<= (select |#memory_int| v_prenex_14) (select |#memory_int| v_prenex_15)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_15) (< v_prenex_14 ULTIMATE.start_main_p2) (< v_prenex_15 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_14))))} [2019-01-31 15:14:18,219 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; [2019-01-31 15:14:18,220 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-31 15:14:18,222 WARN L276 ngHoareTripleChecker]: Post: {287#false} [2019-01-31 15:14:18,222 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:14:18,222 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:14:18,222 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_3163 [b_214] v_3164 [b_215] v_3165 [b_216] v_3166 [b_217] v_3167 [inf_0], [#valid] -> [-inf_0] v_3783 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_3782 [inf_0], [old(#memory_int)] -> [-inf_0] v_3785 [inf_0], [old(#valid)] -> [-inf_0] v_3784 [inf_0], }, Substate: {ints: {v_3164 = [0; inf]; v_3166 = [-inf; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_214 = [0; 0]; ULTIMATE.start_main_p2 - b_214 = [1; inf]; b_214 - b_216 = [-inf; -1]; ULTIMATE.start_main_p1 - b_216 = [-inf; -1]; ULTIMATE.start_main_p2 - b_216 = [0; 0]; b_215 - b_216 = [-inf; 0]; b_214 - b_217 = [-inf; -2]; b_216 - b_217 = [-1; -1]; ULTIMATE.start_main_p1 - b_217 = [-inf; -2]; ULTIMATE.start_main_p2 - b_217 = [-1; -1]; b_215 - b_217 = [-inf; -1]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; v_3164 - v_3166 = [0; inf]; b_214 - b_215 = [-1; -1]; ULTIMATE.start_main_p1 - b_215 = [-1; -1]; ULTIMATE.start_main_p2 - b_215 = [0; inf]}, }}} [2019-01-31 15:14:18,223 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p1 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p1) 1))) (#memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1];) [2019-01-31 15:14:18,223 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:14:18,223 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:14:19,541 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:14:19,541 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:14:19,542 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:14:19,542 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:14:19,542 WARN L224 ngHoareTripleChecker]: Pre: {292#(forall ((v_idx_3324 Int) (v_idx_3326 Int)) (and (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2) (or (and (or (< v_idx_3324 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_3324) (<= 0 (* 2 (select |c_#memory_int| v_idx_3324)))) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3326)) (and (< v_idx_3326 c_ULTIMATE.start_main_p2) (or (< v_idx_3324 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_3324) (<= 0 (* 2 (select |c_#memory_int| v_idx_3324))))) (and (<= (* 2 (select |c_#memory_int| v_idx_3326)) 0) (or (and (<= (select |c_#memory_int| v_idx_3326) (select |c_#memory_int| v_idx_3324)) (<= 0 (* 2 (select |c_#memory_int| v_idx_3324)))) (< v_idx_3324 c_ULTIMATE.start_main_p1) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_3324))))))} [2019-01-31 15:14:19,542 WARN L228 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:14:19,543 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-31 15:14:19,543 WARN L230 ngHoareTripleChecker]: Post: {293#false} [2019-01-31 15:14:19,543 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:14:19,544 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:14:19,544 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:14:19,614 WARN L270 ngHoareTripleChecker]: Pre: {292#(and (or (forall ((v_prenex_37 Int)) (or (< v_prenex_37 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_37)) 0))) (forall ((v_prenex_36 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_36))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_36) (< v_prenex_36 ULTIMATE.start_main_p1)))) (forall ((v_prenex_41 Int) (v_prenex_40 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_41) (< v_prenex_40 ULTIMATE.start_main_p1) (< v_prenex_41 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_40) (<= (select |#memory_int| v_prenex_41) (select |#memory_int| v_prenex_40)))) (forall ((v_idx_3324 Int)) (or (< v_idx_3324 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_idx_3324) (<= 0 (* 2 (select |#memory_int| v_idx_3324))))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (or (forall ((v_prenex_39 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_39)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_39))) (forall ((v_prenex_38 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_38))) (< v_prenex_38 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_38)))) (forall ((v_prenex_35 Int)) (or (< v_prenex_35 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_35)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_35))) (forall ((v_prenex_32 Int) (v_prenex_31 Int)) (or (<= (select |#memory_int| v_prenex_32) (select |#memory_int| v_prenex_31)) (< v_prenex_32 ULTIMATE.start_main_p2) (< v_prenex_31 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_31))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_31))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2) (forall ((v_prenex_29 Int) (v_prenex_30 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_29))) (<= (select |#memory_int| v_prenex_30) (select |#memory_int| v_prenex_29)) (< v_prenex_29 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_29))) (or (forall ((v_prenex_33 Int)) (or (< v_prenex_33 ULTIMATE.start_main_p1) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_33) (<= 0 (* 2 (select |#memory_int| v_prenex_33))))) (forall ((v_prenex_34 Int)) (<= (* 2 (select |#memory_int| v_prenex_34)) 0))) (forall ((v_idx_3326 Int) (v_prenex_28 Int)) (or (<= 0 (* 2 (select |#memory_int| v_prenex_28))) (< v_prenex_28 ULTIMATE.start_main_p1) (<= (select |#memory_int| v_idx_3326) (select |#memory_int| v_prenex_28)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_28) (<= (+ ULTIMATE.start_main_p2 1) v_idx_3326))))} [2019-01-31 15:14:19,615 WARN L274 ngHoareTripleChecker]: Action: #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; [2019-01-31 15:14:19,615 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-31 15:14:19,616 WARN L276 ngHoareTripleChecker]: Post: {293#false} [2019-01-31 15:14:19,616 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:14:19,616 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:14:19,617 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_3163 [b_214] v_3164 [b_215] v_3165 [b_216] v_3166 [b_217] v_3167 [inf_0], [#valid] -> [-inf_0] v_3804 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_3803 [inf_0], [old(#memory_int)] -> [-inf_0] v_3806 [inf_0], [old(#valid)] -> [-inf_0] v_3805 [inf_0], }, Substate: {ints: {v_3164 = [0; inf]; v_3166 = [-inf; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_214 = [0; 0]; ULTIMATE.start_main_p2 - b_214 = [1; inf]; b_214 - b_216 = [-inf; -1]; ULTIMATE.start_main_p1 - b_216 = [-inf; -1]; ULTIMATE.start_main_p2 - b_216 = [0; 0]; b_215 - b_216 = [-inf; 0]; b_214 - b_217 = [-inf; -2]; b_216 - b_217 = [-1; -1]; ULTIMATE.start_main_p1 - b_217 = [-inf; -2]; ULTIMATE.start_main_p2 - b_217 = [-1; -1]; b_215 - b_217 = [-inf; -1]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; v_3164 - v_3166 = [0; inf]; b_214 - b_215 = [-1; -1]; ULTIMATE.start_main_p1 - b_215 = [-1; -1]; ULTIMATE.start_main_p2 - b_215 = [0; inf]}, }}} [2019-01-31 15:14:19,617 WARN L628 ntHoareTripleChecker]: (= |c_#memory_int_primed| (store |c_#memory_int| c_ULTIMATE.start_main_p2 (+ (select |c_#memory_int| c_ULTIMATE.start_main_p2) (- 1)))) (#memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1];) [2019-01-31 15:14:19,617 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:14:19,617 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:14:19,941 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:14:19,942 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:14:19,942 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:14:19,942 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:14:19,943 WARN L224 ngHoareTripleChecker]: Pre: {300#(forall ((v_idx_3357 Int) (v_idx_3359 Int)) (and (<= (- c_ULTIMATE.start_main_p1 c_ULTIMATE.start_main_p2) (- 1)) (<= (+ c_ULTIMATE.start_main_p1 1) c_ULTIMATE.start_main_p2) (or (and (< v_idx_3357 c_ULTIMATE.start_main_p1) (or (<= (* 2 (select |c_#memory_int| v_idx_3359)) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3359) (< v_idx_3359 c_ULTIMATE.start_main_p2))) (and (or (<= (* 2 (select |c_#memory_int| v_idx_3359)) 0) (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3359) (< v_idx_3359 c_ULTIMATE.start_main_p2)) (<= (+ c_ULTIMATE.start_main_p1 1) v_idx_3357)) (and (<= 0 (* 2 (select |c_#memory_int| v_idx_3357))) (or (<= (+ c_ULTIMATE.start_main_p2 1) v_idx_3359) (< v_idx_3359 c_ULTIMATE.start_main_p2) (and (<= (* 2 (select |c_#memory_int| v_idx_3359)) 0) (<= (select |c_#memory_int| v_idx_3359) (select |c_#memory_int| v_idx_3357))))))))} [2019-01-31 15:14:19,943 WARN L228 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:14:19,943 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:14:19,943 WARN L230 ngHoareTripleChecker]: Post: {301#false} [2019-01-31 15:14:19,943 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:14:19,944 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:14:19,944 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:14:20,034 WARN L270 ngHoareTripleChecker]: Pre: {300#(and (forall ((v_idx_3359 Int)) (or (<= (* 2 (select |#memory_int| v_idx_3359)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_idx_3359) (< v_idx_3359 ULTIMATE.start_main_p2))) (forall ((v_prenex_49 Int) (v_prenex_48 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_48) (<= (* 2 (select |#memory_int| v_prenex_49)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_49) (< v_prenex_49 ULTIMATE.start_main_p2) (<= (select |#memory_int| v_prenex_49) (select |#memory_int| v_prenex_48)))) (forall ((v_prenex_50 Int)) (or (< v_prenex_50 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_prenex_50))) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_50))) (or (forall ((v_prenex_56 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_56)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_56) (< v_prenex_56 ULTIMATE.start_main_p2))) (forall ((v_prenex_55 Int)) (or (<= (+ ULTIMATE.start_main_p1 1) v_prenex_55) (<= 0 (* 2 (select |#memory_int| v_prenex_55)))))) (or (forall ((v_idx_3357 Int)) (or (< v_idx_3357 ULTIMATE.start_main_p1) (<= 0 (* 2 (select |#memory_int| v_idx_3357))))) (forall ((v_prenex_42 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_42) (<= (* 2 (select |#memory_int| v_prenex_42)) 0) (< v_prenex_42 ULTIMATE.start_main_p2)))) (forall ((v_prenex_44 Int) (v_prenex_43 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_44) (<= (select |#memory_int| v_prenex_44) (select |#memory_int| v_prenex_43)) (< v_prenex_43 ULTIMATE.start_main_p1) (< v_prenex_44 ULTIMATE.start_main_p2) (<= (* 2 (select |#memory_int| v_prenex_44)) 0))) (forall ((v_prenex_54 Int) (v_prenex_53 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_54) (<= (select |#memory_int| v_prenex_54) (select |#memory_int| v_prenex_53)) (<= (+ ULTIMATE.start_main_p1 1) v_prenex_53) (< v_prenex_53 ULTIMATE.start_main_p1) (< v_prenex_54 ULTIMATE.start_main_p2))) (<= (- ULTIMATE.start_main_p1 ULTIMATE.start_main_p2) (- 1)) (forall ((v_prenex_45 Int)) (or (<= (+ ULTIMATE.start_main_p2 1) v_prenex_45) (<= (* 2 (select |#memory_int| v_prenex_45)) 0) (< v_prenex_45 ULTIMATE.start_main_p2))) (<= (+ ULTIMATE.start_main_p1 1) ULTIMATE.start_main_p2) (or (forall ((v_prenex_46 Int)) (<= 0 (* 2 (select |#memory_int| v_prenex_46)))) (forall ((v_prenex_47 Int)) (or (<= (* 2 (select |#memory_int| v_prenex_47)) 0) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_47) (< v_prenex_47 ULTIMATE.start_main_p2)))) (forall ((v_prenex_52 Int) (v_prenex_51 Int)) (or (< v_prenex_52 ULTIMATE.start_main_p2) (<= (+ ULTIMATE.start_main_p2 1) v_prenex_52) (<= (select |#memory_int| v_prenex_52) (select |#memory_int| v_prenex_51)) (<= (* 2 (select |#memory_int| v_prenex_52)) 0))))} [2019-01-31 15:14:20,034 WARN L274 ngHoareTripleChecker]: Action: assume #memory_int[main_p1] >= 0; [2019-01-31 15:14:20,034 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) [2019-01-31 15:14:20,037 WARN L276 ngHoareTripleChecker]: Post: {301#false} [2019-01-31 15:14:20,037 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:14:20,037 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:14:20,038 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[#memory_int] -> [-inf_0] v_3163 [b_214] v_3164 [b_215] v_3165 [b_216] v_3166 [b_217] v_3167 [inf_0], [#valid] -> [-inf_0] v_3823 [inf_0], [ULTIMATE.start_malloc_old_#valid] -> [-inf_0] v_3822 [inf_0], [old(#memory_int)] -> [-inf_0] v_3825 [inf_0], [old(#valid)] -> [-inf_0] v_3824 [inf_0], }, Substate: {ints: {v_3164 = [0; inf]; v_3166 = [-inf; 0]}, 14 vars top, relations: {ULTIMATE.start_main_p1 - b_214 = [0; 0]; ULTIMATE.start_main_p2 - b_214 = [1; inf]; b_214 - b_216 = [-inf; -1]; ULTIMATE.start_main_p1 - b_216 = [-inf; -1]; ULTIMATE.start_main_p2 - b_216 = [0; 0]; b_215 - b_216 = [-inf; 0]; b_214 - b_217 = [-inf; -2]; b_216 - b_217 = [-1; -1]; ULTIMATE.start_main_p1 - b_217 = [-inf; -2]; ULTIMATE.start_main_p2 - b_217 = [-1; -1]; b_215 - b_217 = [-inf; -1]; ULTIMATE.start_main_p1 - ULTIMATE.start_main_p2 = [-inf; -1]; v_3164 - v_3166 = [0; inf]; b_214 - b_215 = [-1; -1]; ULTIMATE.start_main_p1 - b_215 = [-1; -1]; ULTIMATE.start_main_p2 - b_215 = [0; inf]}, }}} [2019-01-31 15:14:20,039 WARN L628 ntHoareTripleChecker]: (<= 0 (select |c_#memory_int| c_ULTIMATE.start_main_p1)) (assume #memory_int[main_p1] >= 0;) [2019-01-31 15:14:20,039 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:14:20,039 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:14:20,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:14:20,169 INFO L93 Difference]: Finished difference Result 8 states and 13 transitions. [2019-01-31 15:14:20,169 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-31 15:14:20,169 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-31 15:14:20,170 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:14:20,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:14:20,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 6 transitions. [2019-01-31 15:14:20,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:14:20,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 6 transitions. [2019-01-31 15:14:20,171 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 6 transitions. [2019-01-31 15:14:20,185 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-31 15:14:20,186 INFO L225 Difference]: With dead ends: 8 [2019-01-31 15:14:20,186 INFO L226 Difference]: Without dead ends: 0 [2019-01-31 15:14:20,186 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2019-01-31 15:14:20,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2019-01-31 15:14:20,187 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2019-01-31 15:14:20,187 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:14:20,188 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2019-01-31 15:14:20,188 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-31 15:14:20,188 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-31 15:14:20,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:14:20,188 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-31 15:14:20,188 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:14:20,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:14:20,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:14:20,188 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-31 15:14:20,189 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-31 15:14:20,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:14:20,189 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-31 15:14:20,189 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:14:20,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:14:20,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:14:20,189 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:14:20,189 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:14:20,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2019-01-31 15:14:20,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2019-01-31 15:14:20,190 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 4 [2019-01-31 15:14:20,190 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:14:20,190 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2019-01-31 15:14:20,190 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-31 15:14:20,190 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:14:20,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:14:20,194 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2019-01-31 15:14:20,262 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(lines 7 9) no Hoare annotation was computed. [2019-01-31 15:14:20,263 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startENTRY(lines 7 9) no Hoare annotation was computed. [2019-01-31 15:14:20,263 INFO L444 ceAbstractionStarter]: At program point L26-1(lines 25 31) the Hoare annotation is: (forall ((v_idx_3166 Int) (v_idx_3168 Int)) (let ((.cse0 (+ ULTIMATE.start_main_p1 1))) (and (let ((.cse4 (select |#memory_int| v_idx_3168))) (let ((.cse2 (< v_idx_3168 ULTIMATE.start_main_p2)) (.cse3 (<= (* 2 .cse4) 0)) (.cse6 (<= (+ ULTIMATE.start_main_p2 1) v_idx_3168))) (let ((.cse1 (or .cse2 .cse3 .cse6))) (or (and (<= .cse0 v_idx_3166) .cse1) (let ((.cse5 (select |#memory_int| v_idx_3166))) (and (or .cse2 (and .cse3 (<= .cse4 .cse5)) .cse6) (<= 0 (* 2 .cse5)))) (and .cse1 (< v_idx_3166 ULTIMATE.start_main_p1)))))) (<= .cse0 ULTIMATE.start_main_p2)))) [2019-01-31 15:14:20,263 INFO L448 ceAbstractionStarter]: For program point L14(lines 7 36) no Hoare annotation was computed. [2019-01-31 15:14:20,263 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startErr0ASSERT_VIOLATIONASSERT(line 33) no Hoare annotation was computed. [2019-01-31 15:14:20,263 INFO L448 ceAbstractionStarter]: For program point ULTIMATE.startErr1ASSERT_VIOLATIONASSERT(line 34) no Hoare annotation was computed. [2019-01-31 15:14:20,263 INFO L448 ceAbstractionStarter]: For program point L34(line 34) no Hoare annotation was computed. [2019-01-31 15:14:20,264 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2019-01-31 15:14:20,265 WARN L170 areAnnotationChecker]: ULTIMATE.startErr0ASSERT_VIOLATIONASSERT has no Hoare annotation [2019-01-31 15:14:20,265 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2019-01-31 15:14:20,269 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2019-01-31 15:14:20,270 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2019-01-31 15:14:20,270 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2019-01-31 15:14:20,270 INFO L163 areAnnotationChecker]: CFG has 2 edges. 2 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2019-01-31 15:14:20,277 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-2-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 31.01 03:14:20 BoogieIcfgContainer [2019-01-31 15:14:20,277 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2019-01-31 15:14:20,278 INFO L168 Benchmark]: Toolchain (without parser) took 275859.07 ms. Allocated memory was 141.0 MB in the beginning and 528.5 MB in the end (delta: 387.4 MB). Free memory was 107.2 MB in the beginning and 340.6 MB in the end (delta: -233.4 MB). Peak memory consumption was 154.1 MB. Max. memory is 7.1 GB. [2019-01-31 15:14:20,279 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 141.0 MB. Free memory is still 108.1 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-31 15:14:20,280 INFO L168 Benchmark]: Boogie Procedure Inliner took 68.41 ms. Allocated memory is still 141.0 MB. Free memory was 106.8 MB in the beginning and 104.6 MB in the end (delta: 2.1 MB). Peak memory consumption was 2.1 MB. Max. memory is 7.1 GB. [2019-01-31 15:14:20,280 INFO L168 Benchmark]: Boogie Preprocessor took 26.75 ms. Allocated memory is still 141.0 MB. Free memory was 104.6 MB in the beginning and 103.4 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. [2019-01-31 15:14:20,281 INFO L168 Benchmark]: RCFGBuilder took 444.87 ms. Allocated memory is still 141.0 MB. Free memory was 103.4 MB in the beginning and 92.3 MB in the end (delta: 11.1 MB). Peak memory consumption was 11.1 MB. Max. memory is 7.1 GB. [2019-01-31 15:14:20,282 INFO L168 Benchmark]: TraceAbstraction took 275314.92 ms. Allocated memory was 141.0 MB in the beginning and 528.5 MB in the end (delta: 387.4 MB). Free memory was 91.9 MB in the beginning and 340.6 MB in the end (delta: -248.7 MB). Peak memory consumption was 138.7 MB. Max. memory is 7.1 GB. [2019-01-31 15:14:20,286 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.20 ms. Allocated memory is still 141.0 MB. Free memory is still 108.1 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 68.41 ms. Allocated memory is still 141.0 MB. Free memory was 106.8 MB in the beginning and 104.6 MB in the end (delta: 2.1 MB). Peak memory consumption was 2.1 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 26.75 ms. Allocated memory is still 141.0 MB. Free memory was 104.6 MB in the beginning and 103.4 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. * RCFGBuilder took 444.87 ms. Allocated memory is still 141.0 MB. Free memory was 103.4 MB in the beginning and 92.3 MB in the end (delta: 11.1 MB). Peak memory consumption was 11.1 MB. Max. memory is 7.1 GB. * TraceAbstraction took 275314.92 ms. Allocated memory was 141.0 MB in the beginning and 528.5 MB in the end (delta: 387.4 MB). Free memory was 91.9 MB in the beginning and 340.6 MB in the end (delta: -248.7 MB). Peak memory consumption was 138.7 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 34]: assertion always holds For all program executions holds that assertion always holds at this location - PositiveResult [Line: 33]: assertion always holds For all program executions holds that assertion always holds at this location - AllSpecificationsHoldResult: All specifications hold 2 specifications checked. All of them hold - InvariantResult [Line: 25]: Loop Invariant Derived loop invariant: (forall v_idx_3166 : int, v_idx_3168 : int :: (((p1 + 1 <= v_idx_3166 && ((v_idx_3168 < p2 || 2 * #memory_int[v_idx_3168] <= 0) || p2 + 1 <= v_idx_3168)) || (((v_idx_3168 < p2 || (2 * #memory_int[v_idx_3168] <= 0 && #memory_int[v_idx_3168] <= #memory_int[v_idx_3166])) || p2 + 1 <= v_idx_3168) && 0 <= 2 * #memory_int[v_idx_3166])) || (((v_idx_3168 < p2 || 2 * #memory_int[v_idx_3168] <= 0) || p2 + 1 <= v_idx_3168) && v_idx_3166 < p1)) && p1 + 1 <= p2) - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 7 locations, 2 error locations. SAFE Result, 275.2s OverallTime, 4 OverallIterations, 1 TraceHistogramMax, 18.5s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 9 SDtfs, 9 SDslu, 1 SDs, 0 SdLazy, 16 SolverSat, 18 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 24.3s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 8 GetRequests, 0 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 1.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=8occurred in iteration=3, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 227.2s AbstIntTime, 3 AbstIntIterations, 3 AbstIntStrong, 1.0 AbsIntWeakeningRatio, 0.0 AbsIntAvgWeakeningVarsNumRemoved, 0.0 AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 4 MinimizatonAttempts, 3 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 1 LocationsWithAnnotation, 1 PreInvPairs, 4 NumberOfFragments, 82 HoareAnnotationTreeSize, 1 FomulaSimplifications, 442 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 1 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.6s InterpolantComputationTime, 12 NumberOfCodeBlocks, 12 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 8 ConstructedInterpolants, 0 QuantifiedInterpolants, 165 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 4 InterpolantComputations, 1 PerfectInterpolantSequences, 0/5 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...