java -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-5-limited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-1de736e-m [2019-02-15 11:24:55,521 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-02-15 11:24:55,523 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-02-15 11:24:55,540 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-02-15 11:24:55,540 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-02-15 11:24:55,543 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-02-15 11:24:55,545 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-02-15 11:24:55,547 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-02-15 11:24:55,550 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-02-15 11:24:55,550 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-02-15 11:24:55,553 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-02-15 11:24:55,553 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-02-15 11:24:55,554 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-02-15 11:24:55,555 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-02-15 11:24:55,556 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-02-15 11:24:55,559 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-02-15 11:24:55,560 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-02-15 11:24:55,572 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-02-15 11:24:55,574 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-02-15 11:24:55,575 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-02-15 11:24:55,577 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-02-15 11:24:55,578 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-02-15 11:24:55,581 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-02-15 11:24:55,581 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-02-15 11:24:55,583 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-02-15 11:24:55,584 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-02-15 11:24:55,585 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-02-15 11:24:55,585 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-02-15 11:24:55,586 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-02-15 11:24:55,590 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-02-15 11:24:55,590 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-02-15 11:24:55,592 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-02-15 11:24:55,592 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-02-15 11:24:55,592 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-02-15 11:24:55,593 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-02-15 11:24:55,594 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-02-15 11:24:55,596 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-02-15 11:24:55,621 INFO L110 SettingsManager]: Loading preferences was successful [2019-02-15 11:24:55,622 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-02-15 11:24:55,623 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-02-15 11:24:55,623 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-02-15 11:24:55,624 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-02-15 11:24:55,624 INFO L133 SettingsManager]: * User list type=DISABLED [2019-02-15 11:24:55,624 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-02-15 11:24:55,624 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-02-15 11:24:55,625 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-02-15 11:24:55,625 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-02-15 11:24:55,625 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-02-15 11:24:55,625 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-02-15 11:24:55,625 INFO L133 SettingsManager]: * Interval Domain=false [2019-02-15 11:24:55,627 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-02-15 11:24:55,627 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-02-15 11:24:55,627 INFO L133 SettingsManager]: * Use SBE=true [2019-02-15 11:24:55,627 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * sizeof long=4 [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-02-15 11:24:55,628 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-02-15 11:24:55,630 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-02-15 11:24:55,630 INFO L133 SettingsManager]: * sizeof long double=12 [2019-02-15 11:24:55,631 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-02-15 11:24:55,631 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-02-15 11:24:55,631 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-02-15 11:24:55,631 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-02-15 11:24:55,632 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-02-15 11:24:55,632 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-02-15 11:24:55,632 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-02-15 11:24:55,632 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-02-15 11:24:55,633 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-02-15 11:24:55,633 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-02-15 11:24:55,633 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-02-15 11:24:55,633 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2019-02-15 11:24:55,633 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-02-15 11:24:55,634 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-02-15 11:24:55,687 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-02-15 11:24:55,701 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-02-15 11:24:55,704 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-02-15 11:24:55,706 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-02-15 11:24:55,707 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-02-15 11:24:55,707 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-5-limited.bpl [2019-02-15 11:24:55,708 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-5-limited.bpl' [2019-02-15 11:24:55,747 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-02-15 11:24:55,749 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-02-15 11:24:55,749 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-02-15 11:24:55,750 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-02-15 11:24:55,750 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-02-15 11:24:55,763 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,775 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,802 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-02-15 11:24:55,803 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-02-15 11:24:55,803 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-02-15 11:24:55,804 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-02-15 11:24:55,815 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,816 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,818 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,818 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,821 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,828 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,829 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... [2019-02-15 11:24:55,831 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-02-15 11:24:55,831 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-02-15 11:24:55,832 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-02-15 11:24:55,832 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-02-15 11:24:55,833 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2019-02-15 11:24:55,900 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-02-15 11:24:55,901 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-02-15 11:24:56,212 INFO L281 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-02-15 11:24:56,213 INFO L286 CfgBuilder]: Removed 13 assue(true) statements. [2019-02-15 11:24:56,215 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.02 11:24:56 BoogieIcfgContainer [2019-02-15 11:24:56,216 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-02-15 11:24:56,218 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-02-15 11:24:56,218 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-02-15 11:24:56,222 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-02-15 11:24:56,222 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.02 11:24:55" (1/2) ... [2019-02-15 11:24:56,223 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@79864234 and model type speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.02 11:24:56, skipping insertion in model container [2019-02-15 11:24:56,223 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-5-limited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.02 11:24:56" (2/2) ... [2019-02-15 11:24:56,226 INFO L112 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-5-limited.bpl [2019-02-15 11:24:56,239 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-02-15 11:24:56,249 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 5 error locations. [2019-02-15 11:24:56,273 INFO L257 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2019-02-15 11:24:56,317 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-02-15 11:24:56,318 INFO L383 AbstractCegarLoop]: Hoare is true [2019-02-15 11:24:56,318 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-02-15 11:24:56,319 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-02-15 11:24:56,319 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-02-15 11:24:56,319 INFO L387 AbstractCegarLoop]: Difference is false [2019-02-15 11:24:56,320 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-02-15 11:24:56,320 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-02-15 11:24:56,340 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states. [2019-02-15 11:24:56,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 3 [2019-02-15 11:24:56,347 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:24:56,349 INFO L402 BasicCegarLoop]: trace histogram [1, 1] [2019-02-15 11:24:56,352 INFO L423 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:24:56,358 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:24:56,359 INFO L82 PathProgramCache]: Analyzing trace with hash 984, now seen corresponding path program 1 times [2019-02-15 11:24:56,362 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:24:56,452 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:24:56,453 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:24:56,453 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:24:56,453 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:24:56,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:24:56,600 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:24:56,603 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-02-15 11:24:56,603 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-02-15 11:24:56,603 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:24:56,608 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-02-15 11:24:56,619 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-02-15 11:24:56,620 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:24:56,623 INFO L87 Difference]: Start difference. First operand 13 states. Second operand 3 states. [2019-02-15 11:24:56,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:24:56,864 INFO L93 Difference]: Finished difference Result 25 states and 33 transitions. [2019-02-15 11:24:56,864 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-02-15 11:24:56,865 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 2 [2019-02-15 11:24:56,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:24:56,879 INFO L225 Difference]: With dead ends: 25 [2019-02-15 11:24:56,880 INFO L226 Difference]: Without dead ends: 20 [2019-02-15 11:24:56,883 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:24:56,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2019-02-15 11:24:56,926 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 12. [2019-02-15 11:24:56,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-02-15 11:24:56,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 21 transitions. [2019-02-15 11:24:56,934 INFO L78 Accepts]: Start accepts. Automaton has 12 states and 21 transitions. Word has length 2 [2019-02-15 11:24:56,936 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:24:56,936 INFO L480 AbstractCegarLoop]: Abstraction has 12 states and 21 transitions. [2019-02-15 11:24:56,936 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-02-15 11:24:56,936 INFO L276 IsEmpty]: Start isEmpty. Operand 12 states and 21 transitions. [2019-02-15 11:24:56,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-15 11:24:56,937 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:24:56,937 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-15 11:24:56,938 INFO L423 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:24:56,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:24:56,938 INFO L82 PathProgramCache]: Analyzing trace with hash 30372, now seen corresponding path program 1 times [2019-02-15 11:24:56,939 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:24:56,940 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:24:56,940 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:24:56,940 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:24:56,941 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:24:56,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:24:57,094 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:24:57,095 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:24:57,095 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:24:57,111 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-02-15 11:24:57,114 INFO L207 CegarAbsIntRunner]: [0], [18], [23] [2019-02-15 11:24:57,165 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:24:57,166 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:25:09,912 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:25:09,914 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-02-15 11:25:09,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:25:09,921 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:25:10,480 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:25:13,099 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_36 Int) (v_idx_48 Int) (v_idx_46 Int) (v_idx_44 Int) (v_idx_42 Int) (v_idx_50 Int) (v_idx_39 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 1)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p2 3)) (.cse5 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (<= .cse1 v_idx_46) (< v_idx_46 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_46))) (or (< v_idx_48 c_ULTIMATE.start_main_p4) (let ((.cse2 (select |c_#memory_int| v_idx_48))) (and (<= (* 2 .cse2) 0) (<= .cse2 0))) (<= .cse0 v_idx_48)) (or (= 1 (select |c_#valid| v_idx_39)) (<= .cse3 v_idx_39) (< v_idx_39 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_50)) (< v_idx_50 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_50)) (or (< v_idx_44 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_44)) (<= .cse4 v_idx_44)) (or (< v_idx_42 c_ULTIMATE.start_main_p1) (<= .cse5 v_idx_42) (= 0 (select |c_#memory_int| v_idx_42))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p5) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_36)) (<= .cse3 v_idx_36) (< v_idx_36 c_ULTIMATE.start_main_p5)) (<= .cse1 c_ULTIMATE.start_main_p4) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:25:16,117 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_59 Int) (v_idx_56 Int) (v_idx_67 Int) (v_idx_65 Int) (v_idx_63 Int) (v_idx_53 Int) (v_idx_61 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (or (<= .cse0 v_idx_61) (< v_idx_61 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_61) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_63 c_ULTIMATE.start_main_p3) (<= .cse2 v_idx_63) (= (select |c_#memory_int| v_idx_63) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p5) (or (<= .cse3 v_idx_56) (= 1 (select |c_#valid| v_idx_56)) (< v_idx_56 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (or (let ((.cse6 (select |c_#memory_int| v_idx_65))) (and (<= .cse6 0) (<= (* 2 .cse6) 0))) (< v_idx_65 c_ULTIMATE.start_main_p4) (<= .cse1 v_idx_65)) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (<= .cse3 v_idx_53) (< v_idx_53 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_53))) (<= .cse8 c_ULTIMATE.start_main_p2) (or (<= .cse8 v_idx_59) (< v_idx_59 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_59) 0)) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_67)) (< v_idx_67 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_67))))) is different from false [2019-02-15 11:25:16,164 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-02-15 11:25:16,164 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:25:16,167 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:25:16,167 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 4 [2019-02-15 11:25:16,167 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:25:16,168 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-02-15 11:25:16,169 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-02-15 11:25:16,169 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=3, Unknown=2, NotChecked=2, Total=12 [2019-02-15 11:25:16,169 INFO L87 Difference]: Start difference. First operand 12 states and 21 transitions. Second operand 4 states. [2019-02-15 11:25:18,993 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_59 Int) (v_idx_56 Int) (v_idx_67 Int) (v_idx_65 Int) (v_idx_63 Int) (v_idx_53 Int) (v_idx_61 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (or (<= .cse0 v_idx_61) (< v_idx_61 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_61) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_63 c_ULTIMATE.start_main_p3) (<= .cse2 v_idx_63) (= (select |c_#memory_int| v_idx_63) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p5) (or (<= .cse3 v_idx_56) (= 1 (select |c_#valid| v_idx_56)) (< v_idx_56 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (or (let ((.cse6 (select |c_#memory_int| v_idx_65))) (and (<= .cse6 0) (<= (* 2 .cse6) 0))) (< v_idx_65 c_ULTIMATE.start_main_p4) (<= .cse1 v_idx_65)) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (<= .cse3 v_idx_53) (< v_idx_53 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_53))) (<= .cse8 c_ULTIMATE.start_main_p2) (or (<= .cse8 v_idx_59) (< v_idx_59 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_59) 0)) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_67)) (< v_idx_67 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_67))))) (forall ((v_idx_36 Int) (v_idx_48 Int) (v_idx_46 Int) (v_idx_44 Int) (v_idx_42 Int) (v_idx_50 Int) (v_idx_39 Int)) (let ((.cse9 (+ c_ULTIMATE.start_main_p4 1)) (.cse13 (+ c_ULTIMATE.start_main_p2 1)) (.cse12 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse10 (+ c_ULTIMATE.start_main_p3 1)) (.cse15 (+ c_ULTIMATE.start_main_p1 4)) (.cse16 (+ c_ULTIMATE.start_main_p2 3)) (.cse14 (+ c_ULTIMATE.start_main_p1 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse9 c_ULTIMATE.start_malloc_ptr) (or (<= .cse10 v_idx_46) (< v_idx_46 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_46))) (or (< v_idx_48 c_ULTIMATE.start_main_p4) (let ((.cse11 (select |c_#memory_int| v_idx_48))) (and (<= (* 2 .cse11) 0) (<= .cse11 0))) (<= .cse9 v_idx_48)) (or (= 1 (select |c_#valid| v_idx_39)) (<= .cse12 v_idx_39) (< v_idx_39 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_50)) (< v_idx_50 c_ULTIMATE.start_main_p5) (<= .cse12 v_idx_50)) (or (< v_idx_44 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_44)) (<= .cse13 v_idx_44)) (or (< v_idx_42 c_ULTIMATE.start_main_p1) (<= .cse14 v_idx_42) (= 0 (select |c_#memory_int| v_idx_42))) (<= .cse9 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse16 c_ULTIMATE.start_main_p5) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_36)) (<= .cse12 v_idx_36) (< v_idx_36 c_ULTIMATE.start_main_p5)) (<= .cse10 c_ULTIMATE.start_main_p4) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= .cse17 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_main_p2) (<= .cse17 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:25:52,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:25:52,718 INFO L93 Difference]: Finished difference Result 14 states and 28 transitions. [2019-02-15 11:25:52,718 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-02-15 11:25:52,718 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-02-15 11:25:52,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:25:52,719 INFO L225 Difference]: With dead ends: 14 [2019-02-15 11:25:52,719 INFO L226 Difference]: Without dead ends: 13 [2019-02-15 11:25:52,721 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 8.2s TimeCoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:25:52,721 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 13 states. [2019-02-15 11:25:52,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 13 to 13. [2019-02-15 11:25:52,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-02-15 11:25:52,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 27 transitions. [2019-02-15 11:25:52,727 INFO L78 Accepts]: Start accepts. Automaton has 13 states and 27 transitions. Word has length 3 [2019-02-15 11:25:52,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:25:52,727 INFO L480 AbstractCegarLoop]: Abstraction has 13 states and 27 transitions. [2019-02-15 11:25:52,728 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-02-15 11:25:52,728 INFO L276 IsEmpty]: Start isEmpty. Operand 13 states and 27 transitions. [2019-02-15 11:25:52,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-15 11:25:52,729 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:25:52,729 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-15 11:25:52,730 INFO L423 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:25:52,730 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:25:52,730 INFO L82 PathProgramCache]: Analyzing trace with hash 30434, now seen corresponding path program 1 times [2019-02-15 11:25:52,731 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:25:52,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:25:52,732 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:25:52,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:25:52,733 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:25:52,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:25:52,872 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:25:52,872 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:25:52,872 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:25:52,872 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-02-15 11:25:52,873 INFO L207 CegarAbsIntRunner]: [0], [20], [23] [2019-02-15 11:25:52,874 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:25:52,875 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:26:00,804 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:26:00,804 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-02-15 11:26:00,805 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:26:00,805 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:26:01,228 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:26:04,085 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-02-15 11:26:04,085 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:26:04,085 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:26:04,085 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [2] total 3 [2019-02-15 11:26:04,085 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:26:04,086 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-02-15 11:26:04,086 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-02-15 11:26:04,086 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:26:04,087 INFO L87 Difference]: Start difference. First operand 13 states and 27 transitions. Second operand 3 states. [2019-02-15 11:26:28,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:26:28,233 INFO L93 Difference]: Finished difference Result 19 states and 38 transitions. [2019-02-15 11:26:28,233 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-02-15 11:26:28,233 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-02-15 11:26:28,233 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:26:28,234 INFO L225 Difference]: With dead ends: 19 [2019-02-15 11:26:28,234 INFO L226 Difference]: Without dead ends: 16 [2019-02-15 11:26:28,234 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 2.8s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:26:28,235 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2019-02-15 11:26:28,239 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2019-02-15 11:26:28,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-02-15 11:26:28,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 35 transitions. [2019-02-15 11:26:28,240 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 35 transitions. Word has length 3 [2019-02-15 11:26:28,241 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:26:28,241 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 35 transitions. [2019-02-15 11:26:28,241 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-02-15 11:26:28,241 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 35 transitions. [2019-02-15 11:26:28,241 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-15 11:26:28,241 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:26:28,241 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-15 11:26:28,242 INFO L423 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:26:28,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:26:28,242 INFO L82 PathProgramCache]: Analyzing trace with hash 30000, now seen corresponding path program 1 times [2019-02-15 11:26:28,242 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:26:28,243 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:26:28,243 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:26:28,243 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:26:28,244 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:26:28,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:26:28,301 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:26:28,302 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:26:28,302 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:26:28,302 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-02-15 11:26:28,302 INFO L207 CegarAbsIntRunner]: [0], [6], [23] [2019-02-15 11:26:28,303 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:26:28,304 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:26:35,420 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:26:35,420 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-02-15 11:26:35,421 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:26:35,421 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:26:35,838 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:26:38,795 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_180 Int) (v_idx_184 Int) (v_idx_182 Int) (v_idx_172 Int) (v_idx_178 Int) (v_idx_175 Int) (v_idx_186 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p2 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse0 v_idx_180) (= (select |c_#memory_int| v_idx_180) 0) (< v_idx_180 c_ULTIMATE.start_main_p2)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_175)) (< v_idx_175 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_175)) (or (< v_idx_178 c_ULTIMATE.start_main_p1) (let ((.cse3 (select |c_#memory_int| v_idx_178))) (and (<= 0 (* 2 .cse3)) (<= 0 .cse3))) (<= .cse4 v_idx_178)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse2 v_idx_186) (< v_idx_186 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_186))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_182 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_182)) (<= .cse7 v_idx_182)) (<= .cse4 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_172 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_172) 0) (<= .cse2 v_idx_172)) (or (= (select |c_#memory_int| v_idx_184) 0) (< v_idx_184 c_ULTIMATE.start_main_p4) (<= .cse1 v_idx_184))))) is different from false [2019-02-15 11:26:41,656 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_203 Int) (v_idx_201 Int) (v_idx_192 Int) (v_idx_195 Int) (v_idx_199 Int) (v_idx_189 Int) (v_idx_197 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse5 (+ c_ULTIMATE.start_main_p2 1)) (.cse4 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p2 3)) (.cse1 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_195) (let ((.cse2 (select |c_#memory_int| v_idx_195))) (and (<= 0 .cse2) (<= 0 (* 2 .cse2)))) (< v_idx_195 c_ULTIMATE.start_main_p1)) (or (= 0 (select |c_#memory_int| v_idx_203)) (< v_idx_203 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_203)) (or (<= .cse0 v_idx_201) (= 0 (select |c_#memory_int| v_idx_201)) (< v_idx_201 c_ULTIMATE.start_main_p4)) (or (= 1 (select |c_#valid| v_idx_192)) (<= .cse3 v_idx_192) (< v_idx_192 c_ULTIMATE.start_main_p5)) (or (= 0 (select |c_#memory_int| v_idx_199)) (<= .cse4 v_idx_199) (< v_idx_199 c_ULTIMATE.start_main_p3)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse3 v_idx_189) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 c_ULTIMATE.start_main_p5)) (<= .cse6 c_ULTIMATE.start_main_p5) (or (< v_idx_197 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_197)) (<= .cse5 v_idx_197)) (<= .cse7 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p4) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= .cse1 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:26:41,703 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-02-15 11:26:41,703 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:26:41,703 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:26:41,704 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 4 [2019-02-15 11:26:41,704 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:26:41,704 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-02-15 11:26:41,704 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-02-15 11:26:41,704 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=3, Unknown=2, NotChecked=2, Total=12 [2019-02-15 11:26:41,705 INFO L87 Difference]: Start difference. First operand 16 states and 35 transitions. Second operand 4 states. [2019-02-15 11:26:44,470 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_180 Int) (v_idx_184 Int) (v_idx_182 Int) (v_idx_172 Int) (v_idx_178 Int) (v_idx_175 Int) (v_idx_186 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p2 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse0 v_idx_180) (= (select |c_#memory_int| v_idx_180) 0) (< v_idx_180 c_ULTIMATE.start_main_p2)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_175)) (< v_idx_175 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_175)) (or (< v_idx_178 c_ULTIMATE.start_main_p1) (let ((.cse3 (select |c_#memory_int| v_idx_178))) (and (<= 0 (* 2 .cse3)) (<= 0 .cse3))) (<= .cse4 v_idx_178)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse2 v_idx_186) (< v_idx_186 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_186))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_182 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_182)) (<= .cse7 v_idx_182)) (<= .cse4 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_172 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_172) 0) (<= .cse2 v_idx_172)) (or (= (select |c_#memory_int| v_idx_184) 0) (< v_idx_184 c_ULTIMATE.start_main_p4) (<= .cse1 v_idx_184))))) (forall ((v_idx_203 Int) (v_idx_201 Int) (v_idx_192 Int) (v_idx_195 Int) (v_idx_199 Int) (v_idx_189 Int) (v_idx_197 Int)) (let ((.cse9 (+ c_ULTIMATE.start_main_p4 1)) (.cse12 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse14 (+ c_ULTIMATE.start_main_p2 1)) (.cse13 (+ c_ULTIMATE.start_main_p3 1)) (.cse15 (+ c_ULTIMATE.start_main_p1 4)) (.cse16 (+ c_ULTIMATE.start_main_p2 3)) (.cse10 (+ c_ULTIMATE.start_main_p1 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse9 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse10 v_idx_195) (let ((.cse11 (select |c_#memory_int| v_idx_195))) (and (<= 0 .cse11) (<= 0 (* 2 .cse11)))) (< v_idx_195 c_ULTIMATE.start_main_p1)) (or (= 0 (select |c_#memory_int| v_idx_203)) (< v_idx_203 c_ULTIMATE.start_main_p5) (<= .cse12 v_idx_203)) (or (<= .cse9 v_idx_201) (= 0 (select |c_#memory_int| v_idx_201)) (< v_idx_201 c_ULTIMATE.start_main_p4)) (or (= 1 (select |c_#valid| v_idx_192)) (<= .cse12 v_idx_192) (< v_idx_192 c_ULTIMATE.start_main_p5)) (or (= 0 (select |c_#memory_int| v_idx_199)) (<= .cse13 v_idx_199) (< v_idx_199 c_ULTIMATE.start_main_p3)) (<= .cse9 c_ULTIMATE.start_main_p5) (<= .cse14 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse12 v_idx_189) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_189)) (< v_idx_189 c_ULTIMATE.start_main_p5)) (<= .cse15 c_ULTIMATE.start_main_p5) (or (< v_idx_197 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_197)) (<= .cse14 v_idx_197)) (<= .cse16 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p4) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= .cse17 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (<= .cse10 c_ULTIMATE.start_main_p2) (<= .cse17 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:27:00,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:27:00,954 INFO L93 Difference]: Finished difference Result 18 states and 42 transitions. [2019-02-15 11:27:00,955 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-02-15 11:27:00,955 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-02-15 11:27:00,955 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:27:00,956 INFO L225 Difference]: With dead ends: 18 [2019-02-15 11:27:00,956 INFO L226 Difference]: Without dead ends: 17 [2019-02-15 11:27:00,956 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 8.4s TimeCoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:27:00,956 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2019-02-15 11:27:00,962 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 16. [2019-02-15 11:27:00,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-02-15 11:27:00,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 35 transitions. [2019-02-15 11:27:00,963 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 35 transitions. Word has length 3 [2019-02-15 11:27:00,963 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:27:00,963 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 35 transitions. [2019-02-15 11:27:00,963 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-02-15 11:27:00,964 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 35 transitions. [2019-02-15 11:27:00,964 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-15 11:27:00,964 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:27:00,964 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-15 11:27:00,964 INFO L423 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:27:00,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:27:00,965 INFO L82 PathProgramCache]: Analyzing trace with hash 30124, now seen corresponding path program 1 times [2019-02-15 11:27:00,965 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:27:00,966 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:27:00,966 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:27:00,966 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:27:00,966 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:27:00,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:27:01,038 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:27:01,038 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:27:01,038 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:27:01,039 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-02-15 11:27:01,039 INFO L207 CegarAbsIntRunner]: [0], [10], [23] [2019-02-15 11:27:01,041 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:27:01,041 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:27:08,990 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:27:08,991 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-02-15 11:27:08,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:27:08,991 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:27:09,325 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:27:11,959 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_248 Int) (v_idx_246 Int) (v_idx_250 Int) (v_idx_240 Int) (v_idx_254 Int) (v_idx_243 Int) (v_idx_252 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse4 (+ c_ULTIMATE.start_main_p1 1)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= 0 (select |c_#memory_int| v_idx_250)) (< v_idx_250 c_ULTIMATE.start_main_p3) (<= .cse0 v_idx_250)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_254)) (< v_idx_254 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_254)) (or (< v_idx_240 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_240) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_240))) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_246)) (< v_idx_246 c_ULTIMATE.start_main_p1) (<= .cse4 v_idx_246)) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_main_p2) (or (<= .cse2 v_idx_243) (< v_idx_243 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_243))) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (<= .cse3 v_idx_248) (< v_idx_248 c_ULTIMATE.start_main_p2) (let ((.cse8 (select |c_#memory_int| v_idx_248))) (and (<= .cse8 0) (<= (* 2 .cse8) 0)))) (or (<= .cse1 v_idx_252) (= 0 (select |c_#memory_int| v_idx_252)) (< v_idx_252 c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:27:14,917 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_257 Int) (v_idx_260 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_263 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse7 (+ c_ULTIMATE.start_main_p3 2)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse8 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_267 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_267)) (<= .cse1 v_idx_267)) (or (< v_idx_265 c_ULTIMATE.start_main_p2) (let ((.cse2 (select |c_#memory_int| v_idx_265))) (and (<= (* 2 .cse2) 0) (<= .cse2 0))) (<= .cse3 v_idx_265)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse4 v_idx_260) (= 1 (select |c_#valid| v_idx_260)) (< v_idx_260 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_257)) (<= .cse4 v_idx_257) (< v_idx_257 c_ULTIMATE.start_main_p5)) (<= .cse5 c_ULTIMATE.start_main_p5) (or (< v_idx_271 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_271) 0) (<= .cse4 v_idx_271)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_269 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_269)) (<= .cse0 v_idx_269)) (or (<= .cse8 v_idx_263) (= 0 (select |c_#memory_int| v_idx_263)) (< v_idx_263 c_ULTIMATE.start_main_p1))))) is different from false [2019-02-15 11:27:14,964 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-02-15 11:27:14,964 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:27:14,964 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:27:14,965 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 4 [2019-02-15 11:27:14,965 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:27:14,965 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-02-15 11:27:14,965 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-02-15 11:27:14,965 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=3, Unknown=2, NotChecked=2, Total=12 [2019-02-15 11:27:14,966 INFO L87 Difference]: Start difference. First operand 16 states and 35 transitions. Second operand 4 states. [2019-02-15 11:27:17,625 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_269 Int) (v_idx_267 Int) (v_idx_257 Int) (v_idx_260 Int) (v_idx_271 Int) (v_idx_265 Int) (v_idx_263 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse7 (+ c_ULTIMATE.start_main_p3 2)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse8 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_267 c_ULTIMATE.start_main_p3) (= 0 (select |c_#memory_int| v_idx_267)) (<= .cse1 v_idx_267)) (or (< v_idx_265 c_ULTIMATE.start_main_p2) (let ((.cse2 (select |c_#memory_int| v_idx_265))) (and (<= (* 2 .cse2) 0) (<= .cse2 0))) (<= .cse3 v_idx_265)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse4 v_idx_260) (= 1 (select |c_#valid| v_idx_260)) (< v_idx_260 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_257)) (<= .cse4 v_idx_257) (< v_idx_257 c_ULTIMATE.start_main_p5)) (<= .cse5 c_ULTIMATE.start_main_p5) (or (< v_idx_271 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_271) 0) (<= .cse4 v_idx_271)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_269 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_269)) (<= .cse0 v_idx_269)) (or (<= .cse8 v_idx_263) (= 0 (select |c_#memory_int| v_idx_263)) (< v_idx_263 c_ULTIMATE.start_main_p1))))) (forall ((v_idx_248 Int) (v_idx_246 Int) (v_idx_250 Int) (v_idx_240 Int) (v_idx_254 Int) (v_idx_243 Int) (v_idx_252 Int)) (let ((.cse9 (+ c_ULTIMATE.start_main_p3 1)) (.cse14 (+ c_ULTIMATE.start_main_p1 4)) (.cse15 (+ c_ULTIMATE.start_main_p2 3)) (.cse13 (+ c_ULTIMATE.start_main_p1 1)) (.cse11 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse16 (+ c_ULTIMATE.start_main_p3 2)) (.cse12 (+ c_ULTIMATE.start_main_p2 1)) (.cse10 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= 0 (select |c_#memory_int| v_idx_250)) (< v_idx_250 c_ULTIMATE.start_main_p3) (<= .cse9 v_idx_250)) (<= .cse10 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_254)) (< v_idx_254 c_ULTIMATE.start_main_p5) (<= .cse11 v_idx_254)) (or (< v_idx_240 c_ULTIMATE.start_main_p5) (<= .cse11 v_idx_240) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_240))) (<= .cse10 c_ULTIMATE.start_main_p5) (<= .cse12 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_246)) (< v_idx_246 c_ULTIMATE.start_main_p1) (<= .cse13 v_idx_246)) (<= .cse14 c_ULTIMATE.start_main_p5) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse9 c_ULTIMATE.start_main_p4) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_main_p2) (or (<= .cse11 v_idx_243) (< v_idx_243 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_243))) (<= .cse16 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (<= .cse12 v_idx_248) (< v_idx_248 c_ULTIMATE.start_main_p2) (let ((.cse17 (select |c_#memory_int| v_idx_248))) (and (<= .cse17 0) (<= (* 2 .cse17) 0)))) (or (<= .cse10 v_idx_252) (= 0 (select |c_#memory_int| v_idx_252)) (< v_idx_252 c_ULTIMATE.start_main_p4)))))) is different from false [2019-02-15 11:27:34,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:27:34,023 INFO L93 Difference]: Finished difference Result 18 states and 42 transitions. [2019-02-15 11:27:34,023 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-02-15 11:27:34,023 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-02-15 11:27:34,023 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:27:34,024 INFO L225 Difference]: With dead ends: 18 [2019-02-15 11:27:34,024 INFO L226 Difference]: Without dead ends: 17 [2019-02-15 11:27:34,024 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 8.1s TimeCoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:27:34,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2019-02-15 11:27:34,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 16. [2019-02-15 11:27:34,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-02-15 11:27:34,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 35 transitions. [2019-02-15 11:27:34,031 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 35 transitions. Word has length 3 [2019-02-15 11:27:34,031 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:27:34,031 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 35 transitions. [2019-02-15 11:27:34,031 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-02-15 11:27:34,031 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 35 transitions. [2019-02-15 11:27:34,031 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-15 11:27:34,032 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:27:34,032 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-15 11:27:34,032 INFO L423 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:27:34,032 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:27:34,032 INFO L82 PathProgramCache]: Analyzing trace with hash 30248, now seen corresponding path program 1 times [2019-02-15 11:27:34,033 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:27:34,033 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:27:34,034 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:27:34,034 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:27:34,034 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:27:34,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:27:34,092 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:27:34,093 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:27:34,093 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:27:34,093 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 4 with the following transitions: [2019-02-15 11:27:34,093 INFO L207 CegarAbsIntRunner]: [0], [14], [23] [2019-02-15 11:27:34,094 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:27:34,094 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:27:41,038 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:27:41,038 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-02-15 11:27:41,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:27:41,038 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:27:41,317 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:27:43,904 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_314 Int) (v_idx_311 Int) (v_idx_322 Int) (v_idx_318 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_320 Int)) (let ((.cse3 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse4 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (or (< v_idx_314 c_ULTIMATE.start_main_p1) (<= .cse0 v_idx_314) (= (select |c_#memory_int| v_idx_314) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_316)) (<= .cse2 v_idx_316) (< v_idx_316 c_ULTIMATE.start_main_p2)) (or (< v_idx_308 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) 0) (<= .cse3 v_idx_308)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_311)) (<= .cse3 v_idx_311) (< v_idx_311 c_ULTIMATE.start_main_p5)) (or (<= .cse4 v_idx_318) (< v_idx_318 c_ULTIMATE.start_main_p3) (let ((.cse5 (select |c_#memory_int| v_idx_318))) (and (<= 0 .cse5) (<= 0 (* 2 .cse5))))) (or (<= .cse3 v_idx_322) (< v_idx_322 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_322))) (or (< v_idx_320 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_320) 0) (<= .cse1 v_idx_320)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p4) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= .cse0 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:27:46,626 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_335 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_328 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_331 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_337)) (< v_idx_337 c_ULTIMATE.start_main_p4) (<= .cse0 v_idx_337)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (let ((.cse1 (select |c_#memory_int| v_idx_335))) (and (<= 0 (* 2 .cse1)) (<= 0 .cse1))) (< v_idx_335 c_ULTIMATE.start_main_p3) (<= .cse2 v_idx_335)) (or (< v_idx_333 c_ULTIMATE.start_main_p2) (<= .cse3 v_idx_333) (= 0 (select |c_#memory_int| v_idx_333))) (or (<= .cse4 v_idx_328) (= 1 (select |c_#valid| v_idx_328)) (< v_idx_328 c_ULTIMATE.start_main_p5)) (or (<= .cse4 v_idx_339) (< v_idx_339 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_339))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= .cse4 v_idx_325) (< v_idx_325 c_ULTIMATE.start_main_p5)) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_331)) (<= .cse8 v_idx_331) (< v_idx_331 c_ULTIMATE.start_main_p1)) (<= .cse8 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:27:46,672 INFO L420 sIntCurrentIteration]: We unified 2 AI predicates to 2 [2019-02-15 11:27:46,672 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:27:46,672 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:27:46,672 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 4 [2019-02-15 11:27:46,673 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:27:46,673 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-02-15 11:27:46,673 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-02-15 11:27:46,673 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=3, Unknown=2, NotChecked=2, Total=12 [2019-02-15 11:27:46,673 INFO L87 Difference]: Start difference. First operand 16 states and 35 transitions. Second operand 4 states. [2019-02-15 11:27:49,357 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_335 Int) (v_idx_325 Int) (v_idx_333 Int) (v_idx_328 Int) (v_idx_339 Int) (v_idx_337 Int) (v_idx_331 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_337)) (< v_idx_337 c_ULTIMATE.start_main_p4) (<= .cse0 v_idx_337)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (let ((.cse1 (select |c_#memory_int| v_idx_335))) (and (<= 0 (* 2 .cse1)) (<= 0 .cse1))) (< v_idx_335 c_ULTIMATE.start_main_p3) (<= .cse2 v_idx_335)) (or (< v_idx_333 c_ULTIMATE.start_main_p2) (<= .cse3 v_idx_333) (= 0 (select |c_#memory_int| v_idx_333))) (or (<= .cse4 v_idx_328) (= 1 (select |c_#valid| v_idx_328)) (< v_idx_328 c_ULTIMATE.start_main_p5)) (or (<= .cse4 v_idx_339) (< v_idx_339 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_339))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_325) 0) (<= .cse4 v_idx_325) (< v_idx_325 c_ULTIMATE.start_main_p5)) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_331)) (<= .cse8 v_idx_331) (< v_idx_331 c_ULTIMATE.start_main_p1)) (<= .cse8 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_314 Int) (v_idx_311 Int) (v_idx_322 Int) (v_idx_318 Int) (v_idx_316 Int) (v_idx_308 Int) (v_idx_320 Int)) (let ((.cse12 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse10 (+ c_ULTIMATE.start_main_p4 1)) (.cse11 (+ c_ULTIMATE.start_main_p2 1)) (.cse13 (+ c_ULTIMATE.start_main_p3 1)) (.cse15 (+ c_ULTIMATE.start_main_p1 4)) (.cse16 (+ c_ULTIMATE.start_main_p2 3)) (.cse9 (+ c_ULTIMATE.start_main_p1 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 2))) (and (or (< v_idx_314 c_ULTIMATE.start_main_p1) (<= .cse9 v_idx_314) (= (select |c_#memory_int| v_idx_314) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse10 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_316)) (<= .cse11 v_idx_316) (< v_idx_316 c_ULTIMATE.start_main_p2)) (or (< v_idx_308 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_308) 0) (<= .cse12 v_idx_308)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_311)) (<= .cse12 v_idx_311) (< v_idx_311 c_ULTIMATE.start_main_p5)) (or (<= .cse13 v_idx_318) (< v_idx_318 c_ULTIMATE.start_main_p3) (let ((.cse14 (select |c_#memory_int| v_idx_318))) (and (<= 0 .cse14) (<= 0 (* 2 .cse14))))) (or (<= .cse12 v_idx_322) (< v_idx_322 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_322))) (or (< v_idx_320 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_320) 0) (<= .cse10 v_idx_320)) (<= .cse10 c_ULTIMATE.start_main_p5) (<= .cse11 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse16 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p4) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= .cse17 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (<= .cse9 c_ULTIMATE.start_main_p2) (<= .cse17 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:28:06,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:28:06,233 INFO L93 Difference]: Finished difference Result 18 states and 42 transitions. [2019-02-15 11:28:06,233 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-02-15 11:28:06,233 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 3 [2019-02-15 11:28:06,233 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:28:06,234 INFO L225 Difference]: With dead ends: 18 [2019-02-15 11:28:06,234 INFO L226 Difference]: Without dead ends: 17 [2019-02-15 11:28:06,234 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 7.9s TimeCoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:28:06,235 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 17 states. [2019-02-15 11:28:06,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 17 to 16. [2019-02-15 11:28:06,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-02-15 11:28:06,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 35 transitions. [2019-02-15 11:28:06,244 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 35 transitions. Word has length 3 [2019-02-15 11:28:06,244 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:28:06,244 INFO L480 AbstractCegarLoop]: Abstraction has 16 states and 35 transitions. [2019-02-15 11:28:06,244 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-02-15 11:28:06,245 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 35 transitions. [2019-02-15 11:28:06,245 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:28:06,245 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:28:06,245 INFO L402 BasicCegarLoop]: trace histogram [2, 1, 1] [2019-02-15 11:28:06,246 INFO L423 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:28:06,246 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:28:06,246 INFO L82 PathProgramCache]: Analyzing trace with hash 941400, now seen corresponding path program 2 times [2019-02-15 11:28:06,246 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:28:06,247 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:28:06,247 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:28:06,247 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:28:06,247 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:28:06,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:28:06,539 WARN L181 SmtUtils]: Spent 240.00 ms on a formula simplification. DAG size of input: 19 DAG size of output: 13 [2019-02-15 11:28:06,561 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2019-02-15 11:28:06,561 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:28:06,562 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:28:06,562 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-15 11:28:06,563 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-15 11:28:06,563 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:28:06,563 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-02-15 11:28:06,572 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-15 11:28:06,573 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-15 11:28:06,604 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2019-02-15 11:28:06,605 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-15 11:28:06,611 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-02-15 11:28:06,639 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-02-15 11:28:06,650 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,651 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-02-15 11:28:06,661 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,664 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,665 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-02-15 11:28:06,671 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,674 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,677 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,678 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-02-15 11:28:06,683 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,686 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,689 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,691 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,693 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 66 [2019-02-15 11:28:06,694 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,746 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,764 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,780 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,792 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,882 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:28:06,883 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:31, output treesize:38 [2019-02-15 11:28:06,933 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,934 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,934 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,936 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,937 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,939 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,941 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,941 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,942 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,943 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,946 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:06,948 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 66 [2019-02-15 11:28:06,948 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:28:06,997 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:28:06,998 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:48, output treesize:38 [2019-02-15 11:28:07,020 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,021 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,022 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,023 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,024 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,026 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,027 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,028 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,029 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,031 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,032 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,037 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,037 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:28:07,039 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 13 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 78 [2019-02-15 11:28:07,040 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:28:07,114 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-02-15 11:28:07,115 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:50, output treesize:38 [2019-02-15 11:28:07,193 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:28:07,194 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-02-15 11:28:07,293 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:28:07,316 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-15 11:28:07,317 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [2, 3, 3] total 8 [2019-02-15 11:28:07,317 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-15 11:28:07,317 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2019-02-15 11:28:07,317 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2019-02-15 11:28:07,318 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=53, Unknown=0, NotChecked=0, Total=90 [2019-02-15 11:28:07,318 INFO L87 Difference]: Start difference. First operand 16 states and 35 transitions. Second operand 7 states. [2019-02-15 11:28:07,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:28:07,914 INFO L93 Difference]: Finished difference Result 49 states and 81 transitions. [2019-02-15 11:28:07,915 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-02-15 11:28:07,915 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 4 [2019-02-15 11:28:07,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:28:07,917 INFO L225 Difference]: With dead ends: 49 [2019-02-15 11:28:07,917 INFO L226 Difference]: Without dead ends: 47 [2019-02-15 11:28:07,918 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=45, Invalid=65, Unknown=0, NotChecked=0, Total=110 [2019-02-15 11:28:07,918 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2019-02-15 11:28:07,927 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 23. [2019-02-15 11:28:07,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-02-15 11:28:07,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 54 transitions. [2019-02-15 11:28:07,928 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 54 transitions. Word has length 4 [2019-02-15 11:28:07,929 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:28:07,929 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 54 transitions. [2019-02-15 11:28:07,929 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2019-02-15 11:28:07,929 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 54 transitions. [2019-02-15 11:28:07,929 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:28:07,929 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:28:07,930 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:28:07,930 INFO L423 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:28:07,930 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:28:07,930 INFO L82 PathProgramCache]: Analyzing trace with hash 941462, now seen corresponding path program 1 times [2019-02-15 11:28:07,930 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:28:07,931 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:28:07,931 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-15 11:28:07,931 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:28:07,931 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:28:07,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:28:08,025 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:28:08,026 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:28:08,026 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:28:08,026 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:28:08,026 INFO L207 CegarAbsIntRunner]: [0], [18], [20], [23] [2019-02-15 11:28:08,028 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:28:08,028 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:28:26,156 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:28:26,156 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-02-15 11:28:26,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:28:26,157 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:28:26,727 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:28:29,317 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_401 Int) (v_idx_399 Int) (v_idx_405 Int) (v_idx_403 Int) (v_idx_393 Int) (v_idx_407 Int) (v_idx_396 Int)) (let ((.cse8 (+ c_ULTIMATE.start_main_p4 1)) (.cse9 (+ c_ULTIMATE.start_main_p2 1)) (.cse11 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse10 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (let ((.cse3 (select |c_#memory_int| v_idx_405))) (let ((.cse2 (<= .cse3 0)) (.cse5 (<= (* 2 .cse3) 0)) (.cse6 (<= .cse8 v_idx_405)) (.cse7 (< v_idx_405 c_ULTIMATE.start_main_p4))) (let ((.cse0 (or (and .cse2 .cse5) .cse6 .cse7))) (or (and .cse0 (<= .cse1 v_idx_407)) (let ((.cse4 (select |c_#memory_int| v_idx_407))) (and (or (and .cse2 (<= .cse3 .cse4) .cse5) .cse6 .cse7) (<= 0 (* 2 .cse4)) (<= 0 .cse4))) (and .cse0 (< v_idx_407 c_ULTIMATE.start_main_p5)))))) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_401 c_ULTIMATE.start_main_p2) (<= .cse9 v_idx_401) (= (select |c_#memory_int| v_idx_401) 0)) (or (<= .cse10 v_idx_399) (< v_idx_399 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_399))) (or (< v_idx_403 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_403) 0) (<= .cse11 v_idx_403)) (<= .cse8 c_ULTIMATE.start_main_p5) (<= .cse9 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_main_p5) (or (< v_idx_396 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_396) (= 1 (select |c_#valid| v_idx_396))) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse11 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (or (<= .cse1 v_idx_393) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_393)) (< v_idx_393 c_ULTIMATE.start_main_p5)) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= .cse10 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:28:33,136 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_435 Int) (v_idx_433 Int) (v_idx_427 Int) (v_idx_439 Int) (v_idx_437 Int) (v_idx_441 Int) (v_idx_430 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse0 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse4 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse0 v_idx_437) (= (select |c_#memory_int| v_idx_437) 0) (< v_idx_437 c_ULTIMATE.start_main_p3)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_435) 0) (<= .cse2 v_idx_435) (< v_idx_435 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_427 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_427) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_427))) (or (= (select |c_#memory_int| v_idx_433) 0) (< v_idx_433 c_ULTIMATE.start_main_p1) (<= .cse4 v_idx_433)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_430)) (< v_idx_430 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_430)) (let ((.cse11 (select |c_#memory_int| v_idx_439))) (let ((.cse8 (<= .cse1 v_idx_439)) (.cse9 (<= (* 2 .cse11) 0)) (.cse10 (<= .cse11 0)) (.cse13 (< v_idx_439 c_ULTIMATE.start_main_p4))) (let ((.cse7 (or .cse8 (and .cse9 .cse10) .cse13))) (or (and (< v_idx_441 c_ULTIMATE.start_main_p5) .cse7) (and (<= .cse3 v_idx_441) .cse7) (let ((.cse12 (select |c_#memory_int| v_idx_441))) (and (or .cse8 (and .cse9 .cse10 (<= .cse11 .cse12)) .cse13) (<= 0 (* 2 .cse12)) (<= 0 .cse12))))))) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:28:33,170 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:28:33,170 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:28:33,171 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:28:33,171 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:28:33,171 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:28:33,171 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:28:33,171 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:28:33,172 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=5, Unknown=2, NotChecked=6, Total=20 [2019-02-15 11:28:33,172 INFO L87 Difference]: Start difference. First operand 23 states and 54 transitions. Second operand 5 states. [2019-02-15 11:28:36,061 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_424 Int) (v_idx_413 Int) (v_idx_410 Int) (v_idx_422 Int) (v_idx_416 Int) (v_idx_418 Int) (v_idx_420 Int)) (let ((.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse9 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse11 (+ c_ULTIMATE.start_main_p1 4)) (.cse13 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_416 c_ULTIMATE.start_main_p1) (<= .cse0 v_idx_416) (= (select |c_#memory_int| v_idx_416) 0)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (let ((.cse6 (select |c_#memory_int| v_idx_424))) (let ((.cse4 (< v_idx_424 c_ULTIMATE.start_main_p5)) (.cse5 (<= .cse9 v_idx_424)) (.cse7 (<= 0 (* 2 .cse6))) (.cse8 (<= 0 .cse6))) (let ((.cse2 (or .cse4 .cse5 (and .cse7 .cse8)))) (or (and .cse2 (< v_idx_422 c_ULTIMATE.start_main_p4)) (let ((.cse3 (select |c_#memory_int| v_idx_422))) (and (<= (* 2 .cse3) 0) (or .cse4 .cse5 (and (<= .cse3 .cse6) .cse7 .cse8)) (<= .cse3 0))) (and (<= .cse1 v_idx_422) .cse2))))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_413) 1) (< v_idx_413 c_ULTIMATE.start_main_p5) (<= .cse9 v_idx_413)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_410)) (<= .cse9 v_idx_410) (< v_idx_410 c_ULTIMATE.start_main_p5)) (<= .cse11 c_ULTIMATE.start_main_p5) (or (< v_idx_418 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_418) 0) (<= .cse10 v_idx_418)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_420 c_ULTIMATE.start_main_p3) (<= .cse13 v_idx_420) (= (select |c_#memory_int| v_idx_420) 0)) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse0 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_435 Int) (v_idx_433 Int) (v_idx_427 Int) (v_idx_439 Int) (v_idx_437 Int) (v_idx_441 Int) (v_idx_430 Int)) (let ((.cse17 (+ c_ULTIMATE.start_main_p2 1)) (.cse15 (+ c_ULTIMATE.start_main_p3 1)) (.cse20 (+ c_ULTIMATE.start_main_p1 4)) (.cse18 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse16 (+ c_ULTIMATE.start_main_p4 1)) (.cse21 (+ c_ULTIMATE.start_main_p2 3)) (.cse19 (+ c_ULTIMATE.start_main_p1 1)) (.cse29 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse15 v_idx_437) (= (select |c_#memory_int| v_idx_437) 0) (< v_idx_437 c_ULTIMATE.start_main_p3)) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_435) 0) (<= .cse17 v_idx_435) (< v_idx_435 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_427 c_ULTIMATE.start_main_p5) (<= .cse18 v_idx_427) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_427))) (or (= (select |c_#memory_int| v_idx_433) 0) (< v_idx_433 c_ULTIMATE.start_main_p1) (<= .cse19 v_idx_433)) (<= .cse16 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse20 c_ULTIMATE.start_main_p5) (<= .cse21 c_ULTIMATE.start_main_p5) (<= .cse15 c_ULTIMATE.start_main_p4) (<= .cse20 c_ULTIMATE.start_malloc_ptr) (or (= 1 (select |c_#valid| v_idx_430)) (< v_idx_430 c_ULTIMATE.start_main_p5) (<= .cse18 v_idx_430)) (let ((.cse26 (select |c_#memory_int| v_idx_439))) (let ((.cse23 (<= .cse16 v_idx_439)) (.cse24 (<= (* 2 .cse26) 0)) (.cse25 (<= .cse26 0)) (.cse28 (< v_idx_439 c_ULTIMATE.start_main_p4))) (let ((.cse22 (or .cse23 (and .cse24 .cse25) .cse28))) (or (and (< v_idx_441 c_ULTIMATE.start_main_p5) .cse22) (and (<= .cse18 v_idx_441) .cse22) (let ((.cse27 (select |c_#memory_int| v_idx_441))) (and (or .cse23 (and .cse24 .cse25 (<= .cse26 .cse27)) .cse28) (<= 0 (* 2 .cse27)) (<= 0 .cse27))))))) (<= .cse29 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse21 c_ULTIMATE.start_malloc_ptr) (<= .cse19 c_ULTIMATE.start_main_p2) (<= .cse29 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_401 Int) (v_idx_399 Int) (v_idx_405 Int) (v_idx_403 Int) (v_idx_393 Int) (v_idx_407 Int) (v_idx_396 Int)) (let ((.cse38 (+ c_ULTIMATE.start_main_p4 1)) (.cse39 (+ c_ULTIMATE.start_main_p2 1)) (.cse41 (+ c_ULTIMATE.start_main_p3 1)) (.cse42 (+ c_ULTIMATE.start_main_p1 4)) (.cse31 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse43 (+ c_ULTIMATE.start_main_p2 3)) (.cse40 (+ c_ULTIMATE.start_main_p1 1)) (.cse44 (+ c_ULTIMATE.start_main_p3 2))) (and (let ((.cse33 (select |c_#memory_int| v_idx_405))) (let ((.cse32 (<= .cse33 0)) (.cse35 (<= (* 2 .cse33) 0)) (.cse36 (<= .cse38 v_idx_405)) (.cse37 (< v_idx_405 c_ULTIMATE.start_main_p4))) (let ((.cse30 (or (and .cse32 .cse35) .cse36 .cse37))) (or (and .cse30 (<= .cse31 v_idx_407)) (let ((.cse34 (select |c_#memory_int| v_idx_407))) (and (or (and .cse32 (<= .cse33 .cse34) .cse35) .cse36 .cse37) (<= 0 (* 2 .cse34)) (<= 0 .cse34))) (and .cse30 (< v_idx_407 c_ULTIMATE.start_main_p5)))))) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse38 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_401 c_ULTIMATE.start_main_p2) (<= .cse39 v_idx_401) (= (select |c_#memory_int| v_idx_401) 0)) (or (<= .cse40 v_idx_399) (< v_idx_399 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_399))) (or (< v_idx_403 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_403) 0) (<= .cse41 v_idx_403)) (<= .cse38 c_ULTIMATE.start_main_p5) (<= .cse39 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse42 c_ULTIMATE.start_main_p5) (or (< v_idx_396 c_ULTIMATE.start_main_p5) (<= .cse31 v_idx_396) (= 1 (select |c_#valid| v_idx_396))) (<= .cse43 c_ULTIMATE.start_main_p5) (<= .cse41 c_ULTIMATE.start_main_p4) (<= .cse42 c_ULTIMATE.start_malloc_ptr) (or (<= .cse31 v_idx_393) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_393)) (< v_idx_393 c_ULTIMATE.start_main_p5)) (<= .cse44 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse43 c_ULTIMATE.start_malloc_ptr) (<= .cse40 c_ULTIMATE.start_main_p2) (<= .cse44 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:29:22,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:29:22,025 INFO L93 Difference]: Finished difference Result 28 states and 81 transitions. [2019-02-15 11:29:22,025 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:29:22,025 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:29:22,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:29:22,026 INFO L225 Difference]: With dead ends: 28 [2019-02-15 11:29:22,026 INFO L226 Difference]: Without dead ends: 27 [2019-02-15 11:29:22,027 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 3 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 8.8s TimeCoverageRelationStatistics Valid=9, Invalid=6, Unknown=3, NotChecked=12, Total=30 [2019-02-15 11:29:22,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2019-02-15 11:29:22,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 25. [2019-02-15 11:29:22,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:29:22,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 66 transitions. [2019-02-15 11:29:22,041 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 66 transitions. Word has length 4 [2019-02-15 11:29:22,041 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:29:22,041 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 66 transitions. [2019-02-15 11:29:22,041 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:29:22,041 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 66 transitions. [2019-02-15 11:29:22,041 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:29:22,042 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:29:22,042 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:29:22,042 INFO L423 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:29:22,042 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:29:22,042 INFO L82 PathProgramCache]: Analyzing trace with hash 941028, now seen corresponding path program 1 times [2019-02-15 11:29:22,042 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:29:22,043 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:29:22,043 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:29:22,043 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:29:22,044 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:29:22,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:29:22,105 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:29:22,105 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:29:22,105 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:29:22,106 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:29:22,106 INFO L207 CegarAbsIntRunner]: [0], [6], [18], [23] [2019-02-15 11:29:22,107 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:29:22,107 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:29:38,170 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:29:38,171 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-02-15 11:29:38,171 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:29:38,171 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:29:38,608 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:29:41,202 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_501 Int) (v_idx_498 Int) (v_idx_505 Int) (v_idx_503 Int) (v_idx_509 Int) (v_idx_507 Int) (v_idx_495 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse7 (+ c_ULTIMATE.start_main_p1 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_509)) (<= .cse1 v_idx_509) (< v_idx_509 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_503 c_ULTIMATE.start_main_p2) (<= .cse2 v_idx_503) (= 0 (select |c_#memory_int| v_idx_503))) (or (< v_idx_495 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_495)) (<= .cse1 v_idx_495)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_505)) (<= .cse5 v_idx_505) (< v_idx_505 c_ULTIMATE.start_main_p3)) (<= .cse7 c_ULTIMATE.start_main_p2) (let ((.cse12 (select |c_#memory_int| v_idx_507))) (let ((.cse9 (< v_idx_507 c_ULTIMATE.start_main_p4)) (.cse10 (<= .cse0 v_idx_507)) (.cse11 (<= .cse12 0)) (.cse13 (<= (* 2 .cse12) 0))) (let ((.cse14 (or .cse9 .cse10 (and .cse11 .cse13)))) (or (let ((.cse8 (select |c_#memory_int| v_idx_501))) (and (<= 0 (* 2 .cse8)) (or .cse9 .cse10 (and .cse11 (<= .cse12 .cse8) .cse13)) (<= 0 .cse8))) (and .cse14 (< v_idx_501 c_ULTIMATE.start_main_p1)) (and .cse14 (<= .cse7 v_idx_501)))))) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_498 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_498)) (<= .cse1 v_idx_498))))) is different from false [2019-02-15 11:29:43,785 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_522 Int) (v_idx_512 Int) (v_idx_520 Int) (v_idx_515 Int) (v_idx_526 Int) (v_idx_524 Int) (v_idx_518 Int)) (let ((.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse11 (+ c_ULTIMATE.start_main_p2 1)) (.cse10 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse9 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (or (< v_idx_512 c_ULTIMATE.start_main_p5) (<= .cse0 v_idx_512) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_512) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (let ((.cse6 (select |c_#memory_int| v_idx_518))) (let ((.cse7 (<= .cse9 v_idx_518)) (.cse8 (< v_idx_518 c_ULTIMATE.start_main_p1)) (.cse4 (<= 0 .cse6)) (.cse5 (<= 0 (* 2 .cse6)))) (let ((.cse2 (or .cse7 .cse8 (and .cse4 .cse5)))) (or (and (<= .cse1 v_idx_524) .cse2) (let ((.cse3 (select |c_#memory_int| v_idx_524))) (and (<= .cse3 0) (or (and .cse4 .cse5 (<= .cse3 .cse6)) .cse7 .cse8) (<= (* 2 .cse3) 0))) (and .cse2 (< v_idx_524 c_ULTIMATE.start_main_p4)))))) (or (= (select |c_#memory_int| v_idx_522) 0) (< v_idx_522 c_ULTIMATE.start_main_p3) (<= .cse10 v_idx_522)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse11 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse0 v_idx_515) (= 1 (select |c_#valid| v_idx_515)) (< v_idx_515 c_ULTIMATE.start_main_p5)) (or (< v_idx_520 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_520) 0) (<= .cse11 v_idx_520)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_526 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_526) 0) (<= .cse0 v_idx_526)) (<= .cse9 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:29:46,435 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_532 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_535 Int) (v_idx_539 Int) (v_idx_529 Int) (v_idx_541 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_532 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_532)) (<= .cse1 v_idx_532)) (or (= (select |c_#memory_int| v_idx_537) 0) (< v_idx_537 c_ULTIMATE.start_main_p2) (<= .cse2 v_idx_537)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_539 c_ULTIMATE.start_main_p3) (<= .cse5 v_idx_539) (= (select |c_#memory_int| v_idx_539) 0)) (or (<= .cse1 v_idx_543) (< v_idx_543 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_543))) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (let ((.cse13 (select |c_#memory_int| v_idx_541))) (let ((.cse9 (< v_idx_541 c_ULTIMATE.start_main_p4)) (.cse11 (<= (* 2 .cse13) 0)) (.cse12 (<= .cse13 0)) (.cse10 (<= .cse0 v_idx_541))) (let ((.cse7 (or .cse9 (and .cse11 .cse12) .cse10))) (or (and .cse7 (<= .cse8 v_idx_535)) (let ((.cse14 (select |c_#memory_int| v_idx_535))) (and (or .cse9 .cse10 (and .cse11 .cse12 (<= .cse13 .cse14))) (<= 0 .cse14) (<= 0 (* 2 .cse14)))) (and .cse7 (< v_idx_535 c_ULTIMATE.start_main_p1)))))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_529) 0) (< v_idx_529 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_529)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:29:46,473 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:29:46,473 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:29:46,473 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:29:46,473 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:29:46,474 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:29:46,474 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:29:46,474 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:29:46,474 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:29:46,474 INFO L87 Difference]: Start difference. First operand 25 states and 66 transitions. Second operand 5 states. [2019-02-15 11:29:49,430 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_532 Int) (v_idx_543 Int) (v_idx_537 Int) (v_idx_535 Int) (v_idx_539 Int) (v_idx_529 Int) (v_idx_541 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_532 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_532)) (<= .cse1 v_idx_532)) (or (= (select |c_#memory_int| v_idx_537) 0) (< v_idx_537 c_ULTIMATE.start_main_p2) (<= .cse2 v_idx_537)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_539 c_ULTIMATE.start_main_p3) (<= .cse5 v_idx_539) (= (select |c_#memory_int| v_idx_539) 0)) (or (<= .cse1 v_idx_543) (< v_idx_543 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_543))) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (let ((.cse13 (select |c_#memory_int| v_idx_541))) (let ((.cse9 (< v_idx_541 c_ULTIMATE.start_main_p4)) (.cse11 (<= (* 2 .cse13) 0)) (.cse12 (<= .cse13 0)) (.cse10 (<= .cse0 v_idx_541))) (let ((.cse7 (or .cse9 (and .cse11 .cse12) .cse10))) (or (and .cse7 (<= .cse8 v_idx_535)) (let ((.cse14 (select |c_#memory_int| v_idx_535))) (and (or .cse9 .cse10 (and .cse11 .cse12 (<= .cse13 .cse14))) (<= 0 .cse14) (<= 0 (* 2 .cse14)))) (and .cse7 (< v_idx_535 c_ULTIMATE.start_main_p1)))))) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_main_p2) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_529) 0) (< v_idx_529 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_529)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_522 Int) (v_idx_512 Int) (v_idx_520 Int) (v_idx_515 Int) (v_idx_526 Int) (v_idx_524 Int) (v_idx_518 Int)) (let ((.cse16 (+ c_ULTIMATE.start_main_p4 1)) (.cse26 (+ c_ULTIMATE.start_main_p2 1)) (.cse25 (+ c_ULTIMATE.start_main_p3 1)) (.cse27 (+ c_ULTIMATE.start_main_p1 4)) (.cse28 (+ c_ULTIMATE.start_main_p2 3)) (.cse15 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse24 (+ c_ULTIMATE.start_main_p1 1)) (.cse29 (+ c_ULTIMATE.start_main_p3 2))) (and (or (< v_idx_512 c_ULTIMATE.start_main_p5) (<= .cse15 v_idx_512) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_512) 0)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse16 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (let ((.cse21 (select |c_#memory_int| v_idx_518))) (let ((.cse22 (<= .cse24 v_idx_518)) (.cse23 (< v_idx_518 c_ULTIMATE.start_main_p1)) (.cse19 (<= 0 .cse21)) (.cse20 (<= 0 (* 2 .cse21)))) (let ((.cse17 (or .cse22 .cse23 (and .cse19 .cse20)))) (or (and (<= .cse16 v_idx_524) .cse17) (let ((.cse18 (select |c_#memory_int| v_idx_524))) (and (<= .cse18 0) (or (and .cse19 .cse20 (<= .cse18 .cse21)) .cse22 .cse23) (<= (* 2 .cse18) 0))) (and .cse17 (< v_idx_524 c_ULTIMATE.start_main_p4)))))) (or (= (select |c_#memory_int| v_idx_522) 0) (< v_idx_522 c_ULTIMATE.start_main_p3) (<= .cse25 v_idx_522)) (<= .cse16 c_ULTIMATE.start_main_p5) (<= .cse26 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse15 v_idx_515) (= 1 (select |c_#valid| v_idx_515)) (< v_idx_515 c_ULTIMATE.start_main_p5)) (or (< v_idx_520 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_520) 0) (<= .cse26 v_idx_520)) (<= .cse27 c_ULTIMATE.start_main_p5) (<= .cse28 c_ULTIMATE.start_main_p5) (<= .cse25 c_ULTIMATE.start_main_p4) (<= .cse27 c_ULTIMATE.start_malloc_ptr) (<= .cse29 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse28 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_526 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_526) 0) (<= .cse15 v_idx_526)) (<= .cse24 c_ULTIMATE.start_main_p2) (<= .cse29 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_501 Int) (v_idx_498 Int) (v_idx_505 Int) (v_idx_503 Int) (v_idx_509 Int) (v_idx_507 Int) (v_idx_495 Int)) (let ((.cse32 (+ c_ULTIMATE.start_main_p2 1)) (.cse33 (+ c_ULTIMATE.start_main_p1 4)) (.cse34 (+ c_ULTIMATE.start_main_p2 3)) (.cse35 (+ c_ULTIMATE.start_main_p3 1)) (.cse37 (+ c_ULTIMATE.start_main_p1 1)) (.cse30 (+ c_ULTIMATE.start_main_p4 1)) (.cse36 (+ c_ULTIMATE.start_main_p3 2)) (.cse31 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse30 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_509)) (<= .cse31 v_idx_509) (< v_idx_509 c_ULTIMATE.start_main_p5)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_503 c_ULTIMATE.start_main_p2) (<= .cse32 v_idx_503) (= 0 (select |c_#memory_int| v_idx_503))) (or (< v_idx_495 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_495)) (<= .cse31 v_idx_495)) (<= .cse30 c_ULTIMATE.start_main_p5) (<= .cse32 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_main_p5) (<= .cse34 c_ULTIMATE.start_main_p5) (<= .cse35 c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_malloc_ptr) (<= .cse36 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse34 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_505)) (<= .cse35 v_idx_505) (< v_idx_505 c_ULTIMATE.start_main_p3)) (<= .cse37 c_ULTIMATE.start_main_p2) (let ((.cse42 (select |c_#memory_int| v_idx_507))) (let ((.cse39 (< v_idx_507 c_ULTIMATE.start_main_p4)) (.cse40 (<= .cse30 v_idx_507)) (.cse41 (<= .cse42 0)) (.cse43 (<= (* 2 .cse42) 0))) (let ((.cse44 (or .cse39 .cse40 (and .cse41 .cse43)))) (or (let ((.cse38 (select |c_#memory_int| v_idx_501))) (and (<= 0 (* 2 .cse38)) (or .cse39 .cse40 (and .cse41 (<= .cse42 .cse38) .cse43)) (<= 0 .cse38))) (and .cse44 (< v_idx_501 c_ULTIMATE.start_main_p1)) (and .cse44 (<= .cse37 v_idx_501)))))) (<= .cse36 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_498 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_498)) (<= .cse31 v_idx_498)))))) is different from false [2019-02-15 11:30:21,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:30:21,997 INFO L93 Difference]: Finished difference Result 28 states and 79 transitions. [2019-02-15 11:30:21,997 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:30:21,998 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:30:21,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:30:21,998 INFO L225 Difference]: With dead ends: 28 [2019-02-15 11:30:21,998 INFO L226 Difference]: Without dead ends: 27 [2019-02-15 11:30:21,999 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.3s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:30:21,999 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2019-02-15 11:30:22,011 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 25. [2019-02-15 11:30:22,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:30:22,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 66 transitions. [2019-02-15 11:30:22,012 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 66 transitions. Word has length 4 [2019-02-15 11:30:22,013 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:30:22,013 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 66 transitions. [2019-02-15 11:30:22,013 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:30:22,013 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 66 transitions. [2019-02-15 11:30:22,013 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:30:22,014 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:30:22,014 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:30:22,014 INFO L423 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:30:22,014 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:30:22,014 INFO L82 PathProgramCache]: Analyzing trace with hash 941588, now seen corresponding path program 1 times [2019-02-15 11:30:22,014 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:30:22,015 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:30:22,015 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:30:22,015 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:30:22,016 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:30:22,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:30:22,096 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:30:22,096 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:30:22,097 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:30:22,097 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:30:22,097 INFO L207 CegarAbsIntRunner]: [0], [18], [24], [25] [2019-02-15 11:30:22,098 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:30:22,099 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:30:31,725 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:30:31,725 INFO L272 AbstractInterpreter]: Visited 4 different actions 16 times. Merged at 2 different actions 8 times. Widened at 1 different actions 2 times. Found 1 fixpoints after 1 different actions. Largest state had 0 variables. [2019-02-15 11:30:31,725 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:30:31,726 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:30:32,208 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:30:35,005 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_600 Int) (v_idx_611 Int) (v_idx_597 Int) (v_idx_603 Int) (v_idx_607 Int) (v_idx_605 Int) (v_idx_609 Int)) (let ((.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_603) 0) (<= .cse0 v_idx_603) (< v_idx_603 c_ULTIMATE.start_main_p1)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (<= .cse2 v_idx_605) (< v_idx_605 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_605) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_609) (< v_idx_609 c_ULTIMATE.start_main_p4) (let ((.cse3 (select |c_#memory_int| v_idx_609))) (and (<= .cse3 0) (<= (* 2 .cse3) 0)))) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (or (< v_idx_597 c_ULTIMATE.start_main_p5) (<= .cse4 v_idx_597) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_597))) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_600 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_600)) (<= .cse4 v_idx_600)) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_607) 0) (< v_idx_607 c_ULTIMATE.start_main_p3) (<= .cse7 v_idx_607)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse0 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_611 c_ULTIMATE.start_main_p5) (<= .cse4 v_idx_611) (= (select |c_#memory_int| v_idx_611) 0))))) is different from false [2019-02-15 11:30:37,746 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_622 Int) (v_idx_620 Int) (v_idx_614 Int) (v_idx_626 Int) (v_idx_624 Int) (v_idx_617 Int) (v_idx_628 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p2 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse3 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse8 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_622) 0) (< v_idx_622 c_ULTIMATE.start_main_p2) (<= .cse0 v_idx_622)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_624) (= (select |c_#memory_int| v_idx_624) 0) (< v_idx_624 c_ULTIMATE.start_main_p3)) (or (= (select |c_#valid| v_idx_617) 1) (< v_idx_617 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_617)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_614) 0) (<= .cse3 v_idx_614) (< v_idx_614 c_ULTIMATE.start_main_p5)) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (or (< v_idx_626 c_ULTIMATE.start_main_p4) (let ((.cse5 (select |c_#memory_int| v_idx_626))) (and (<= (* 2 .cse5) 0) (<= .cse5 0))) (<= .cse1 v_idx_626)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_628 c_ULTIMATE.start_main_p5) (<= .cse3 v_idx_628) (= (select |c_#memory_int| v_idx_628) 0)) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (or (<= .cse8 v_idx_620) (< v_idx_620 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_620) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse8 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:30:40,458 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_643 Int) (v_idx_641 Int) (v_idx_631 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_645 Int) (v_idx_639 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_main_p2 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse3 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_639 c_ULTIMATE.start_main_p2) (<= .cse1 v_idx_639) (= 0 (select |c_#memory_int| v_idx_639))) (or (< v_idx_643 c_ULTIMATE.start_main_p4) (let ((.cse2 (select |c_#memory_int| v_idx_643))) (and (<= (* 2 .cse2) 0) (<= .cse2 0))) (<= .cse0 v_idx_643)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse3 v_idx_637) (= 0 (select |c_#memory_int| v_idx_637)) (< v_idx_637 c_ULTIMATE.start_main_p1)) (or (<= .cse4 v_idx_631) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_631)) (< v_idx_631 c_ULTIMATE.start_main_p5)) (or (<= .cse4 v_idx_634) (= (select |c_#valid| v_idx_634) 1) (< v_idx_634 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (<= .cse7 v_idx_641) (< v_idx_641 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_641) 0)) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_645)) (< v_idx_645 c_ULTIMATE.start_main_p5) (<= .cse4 v_idx_645)) (<= .cse3 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:30:40,495 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:30:40,496 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:30:40,496 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:30:40,496 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [2] total 5 [2019-02-15 11:30:40,496 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:30:40,496 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:30:40,496 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:30:40,496 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:30:40,497 INFO L87 Difference]: Start difference. First operand 25 states and 66 transitions. Second operand 5 states. [2019-02-15 11:30:43,351 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_600 Int) (v_idx_611 Int) (v_idx_597 Int) (v_idx_603 Int) (v_idx_607 Int) (v_idx_605 Int) (v_idx_609 Int)) (let ((.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2)) (.cse4 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_603) 0) (<= .cse0 v_idx_603) (< v_idx_603 c_ULTIMATE.start_main_p1)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (or (<= .cse2 v_idx_605) (< v_idx_605 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_605) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_609) (< v_idx_609 c_ULTIMATE.start_main_p4) (let ((.cse3 (select |c_#memory_int| v_idx_609))) (and (<= .cse3 0) (<= (* 2 .cse3) 0)))) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (or (< v_idx_597 c_ULTIMATE.start_main_p5) (<= .cse4 v_idx_597) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_597))) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_600 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_600)) (<= .cse4 v_idx_600)) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_607) 0) (< v_idx_607 c_ULTIMATE.start_main_p3) (<= .cse7 v_idx_607)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse0 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_611 c_ULTIMATE.start_main_p5) (<= .cse4 v_idx_611) (= (select |c_#memory_int| v_idx_611) 0))))) (forall ((v_idx_643 Int) (v_idx_641 Int) (v_idx_631 Int) (v_idx_637 Int) (v_idx_634 Int) (v_idx_645 Int) (v_idx_639 Int)) (let ((.cse9 (+ c_ULTIMATE.start_main_p4 1)) (.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse14 (+ c_ULTIMATE.start_main_p1 4)) (.cse16 (+ c_ULTIMATE.start_main_p3 1)) (.cse15 (+ c_ULTIMATE.start_main_p2 3)) (.cse13 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse9 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_639 c_ULTIMATE.start_main_p2) (<= .cse10 v_idx_639) (= 0 (select |c_#memory_int| v_idx_639))) (or (< v_idx_643 c_ULTIMATE.start_main_p4) (let ((.cse11 (select |c_#memory_int| v_idx_643))) (and (<= (* 2 .cse11) 0) (<= .cse11 0))) (<= .cse9 v_idx_643)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse12 v_idx_637) (= 0 (select |c_#memory_int| v_idx_637)) (< v_idx_637 c_ULTIMATE.start_main_p1)) (or (<= .cse13 v_idx_631) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_631)) (< v_idx_631 c_ULTIMATE.start_main_p5)) (or (<= .cse13 v_idx_634) (= (select |c_#valid| v_idx_634) 1) (< v_idx_634 c_ULTIMATE.start_main_p5)) (<= .cse9 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse14 c_ULTIMATE.start_main_p5) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse16 c_ULTIMATE.start_main_p4) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (or (<= .cse16 v_idx_641) (< v_idx_641 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_641) 0)) (<= .cse17 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_645)) (< v_idx_645 c_ULTIMATE.start_main_p5) (<= .cse13 v_idx_645)) (<= .cse12 c_ULTIMATE.start_main_p2) (<= .cse17 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_622 Int) (v_idx_620 Int) (v_idx_614 Int) (v_idx_626 Int) (v_idx_624 Int) (v_idx_617 Int) (v_idx_628 Int)) (let ((.cse18 (+ c_ULTIMATE.start_main_p2 1)) (.cse19 (+ c_ULTIMATE.start_main_p4 1)) (.cse20 (+ c_ULTIMATE.start_main_p3 1)) (.cse22 (+ c_ULTIMATE.start_main_p1 4)) (.cse21 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse24 (+ c_ULTIMATE.start_main_p2 3)) (.cse26 (+ c_ULTIMATE.start_main_p1 1)) (.cse25 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (= (select |c_#memory_int| v_idx_622) 0) (< v_idx_622 c_ULTIMATE.start_main_p2) (<= .cse18 v_idx_622)) (<= .cse19 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse20 v_idx_624) (= (select |c_#memory_int| v_idx_624) 0) (< v_idx_624 c_ULTIMATE.start_main_p3)) (or (= (select |c_#valid| v_idx_617) 1) (< v_idx_617 c_ULTIMATE.start_main_p5) (<= .cse21 v_idx_617)) (<= .cse19 c_ULTIMATE.start_main_p5) (<= .cse18 c_ULTIMATE.start_main_p3) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_614) 0) (<= .cse21 v_idx_614) (< v_idx_614 c_ULTIMATE.start_main_p5)) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse22 c_ULTIMATE.start_main_p5) (or (< v_idx_626 c_ULTIMATE.start_main_p4) (let ((.cse23 (select |c_#memory_int| v_idx_626))) (and (<= (* 2 .cse23) 0) (<= .cse23 0))) (<= .cse19 v_idx_626)) (<= .cse24 c_ULTIMATE.start_main_p5) (<= .cse20 c_ULTIMATE.start_main_p4) (<= .cse22 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_628 c_ULTIMATE.start_main_p5) (<= .cse21 v_idx_628) (= (select |c_#memory_int| v_idx_628) 0)) (<= .cse25 c_ULTIMATE.start_malloc_ptr) (or (<= .cse26 v_idx_620) (< v_idx_620 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_620) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse24 c_ULTIMATE.start_malloc_ptr) (<= .cse26 c_ULTIMATE.start_main_p2) (<= .cse25 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:31:18,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:31:18,544 INFO L93 Difference]: Finished difference Result 26 states and 66 transitions. [2019-02-15 11:31:18,544 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:31:18,544 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:31:18,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:31:18,545 INFO L225 Difference]: With dead ends: 26 [2019-02-15 11:31:18,545 INFO L226 Difference]: Without dead ends: 25 [2019-02-15 11:31:18,545 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.8s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:31:18,545 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2019-02-15 11:31:18,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2019-02-15 11:31:18,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:31:18,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 65 transitions. [2019-02-15 11:31:18,559 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 65 transitions. Word has length 4 [2019-02-15 11:31:18,559 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:31:18,559 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 65 transitions. [2019-02-15 11:31:18,559 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:31:18,559 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 65 transitions. [2019-02-15 11:31:18,560 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:31:18,560 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:31:18,560 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:31:18,560 INFO L423 AbstractCegarLoop]: === Iteration 11 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:31:18,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:31:18,560 INFO L82 PathProgramCache]: Analyzing trace with hash 941152, now seen corresponding path program 1 times [2019-02-15 11:31:18,560 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:31:18,561 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:31:18,561 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:31:18,561 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:31:18,561 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:31:18,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:31:18,663 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:31:18,663 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:31:18,664 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:31:18,664 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:31:18,664 INFO L207 CegarAbsIntRunner]: [0], [10], [18], [23] [2019-02-15 11:31:18,665 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:31:18,665 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:31:34,566 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:31:34,566 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-02-15 11:31:34,566 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:31:34,566 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:31:35,024 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:31:37,767 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_699 Int) (v_idx_713 Int) (v_idx_702 Int) (v_idx_711 Int) (v_idx_707 Int) (v_idx_705 Int) (v_idx_709 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse14 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_713 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_713) (= (select |c_#memory_int| v_idx_713) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_702)) (<= .cse1 v_idx_702) (< v_idx_702 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_709) 0) (< v_idx_709 c_ULTIMATE.start_main_p3) (<= .cse5 v_idx_709)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (let ((.cse11 (select |c_#memory_int| v_idx_711))) (let ((.cse8 (< v_idx_711 c_ULTIMATE.start_main_p4)) (.cse9 (<= .cse11 0)) (.cse10 (<= (* 2 .cse11) 0)) (.cse12 (<= .cse0 v_idx_711))) (let ((.cse13 (or .cse8 (and .cse9 .cse10) .cse12))) (or (let ((.cse7 (select |c_#memory_int| v_idx_707))) (and (<= (* 2 .cse7) 0) (<= .cse7 0) (or .cse8 (and .cse9 .cse10 (<= (+ .cse11 .cse7) 0)) .cse12))) (and .cse13 (<= .cse2 v_idx_707)) (and (< v_idx_707 c_ULTIMATE.start_main_p2) .cse13))))) (or (< v_idx_699 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_699) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_699) 0)) (<= .cse14 c_ULTIMATE.start_main_p2) (<= .cse6 c_ULTIMATE.start_main_p5) (or (<= .cse14 v_idx_705) (< v_idx_705 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_705) 0)) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:31:40,398 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_730 Int) (v_idx_724 Int) (v_idx_722 Int) (v_idx_728 Int) (v_idx_726 Int) (v_idx_716 Int) (v_idx_719 Int)) (let ((.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse4 (+ c_ULTIMATE.start_main_p2 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse3 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_719) (< v_idx_719 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_719))) (or (< v_idx_726 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_726) 0) (<= .cse2 v_idx_726)) (or (= (select |c_#memory_int| v_idx_722) 0) (< v_idx_722 c_ULTIMATE.start_main_p1) (<= .cse3 v_idx_722)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p3) (or (< v_idx_730 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_730) (= (select |c_#memory_int| v_idx_730) 0)) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_716) 0) (<= .cse1 v_idx_716) (< v_idx_716 c_ULTIMATE.start_main_p5)) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (let ((.cse12 (select |c_#memory_int| v_idx_728))) (let ((.cse8 (<= .cse0 v_idx_728)) (.cse9 (<= .cse12 0)) (.cse10 (<= (* 2 .cse12) 0)) (.cse13 (< v_idx_728 c_ULTIMATE.start_main_p4))) (let ((.cse7 (or .cse8 (and .cse9 .cse10) .cse13))) (or (and (< v_idx_724 c_ULTIMATE.start_main_p2) .cse7) (let ((.cse11 (select |c_#memory_int| v_idx_724))) (and (or .cse8 (and .cse9 .cse10 (<= (+ .cse11 .cse12) 0)) .cse13) (<= .cse11 0) (<= (* 2 .cse11) 0))) (and .cse7 (<= .cse4 v_idx_724)))))) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse3 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:31:42,907 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_743 Int) (v_idx_741 Int) (v_idx_747 Int) (v_idx_736 Int) (v_idx_733 Int) (v_idx_745 Int) (v_idx_739 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_739 c_ULTIMATE.start_main_p1) (<= .cse0 v_idx_739) (= (select |c_#memory_int| v_idx_739) 0)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_733) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_733)) (< v_idx_733 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_747) 0) (<= .cse2 v_idx_747) (< v_idx_747 c_ULTIMATE.start_main_p5)) (or (< v_idx_743 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_743) 0) (<= .cse3 v_idx_743)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (<= .cse2 v_idx_736) (< v_idx_736 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_736))) (<= .cse0 c_ULTIMATE.start_main_p2) (let ((.cse11 (select |c_#memory_int| v_idx_745))) (let ((.cse12 (<= (* 2 .cse11) 0)) (.cse13 (<= .cse11 0)) (.cse10 (<= .cse1 v_idx_745)) (.cse14 (< v_idx_745 c_ULTIMATE.start_main_p4))) (let ((.cse8 (or (and .cse12 .cse13) .cse10 .cse14))) (or (and (<= .cse4 v_idx_741) .cse8) (let ((.cse9 (select |c_#memory_int| v_idx_741))) (and (<= .cse9 0) (<= (* 2 .cse9) 0) (or .cse10 (and (<= (+ .cse9 .cse11) 0) .cse12 .cse13) .cse14))) (and (< v_idx_741 c_ULTIMATE.start_main_p2) .cse8))))) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:31:42,942 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:31:42,943 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:31:42,943 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:31:42,943 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:31:42,943 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:31:42,943 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:31:42,943 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:31:42,943 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:31:42,944 INFO L87 Difference]: Start difference. First operand 25 states and 65 transitions. Second operand 5 states. [2019-02-15 11:31:45,766 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_743 Int) (v_idx_741 Int) (v_idx_747 Int) (v_idx_736 Int) (v_idx_733 Int) (v_idx_745 Int) (v_idx_739 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p3 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_739 c_ULTIMATE.start_main_p1) (<= .cse0 v_idx_739) (= (select |c_#memory_int| v_idx_739) 0)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_733) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_733)) (< v_idx_733 c_ULTIMATE.start_main_p5)) (or (= (select |c_#memory_int| v_idx_747) 0) (<= .cse2 v_idx_747) (< v_idx_747 c_ULTIMATE.start_main_p5)) (or (< v_idx_743 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_743) 0) (<= .cse3 v_idx_743)) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (<= .cse2 v_idx_736) (< v_idx_736 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_736))) (<= .cse0 c_ULTIMATE.start_main_p2) (let ((.cse11 (select |c_#memory_int| v_idx_745))) (let ((.cse12 (<= (* 2 .cse11) 0)) (.cse13 (<= .cse11 0)) (.cse10 (<= .cse1 v_idx_745)) (.cse14 (< v_idx_745 c_ULTIMATE.start_main_p4))) (let ((.cse8 (or (and .cse12 .cse13) .cse10 .cse14))) (or (and (<= .cse4 v_idx_741) .cse8) (let ((.cse9 (select |c_#memory_int| v_idx_741))) (and (<= .cse9 0) (<= (* 2 .cse9) 0) (or .cse10 (and (<= (+ .cse9 .cse11) 0) .cse12 .cse13) .cse14))) (and (< v_idx_741 c_ULTIMATE.start_main_p2) .cse8))))) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_730 Int) (v_idx_724 Int) (v_idx_722 Int) (v_idx_728 Int) (v_idx_726 Int) (v_idx_716 Int) (v_idx_719 Int)) (let ((.cse16 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 1)) (.cse20 (+ c_ULTIMATE.start_main_p1 4)) (.cse19 (+ c_ULTIMATE.start_main_p2 1)) (.cse15 (+ c_ULTIMATE.start_main_p4 1)) (.cse21 (+ c_ULTIMATE.start_main_p2 3)) (.cse18 (+ c_ULTIMATE.start_main_p1 1)) (.cse29 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse16 v_idx_719) (< v_idx_719 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_719))) (or (< v_idx_726 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_726) 0) (<= .cse17 v_idx_726)) (or (= (select |c_#memory_int| v_idx_722) 0) (< v_idx_722 c_ULTIMATE.start_main_p1) (<= .cse18 v_idx_722)) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse19 c_ULTIMATE.start_main_p3) (or (< v_idx_730 c_ULTIMATE.start_main_p5) (<= .cse16 v_idx_730) (= (select |c_#memory_int| v_idx_730) 0)) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_716) 0) (<= .cse16 v_idx_716) (< v_idx_716 c_ULTIMATE.start_main_p5)) (<= .cse20 c_ULTIMATE.start_main_p5) (<= .cse21 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p4) (<= .cse20 c_ULTIMATE.start_malloc_ptr) (let ((.cse27 (select |c_#memory_int| v_idx_728))) (let ((.cse23 (<= .cse15 v_idx_728)) (.cse24 (<= .cse27 0)) (.cse25 (<= (* 2 .cse27) 0)) (.cse28 (< v_idx_728 c_ULTIMATE.start_main_p4))) (let ((.cse22 (or .cse23 (and .cse24 .cse25) .cse28))) (or (and (< v_idx_724 c_ULTIMATE.start_main_p2) .cse22) (let ((.cse26 (select |c_#memory_int| v_idx_724))) (and (or .cse23 (and .cse24 .cse25 (<= (+ .cse26 .cse27) 0)) .cse28) (<= .cse26 0) (<= (* 2 .cse26) 0))) (and .cse22 (<= .cse19 v_idx_724)))))) (<= .cse29 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse21 c_ULTIMATE.start_malloc_ptr) (<= .cse18 c_ULTIMATE.start_main_p2) (<= .cse29 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_699 Int) (v_idx_713 Int) (v_idx_702 Int) (v_idx_711 Int) (v_idx_707 Int) (v_idx_705 Int) (v_idx_709 Int)) (let ((.cse33 (+ c_ULTIMATE.start_main_p1 4)) (.cse35 (+ c_ULTIMATE.start_main_p3 1)) (.cse34 (+ c_ULTIMATE.start_main_p2 3)) (.cse32 (+ c_ULTIMATE.start_main_p2 1)) (.cse30 (+ c_ULTIMATE.start_main_p4 1)) (.cse31 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse36 (+ c_ULTIMATE.start_main_p3 2)) (.cse44 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse30 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_713 c_ULTIMATE.start_main_p5) (<= .cse31 v_idx_713) (= (select |c_#memory_int| v_idx_713) 0)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (= 1 (select |c_#valid| v_idx_702)) (<= .cse31 v_idx_702) (< v_idx_702 c_ULTIMATE.start_main_p5)) (<= .cse30 c_ULTIMATE.start_main_p5) (<= .cse32 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_main_p5) (<= .cse34 c_ULTIMATE.start_main_p5) (<= .cse35 c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_malloc_ptr) (<= .cse36 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_709) 0) (< v_idx_709 c_ULTIMATE.start_main_p3) (<= .cse35 v_idx_709)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse34 c_ULTIMATE.start_malloc_ptr) (let ((.cse41 (select |c_#memory_int| v_idx_711))) (let ((.cse38 (< v_idx_711 c_ULTIMATE.start_main_p4)) (.cse39 (<= .cse41 0)) (.cse40 (<= (* 2 .cse41) 0)) (.cse42 (<= .cse30 v_idx_711))) (let ((.cse43 (or .cse38 (and .cse39 .cse40) .cse42))) (or (let ((.cse37 (select |c_#memory_int| v_idx_707))) (and (<= (* 2 .cse37) 0) (<= .cse37 0) (or .cse38 (and .cse39 .cse40 (<= (+ .cse41 .cse37) 0)) .cse42))) (and .cse43 (<= .cse32 v_idx_707)) (and (< v_idx_707 c_ULTIMATE.start_main_p2) .cse43))))) (or (< v_idx_699 c_ULTIMATE.start_main_p5) (<= .cse31 v_idx_699) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_699) 0)) (<= .cse44 c_ULTIMATE.start_main_p2) (<= .cse36 c_ULTIMATE.start_main_p5) (or (<= .cse44 v_idx_705) (< v_idx_705 c_ULTIMATE.start_main_p1) (= (select |c_#memory_int| v_idx_705) 0)) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:32:17,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:32:17,648 INFO L93 Difference]: Finished difference Result 28 states and 78 transitions. [2019-02-15 11:32:17,648 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:32:17,648 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:32:17,648 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:32:17,649 INFO L225 Difference]: With dead ends: 28 [2019-02-15 11:32:17,649 INFO L226 Difference]: Without dead ends: 27 [2019-02-15 11:32:17,649 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.3s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:32:17,650 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2019-02-15 11:32:17,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 25. [2019-02-15 11:32:17,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:32:17,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 65 transitions. [2019-02-15 11:32:17,666 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 65 transitions. Word has length 4 [2019-02-15 11:32:17,666 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:32:17,666 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 65 transitions. [2019-02-15 11:32:17,666 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:32:17,666 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 65 transitions. [2019-02-15 11:32:17,666 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:32:17,667 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:32:17,667 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:32:17,667 INFO L423 AbstractCegarLoop]: === Iteration 12 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:32:17,667 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:32:17,667 INFO L82 PathProgramCache]: Analyzing trace with hash 941276, now seen corresponding path program 1 times [2019-02-15 11:32:17,667 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:32:17,668 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:32:17,668 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:32:17,668 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:32:17,668 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:32:17,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:32:17,759 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:32:17,759 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:32:17,760 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:32:17,760 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:32:17,760 INFO L207 CegarAbsIntRunner]: [0], [14], [18], [23] [2019-02-15 11:32:17,761 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:32:17,761 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:32:36,713 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:32:36,713 INFO L272 AbstractInterpreter]: Visited 4 different actions 31 times. Merged at 2 different actions 9 times. Widened at 2 different actions 5 times. Found 11 fixpoints after 2 different actions. Largest state had 0 variables. [2019-02-15 11:32:36,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:32:36,714 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:32:37,156 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:32:39,718 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_801 Int) (v_idx_813 Int) (v_idx_811 Int) (v_idx_815 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p4 1)) (.cse10 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse11 (+ c_ULTIMATE.start_main_p2 1)) (.cse0 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse0 v_idx_807) (= (select |c_#memory_int| v_idx_807) 0) (< v_idx_807 c_ULTIMATE.start_main_p1)) (or (<= .cse1 v_idx_801) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_801) 0) (< v_idx_801 c_ULTIMATE.start_main_p5)) (<= .cse2 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_815 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_815) (= (select |c_#memory_int| v_idx_815) 0)) (<= .cse2 c_ULTIMATE.start_main_p5) (let ((.cse8 (select |c_#memory_int| v_idx_811))) (let ((.cse3 (<= .cse10 v_idx_811)) (.cse4 (< v_idx_811 c_ULTIMATE.start_main_p3)) (.cse5 (<= 0 .cse8)) (.cse6 (<= 0 (* 2 .cse8)))) (let ((.cse9 (or .cse3 .cse4 (and .cse5 .cse6)))) (or (let ((.cse7 (select |c_#memory_int| v_idx_813))) (and (or .cse3 .cse4 (and .cse5 .cse6 (<= .cse7 .cse8))) (<= (* 2 .cse7) 0) (<= .cse7 0))) (and .cse9 (< v_idx_813 c_ULTIMATE.start_main_p4)) (and .cse9 (<= .cse2 v_idx_813)))))) (<= .cse11 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_809 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_809) 0) (<= .cse11 v_idx_809)) (<= .cse0 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_804 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_804)) (<= .cse1 v_idx_804))))) is different from false [2019-02-15 11:32:42,259 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_830 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_821 Int) (v_idx_828 Int) (v_idx_826 Int) (v_idx_818 Int)) (let ((.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse3 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse11 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_832 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_832) 0) (<= .cse1 v_idx_832)) (or (< v_idx_818 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_818) 0) (<= .cse1 v_idx_818)) (or (< v_idx_821 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_821) (= 1 (select |c_#valid| v_idx_821))) (let ((.cse6 (select |c_#memory_int| v_idx_830))) (let ((.cse5 (<= .cse0 v_idx_830)) (.cse7 (<= .cse6 0)) (.cse8 (<= (* 2 .cse6) 0)) (.cse9 (< v_idx_830 c_ULTIMATE.start_main_p4))) (let ((.cse2 (or .cse5 (and .cse7 .cse8) .cse9))) (or (and (< v_idx_828 c_ULTIMATE.start_main_p3) .cse2) (and .cse2 (<= .cse3 v_idx_828)) (let ((.cse4 (select |c_#memory_int| v_idx_828))) (and (<= 0 (* 2 .cse4)) (or .cse5 (and (<= .cse6 .cse4) .cse7 .cse8) .cse9) (<= 0 .cse4))))))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_824) 0) (< v_idx_824 c_ULTIMATE.start_main_p1) (<= .cse11 v_idx_824)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_826 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_826) 0) (<= .cse10 v_idx_826)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= .cse11 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:32:44,885 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_841 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_838 Int) (v_idx_849 Int) (v_idx_847 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse11 (+ c_ULTIMATE.start_main_p1 4)) (.cse12 (+ c_ULTIMATE.start_main_p2 3)) (.cse13 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2)) (.cse9 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (let ((.cse6 (select |c_#memory_int| v_idx_847))) (let ((.cse4 (<= .cse0 v_idx_847)) (.cse5 (<= (* 2 .cse6) 0)) (.cse7 (<= .cse6 0)) (.cse8 (< v_idx_847 c_ULTIMATE.start_main_p4))) (let ((.cse1 (or .cse4 (and .cse5 .cse7) .cse8))) (or (and .cse1 (< v_idx_845 c_ULTIMATE.start_main_p3)) (and .cse1 (<= .cse2 v_idx_845)) (let ((.cse3 (select |c_#memory_int| v_idx_845))) (and (<= 0 .cse3) (or .cse4 (and .cse5 (<= .cse6 .cse3) .cse7) .cse8) (<= 0 (* 2 .cse3)))))))) (<= .cse0 c_ULTIMATE.start_main_p5) (or (< v_idx_835 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= .cse9 v_idx_835)) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (< v_idx_843 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_843) 0) (<= .cse10 v_idx_843)) (<= .cse11 c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_838) 1) (< v_idx_838 c_ULTIMATE.start_main_p5) (<= .cse9 v_idx_838)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_841) 0) (<= .cse13 v_idx_841) (< v_idx_841 c_ULTIMATE.start_main_p1)) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_849 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_849) 0) (<= .cse9 v_idx_849))))) is different from false [2019-02-15 11:32:44,927 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:32:44,927 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:32:44,927 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:32:44,927 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:32:44,928 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:32:44,928 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:32:44,928 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:32:44,928 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:32:44,928 INFO L87 Difference]: Start difference. First operand 25 states and 65 transitions. Second operand 5 states. [2019-02-15 11:32:47,751 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_830 Int) (v_idx_824 Int) (v_idx_832 Int) (v_idx_821 Int) (v_idx_828 Int) (v_idx_826 Int) (v_idx_818 Int)) (let ((.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse3 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse11 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_832 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_832) 0) (<= .cse1 v_idx_832)) (or (< v_idx_818 c_ULTIMATE.start_main_p5) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_818) 0) (<= .cse1 v_idx_818)) (or (< v_idx_821 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_821) (= 1 (select |c_#valid| v_idx_821))) (let ((.cse6 (select |c_#memory_int| v_idx_830))) (let ((.cse5 (<= .cse0 v_idx_830)) (.cse7 (<= .cse6 0)) (.cse8 (<= (* 2 .cse6) 0)) (.cse9 (< v_idx_830 c_ULTIMATE.start_main_p4))) (let ((.cse2 (or .cse5 (and .cse7 .cse8) .cse9))) (or (and (< v_idx_828 c_ULTIMATE.start_main_p3) .cse2) (and .cse2 (<= .cse3 v_idx_828)) (let ((.cse4 (select |c_#memory_int| v_idx_828))) (and (<= 0 (* 2 .cse4)) (or .cse5 (and (<= .cse6 .cse4) .cse7 .cse8) .cse9) (<= 0 .cse4))))))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= (select |c_#memory_int| v_idx_824) 0) (< v_idx_824 c_ULTIMATE.start_main_p1) (<= .cse11 v_idx_824)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_826 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_826) 0) (<= .cse10 v_idx_826)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= .cse11 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_841 Int) (v_idx_845 Int) (v_idx_835 Int) (v_idx_843 Int) (v_idx_838 Int) (v_idx_849 Int) (v_idx_847 Int)) (let ((.cse15 (+ c_ULTIMATE.start_main_p4 1)) (.cse25 (+ c_ULTIMATE.start_main_p2 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 1)) (.cse26 (+ c_ULTIMATE.start_main_p1 4)) (.cse27 (+ c_ULTIMATE.start_main_p2 3)) (.cse28 (+ c_ULTIMATE.start_main_p1 1)) (.cse29 (+ c_ULTIMATE.start_main_p3 2)) (.cse24 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (let ((.cse21 (select |c_#memory_int| v_idx_847))) (let ((.cse19 (<= .cse15 v_idx_847)) (.cse20 (<= (* 2 .cse21) 0)) (.cse22 (<= .cse21 0)) (.cse23 (< v_idx_847 c_ULTIMATE.start_main_p4))) (let ((.cse16 (or .cse19 (and .cse20 .cse22) .cse23))) (or (and .cse16 (< v_idx_845 c_ULTIMATE.start_main_p3)) (and .cse16 (<= .cse17 v_idx_845)) (let ((.cse18 (select |c_#memory_int| v_idx_845))) (and (<= 0 .cse18) (or .cse19 (and .cse20 (<= .cse21 .cse18) .cse22) .cse23) (<= 0 (* 2 .cse18)))))))) (<= .cse15 c_ULTIMATE.start_main_p5) (or (< v_idx_835 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_835)) (<= .cse24 v_idx_835)) (<= .cse25 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (< v_idx_843 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_843) 0) (<= .cse25 v_idx_843)) (<= .cse26 c_ULTIMATE.start_main_p5) (or (= (select |c_#valid| v_idx_838) 1) (< v_idx_838 c_ULTIMATE.start_main_p5) (<= .cse24 v_idx_838)) (<= .cse27 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p4) (<= .cse26 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#memory_int| v_idx_841) 0) (<= .cse28 v_idx_841) (< v_idx_841 c_ULTIMATE.start_main_p1)) (<= .cse29 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse27 c_ULTIMATE.start_malloc_ptr) (<= .cse28 c_ULTIMATE.start_main_p2) (<= .cse29 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_849 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_849) 0) (<= .cse24 v_idx_849))))) (forall ((v_idx_801 Int) (v_idx_813 Int) (v_idx_811 Int) (v_idx_815 Int) (v_idx_804 Int) (v_idx_809 Int) (v_idx_807 Int)) (let ((.cse32 (+ c_ULTIMATE.start_main_p4 1)) (.cse40 (+ c_ULTIMATE.start_main_p3 1)) (.cse42 (+ c_ULTIMATE.start_main_p1 4)) (.cse43 (+ c_ULTIMATE.start_main_p2 3)) (.cse41 (+ c_ULTIMATE.start_main_p2 1)) (.cse30 (+ c_ULTIMATE.start_main_p1 1)) (.cse44 (+ c_ULTIMATE.start_main_p3 2)) (.cse31 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse30 v_idx_807) (= (select |c_#memory_int| v_idx_807) 0) (< v_idx_807 c_ULTIMATE.start_main_p1)) (or (<= .cse31 v_idx_801) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_801) 0) (< v_idx_801 c_ULTIMATE.start_main_p5)) (<= .cse32 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_815 c_ULTIMATE.start_main_p5) (<= .cse31 v_idx_815) (= (select |c_#memory_int| v_idx_815) 0)) (<= .cse32 c_ULTIMATE.start_main_p5) (let ((.cse38 (select |c_#memory_int| v_idx_811))) (let ((.cse33 (<= .cse40 v_idx_811)) (.cse34 (< v_idx_811 c_ULTIMATE.start_main_p3)) (.cse35 (<= 0 .cse38)) (.cse36 (<= 0 (* 2 .cse38)))) (let ((.cse39 (or .cse33 .cse34 (and .cse35 .cse36)))) (or (let ((.cse37 (select |c_#memory_int| v_idx_813))) (and (or .cse33 .cse34 (and .cse35 .cse36 (<= .cse37 .cse38))) (<= (* 2 .cse37) 0) (<= .cse37 0))) (and .cse39 (< v_idx_813 c_ULTIMATE.start_main_p4)) (and .cse39 (<= .cse32 v_idx_813)))))) (<= .cse41 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse42 c_ULTIMATE.start_main_p5) (<= .cse43 c_ULTIMATE.start_main_p5) (<= .cse40 c_ULTIMATE.start_main_p4) (<= .cse42 c_ULTIMATE.start_malloc_ptr) (<= .cse44 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse43 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_809 c_ULTIMATE.start_main_p2) (= (select |c_#memory_int| v_idx_809) 0) (<= .cse41 v_idx_809)) (<= .cse30 c_ULTIMATE.start_main_p2) (<= .cse44 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_804 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_804)) (<= .cse31 v_idx_804)))))) is different from false [2019-02-15 11:33:20,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:33:20,220 INFO L93 Difference]: Finished difference Result 28 states and 78 transitions. [2019-02-15 11:33:20,220 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:33:20,220 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:33:20,221 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:33:20,221 INFO L225 Difference]: With dead ends: 28 [2019-02-15 11:33:20,221 INFO L226 Difference]: Without dead ends: 27 [2019-02-15 11:33:20,221 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.1s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:33:20,222 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2019-02-15 11:33:20,238 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 25. [2019-02-15 11:33:20,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:33:20,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 65 transitions. [2019-02-15 11:33:20,238 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 65 transitions. Word has length 4 [2019-02-15 11:33:20,239 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:33:20,239 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 65 transitions. [2019-02-15 11:33:20,239 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:33:20,239 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 65 transitions. [2019-02-15 11:33:20,239 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:33:20,240 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:33:20,240 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:33:20,240 INFO L423 AbstractCegarLoop]: === Iteration 13 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:33:20,240 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:33:20,240 INFO L82 PathProgramCache]: Analyzing trace with hash 943322, now seen corresponding path program 2 times [2019-02-15 11:33:20,240 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:33:20,241 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:20,241 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:33:20,241 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:20,241 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:33:20,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:33:20,328 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:33:20,329 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:33:20,329 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:33:20,329 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-15 11:33:20,329 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-15 11:33:20,330 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:33:20,330 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-02-15 11:33:20,338 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-15 11:33:20,339 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-15 11:33:20,344 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2019-02-15 11:33:20,344 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-15 11:33:20,345 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-02-15 11:33:20,349 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-02-15 11:33:20,360 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,361 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-02-15 11:33:20,364 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,365 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,365 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-02-15 11:33:20,370 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,371 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,372 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,373 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-02-15 11:33:20,378 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,378 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,379 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,380 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,381 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 66 [2019-02-15 11:33:20,382 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,411 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,427 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,439 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,448 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,467 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-02-15 11:33:20,468 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:31, output treesize:38 [2019-02-15 11:33:20,486 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,487 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,488 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,489 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,491 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,492 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,493 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,494 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,496 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,497 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,498 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,499 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-02-15 11:33:20,500 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,544 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:33:20,544 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:48, output treesize:38 [2019-02-15 11:33:20,569 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,570 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,570 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,571 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,573 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,574 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,575 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,577 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,578 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,579 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,581 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,582 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,583 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:33:20,585 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 13 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 78 [2019-02-15 11:33:20,586 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:33:20,631 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-02-15 11:33:20,631 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:48, output treesize:38 [2019-02-15 11:33:20,659 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:33:20,660 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-02-15 11:33:20,684 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:33:20,703 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-15 11:33:20,703 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-02-15 11:33:20,703 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-15 11:33:20,703 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-02-15 11:33:20,703 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-02-15 11:33:20,704 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=66, Unknown=0, NotChecked=0, Total=110 [2019-02-15 11:33:20,704 INFO L87 Difference]: Start difference. First operand 25 states and 65 transitions. Second operand 8 states. [2019-02-15 11:33:21,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:33:21,265 INFO L93 Difference]: Finished difference Result 55 states and 112 transitions. [2019-02-15 11:33:21,265 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-02-15 11:33:21,265 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-02-15 11:33:21,265 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:33:21,266 INFO L225 Difference]: With dead ends: 55 [2019-02-15 11:33:21,266 INFO L226 Difference]: Without dead ends: 48 [2019-02-15 11:33:21,267 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=62, Invalid=94, Unknown=0, NotChecked=0, Total=156 [2019-02-15 11:33:21,267 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2019-02-15 11:33:21,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 24. [2019-02-15 11:33:21,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2019-02-15 11:33:21,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 58 transitions. [2019-02-15 11:33:21,293 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 58 transitions. Word has length 4 [2019-02-15 11:33:21,293 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:33:21,293 INFO L480 AbstractCegarLoop]: Abstraction has 24 states and 58 transitions. [2019-02-15 11:33:21,294 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-02-15 11:33:21,294 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 58 transitions. [2019-02-15 11:33:21,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:33:21,294 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:33:21,294 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:33:21,295 INFO L423 AbstractCegarLoop]: === Iteration 14 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:33:21,295 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:33:21,295 INFO L82 PathProgramCache]: Analyzing trace with hash 942950, now seen corresponding path program 1 times [2019-02-15 11:33:21,295 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:33:21,296 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:21,296 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-15 11:33:21,296 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:21,296 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:33:21,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:33:21,359 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:33:21,359 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:33:21,360 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:33:21,360 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:33:21,360 INFO L207 CegarAbsIntRunner]: [0], [6], [20], [23] [2019-02-15 11:33:21,361 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:33:21,361 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:33:36,756 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:33:36,756 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-02-15 11:33:36,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:33:36,756 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:33:37,184 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:33:44,341 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:33:44,341 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:33:44,342 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:33:44,342 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [3] total 4 [2019-02-15 11:33:44,342 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:33:44,342 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-02-15 11:33:44,342 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-02-15 11:33:44,342 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:33:44,343 INFO L87 Difference]: Start difference. First operand 24 states and 58 transitions. Second operand 3 states. [2019-02-15 11:33:59,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:33:59,579 INFO L93 Difference]: Finished difference Result 27 states and 71 transitions. [2019-02-15 11:33:59,579 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-02-15 11:33:59,579 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-02-15 11:33:59,580 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:33:59,580 INFO L225 Difference]: With dead ends: 27 [2019-02-15 11:33:59,580 INFO L226 Difference]: Without dead ends: 26 [2019-02-15 11:33:59,580 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 2 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 7.1s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:33:59,581 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2019-02-15 11:33:59,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2019-02-15 11:33:59,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:33:59,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 64 transitions. [2019-02-15 11:33:59,601 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 64 transitions. Word has length 4 [2019-02-15 11:33:59,601 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:33:59,602 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 64 transitions. [2019-02-15 11:33:59,602 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-02-15 11:33:59,602 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 64 transitions. [2019-02-15 11:33:59,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:33:59,602 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:33:59,602 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:33:59,602 INFO L423 AbstractCegarLoop]: === Iteration 15 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:33:59,602 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:33:59,603 INFO L82 PathProgramCache]: Analyzing trace with hash 943074, now seen corresponding path program 1 times [2019-02-15 11:33:59,603 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:33:59,603 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:59,604 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:33:59,604 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:33:59,604 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:33:59,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:33:59,732 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:33:59,732 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:33:59,732 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:33:59,732 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:33:59,733 INFO L207 CegarAbsIntRunner]: [0], [10], [20], [23] [2019-02-15 11:33:59,733 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:33:59,734 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:34:18,017 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:34:18,018 INFO L272 AbstractInterpreter]: Visited 4 different actions 31 times. Merged at 2 different actions 9 times. Widened at 2 different actions 5 times. Found 11 fixpoints after 2 different actions. Largest state had 0 variables. [2019-02-15 11:34:18,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:34:18,018 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:34:18,607 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:34:26,414 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1049 Int) (v_idx_1047 Int) (v_idx_1045 Int) (v_idx_1053 Int) (v_idx_1042 Int) (v_idx_1051 Int) (v_idx_1039 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse10 (+ c_ULTIMATE.start_main_p3 1)) (.cse11 (+ c_ULTIMATE.start_main_p1 4)) (.cse12 (+ c_ULTIMATE.start_main_p2 3)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse13 (+ c_ULTIMATE.start_main_p3 2)) (.cse14 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse0 v_idx_1051) (= (select |c_#memory_int| v_idx_1051) 0) (< v_idx_1051 c_ULTIMATE.start_main_p4)) (or (<= .cse1 v_idx_1042) (< v_idx_1042 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_1042) 1)) (let ((.cse7 (select |c_#memory_int| v_idx_1053))) (let ((.cse4 (< v_idx_1053 c_ULTIMATE.start_main_p5)) (.cse5 (<= .cse1 v_idx_1053)) (.cse8 (<= 0 (* 2 .cse7))) (.cse9 (<= 0 .cse7))) (let ((.cse3 (or .cse4 .cse5 (and .cse8 .cse9)))) (or (and (<= .cse2 v_idx_1047) .cse3) (let ((.cse6 (select |c_#memory_int| v_idx_1047))) (and (or .cse4 .cse5 (and (<= .cse6 .cse7) .cse8 .cse9)) (<= .cse6 0) (<= (* 2 .cse6) 0))) (and (< v_idx_1047 c_ULTIMATE.start_main_p2) .cse3))))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (< v_idx_1049 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_1049) 0) (<= .cse10 v_idx_1049)) (<= .cse11 c_ULTIMATE.start_main_p5) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (<= .cse14 c_ULTIMATE.start_main_p2) (or (< v_idx_1039 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1039)) (<= .cse1 v_idx_1039)) (<= .cse13 c_ULTIMATE.start_main_p5) (or (<= .cse14 v_idx_1045) (< v_idx_1045 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_1045))) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:34:26,447 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:34:26,447 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:34:26,447 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:34:26,447 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [3] total 5 [2019-02-15 11:34:26,447 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:34:26,448 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-02-15 11:34:26,448 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-02-15 11:34:26,448 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=4, Unknown=1, NotChecked=2, Total=12 [2019-02-15 11:34:26,448 INFO L87 Difference]: Start difference. First operand 25 states and 64 transitions. Second operand 4 states. [2019-02-15 11:34:29,158 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_1005 Int) (v_idx_1015 Int) (v_idx_1013 Int) (v_idx_1011 Int) (v_idx_1019 Int) (v_idx_1008 Int) (v_idx_1017 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (or (= 1 (select |c_#valid| v_idx_1008)) (<= .cse0 v_idx_1008) (< v_idx_1008 c_ULTIMATE.start_main_p5)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_1015)) (<= .cse2 v_idx_1015) (< v_idx_1015 c_ULTIMATE.start_main_p3)) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (or (<= .cse5 v_idx_1011) (< v_idx_1011 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_1011))) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (let ((.cse11 (select |c_#memory_int| v_idx_1019))) (let ((.cse9 (<= .cse0 v_idx_1019)) (.cse10 (< v_idx_1019 c_ULTIMATE.start_main_p5)) (.cse12 (<= 0 (* 2 .cse11))) (.cse13 (<= 0 .cse11))) (let ((.cse7 (or .cse9 .cse10 (and .cse12 .cse13)))) (or (and (<= .cse3 v_idx_1013) .cse7) (and (< v_idx_1013 c_ULTIMATE.start_main_p2) .cse7) (let ((.cse8 (select |c_#memory_int| v_idx_1013))) (and (<= (* 2 .cse8) 0) (<= .cse8 0) (or .cse9 .cse10 (and (<= .cse8 .cse11) .cse12 .cse13)))))))) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (<= .cse0 v_idx_1005) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1005)) (< v_idx_1005 c_ULTIMATE.start_main_p5)) (or (<= .cse1 v_idx_1017) (< v_idx_1017 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1017))) (<= .cse5 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_1049 Int) (v_idx_1047 Int) (v_idx_1045 Int) (v_idx_1053 Int) (v_idx_1042 Int) (v_idx_1051 Int) (v_idx_1039 Int)) (let ((.cse15 (+ c_ULTIMATE.start_main_p4 1)) (.cse17 (+ c_ULTIMATE.start_main_p2 1)) (.cse25 (+ c_ULTIMATE.start_main_p3 1)) (.cse26 (+ c_ULTIMATE.start_main_p1 4)) (.cse27 (+ c_ULTIMATE.start_main_p2 3)) (.cse16 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse28 (+ c_ULTIMATE.start_main_p3 2)) (.cse29 (+ c_ULTIMATE.start_main_p1 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse15 v_idx_1051) (= (select |c_#memory_int| v_idx_1051) 0) (< v_idx_1051 c_ULTIMATE.start_main_p4)) (or (<= .cse16 v_idx_1042) (< v_idx_1042 c_ULTIMATE.start_main_p5) (= (select |c_#valid| v_idx_1042) 1)) (let ((.cse22 (select |c_#memory_int| v_idx_1053))) (let ((.cse19 (< v_idx_1053 c_ULTIMATE.start_main_p5)) (.cse20 (<= .cse16 v_idx_1053)) (.cse23 (<= 0 (* 2 .cse22))) (.cse24 (<= 0 .cse22))) (let ((.cse18 (or .cse19 .cse20 (and .cse23 .cse24)))) (or (and (<= .cse17 v_idx_1047) .cse18) (let ((.cse21 (select |c_#memory_int| v_idx_1047))) (and (or .cse19 .cse20 (and (<= .cse21 .cse22) .cse23 .cse24)) (<= .cse21 0) (<= (* 2 .cse21) 0))) (and (< v_idx_1047 c_ULTIMATE.start_main_p2) .cse18))))) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (< v_idx_1049 c_ULTIMATE.start_main_p3) (= (select |c_#memory_int| v_idx_1049) 0) (<= .cse25 v_idx_1049)) (<= .cse26 c_ULTIMATE.start_main_p5) (<= .cse27 c_ULTIMATE.start_main_p5) (<= .cse25 c_ULTIMATE.start_main_p4) (<= .cse26 c_ULTIMATE.start_malloc_ptr) (<= .cse28 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse27 c_ULTIMATE.start_malloc_ptr) (<= .cse29 c_ULTIMATE.start_main_p2) (or (< v_idx_1039 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1039)) (<= .cse16 v_idx_1039)) (<= .cse28 c_ULTIMATE.start_main_p5) (or (<= .cse29 v_idx_1045) (< v_idx_1045 c_ULTIMATE.start_main_p1) (= 0 (select |c_#memory_int| v_idx_1045))) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:34:55,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:34:55,083 INFO L93 Difference]: Finished difference Result 37 states and 85 transitions. [2019-02-15 11:34:55,083 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:34:55,083 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-02-15 11:34:55,084 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:34:55,084 INFO L225 Difference]: With dead ends: 37 [2019-02-15 11:34:55,084 INFO L226 Difference]: Without dead ends: 23 [2019-02-15 11:34:55,084 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.3s TimeCoverageRelationStatistics Valid=7, Invalid=5, Unknown=2, NotChecked=6, Total=20 [2019-02-15 11:34:55,085 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2019-02-15 11:34:55,113 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 21. [2019-02-15 11:34:55,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2019-02-15 11:34:55,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 58 transitions. [2019-02-15 11:34:55,114 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 58 transitions. Word has length 4 [2019-02-15 11:34:55,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:34:55,114 INFO L480 AbstractCegarLoop]: Abstraction has 21 states and 58 transitions. [2019-02-15 11:34:55,114 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-02-15 11:34:55,115 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 58 transitions. [2019-02-15 11:34:55,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:34:55,115 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:34:55,115 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:34:55,115 INFO L423 AbstractCegarLoop]: === Iteration 16 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:34:55,116 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:34:55,116 INFO L82 PathProgramCache]: Analyzing trace with hash 943198, now seen corresponding path program 1 times [2019-02-15 11:34:55,116 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:34:55,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:34:55,116 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:34:55,117 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:34:55,117 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:34:55,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:34:55,202 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:34:55,202 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:34:55,202 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:34:55,203 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:34:55,203 INFO L207 CegarAbsIntRunner]: [0], [14], [20], [23] [2019-02-15 11:34:55,204 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:34:55,204 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:35:13,538 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:35:13,539 INFO L272 AbstractInterpreter]: Visited 4 different actions 31 times. Merged at 2 different actions 9 times. Widened at 2 different actions 5 times. Found 11 fixpoints after 2 different actions. Largest state had 0 variables. [2019-02-15 11:35:13,539 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:35:13,539 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:35:13,971 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:35:20,001 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:35:20,001 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:35:20,001 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:35:20,001 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [3] total 4 [2019-02-15 11:35:20,001 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:35:20,001 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-02-15 11:35:20,001 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-02-15 11:35:20,002 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:35:20,002 INFO L87 Difference]: Start difference. First operand 21 states and 58 transitions. Second operand 3 states. [2019-02-15 11:35:40,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:35:40,726 INFO L93 Difference]: Finished difference Result 32 states and 78 transitions. [2019-02-15 11:35:40,726 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-02-15 11:35:40,726 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 4 [2019-02-15 11:35:40,727 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:35:40,727 INFO L225 Difference]: With dead ends: 32 [2019-02-15 11:35:40,727 INFO L226 Difference]: Without dead ends: 23 [2019-02-15 11:35:40,727 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 0 SyntacticMatches, 2 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 6.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-15 11:35:40,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2019-02-15 11:35:40,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 22. [2019-02-15 11:35:40,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 22 states. [2019-02-15 11:35:40,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 63 transitions. [2019-02-15 11:35:40,754 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 63 transitions. Word has length 4 [2019-02-15 11:35:40,754 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:35:40,754 INFO L480 AbstractCegarLoop]: Abstraction has 22 states and 63 transitions. [2019-02-15 11:35:40,754 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-02-15 11:35:40,754 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 63 transitions. [2019-02-15 11:35:40,755 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:35:40,755 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:35:40,755 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:35:40,755 INFO L423 AbstractCegarLoop]: === Iteration 17 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:35:40,755 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:35:40,756 INFO L82 PathProgramCache]: Analyzing trace with hash 929868, now seen corresponding path program 2 times [2019-02-15 11:35:40,756 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:35:40,756 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:35:40,757 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:35:40,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:35:40,757 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:35:40,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:35:40,826 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:35:40,826 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:35:40,826 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:35:40,826 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-15 11:35:40,826 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-15 11:35:40,826 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:35:40,826 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-02-15 11:35:40,838 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-15 11:35:40,839 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-15 11:35:40,869 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2019-02-15 11:35:40,869 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-15 11:35:40,870 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-02-15 11:35:40,887 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-02-15 11:35:40,909 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,910 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-02-15 11:35:40,919 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,920 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,921 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-02-15 11:35:40,924 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,925 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,926 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,927 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-02-15 11:35:40,931 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,932 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,933 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,935 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:40,936 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 66 [2019-02-15 11:35:40,937 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-02-15 11:35:40,963 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:35:40,979 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:35:40,991 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:35:41,001 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:35:41,020 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:35:41,021 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 4 variables, input treesize:31, output treesize:38 [2019-02-15 11:35:41,040 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,042 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,043 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,044 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,046 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,047 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,049 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,050 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,051 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,053 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,054 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,055 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-02-15 11:35:41,056 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:35:41,098 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:35:41,099 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:48, output treesize:38 [2019-02-15 11:35:41,142 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,143 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,144 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,144 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,145 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,146 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,147 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,148 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,149 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,151 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,152 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,153 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,154 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:35:41,155 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 13 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 78 [2019-02-15 11:35:41,156 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:35:41,259 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-02-15 11:35:41,259 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:48, output treesize:38 [2019-02-15 11:35:41,278 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:35:41,279 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-02-15 11:35:41,298 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:35:41,317 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-15 11:35:41,317 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 8 [2019-02-15 11:35:41,317 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-15 11:35:41,318 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-02-15 11:35:41,318 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-02-15 11:35:41,318 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=51, Unknown=0, NotChecked=0, Total=90 [2019-02-15 11:35:41,318 INFO L87 Difference]: Start difference. First operand 22 states and 63 transitions. Second operand 8 states. [2019-02-15 11:35:41,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:35:41,773 INFO L93 Difference]: Finished difference Result 60 states and 123 transitions. [2019-02-15 11:35:41,773 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-02-15 11:35:41,774 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-02-15 11:35:41,774 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:35:41,774 INFO L225 Difference]: With dead ends: 60 [2019-02-15 11:35:41,774 INFO L226 Difference]: Without dead ends: 58 [2019-02-15 11:35:41,775 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=64, Unknown=0, NotChecked=0, Total=110 [2019-02-15 11:35:41,775 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2019-02-15 11:35:41,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 24. [2019-02-15 11:35:41,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 24 states. [2019-02-15 11:35:41,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 71 transitions. [2019-02-15 11:35:41,804 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 71 transitions. Word has length 4 [2019-02-15 11:35:41,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:35:41,805 INFO L480 AbstractCegarLoop]: Abstraction has 24 states and 71 transitions. [2019-02-15 11:35:41,805 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-02-15 11:35:41,805 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 71 transitions. [2019-02-15 11:35:41,805 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:35:41,805 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:35:41,806 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:35:41,806 INFO L423 AbstractCegarLoop]: === Iteration 18 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:35:41,806 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:35:41,806 INFO L82 PathProgramCache]: Analyzing trace with hash 930056, now seen corresponding path program 1 times [2019-02-15 11:35:41,806 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:35:41,807 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:35:41,807 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-15 11:35:41,807 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:35:41,807 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:35:41,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:35:41,845 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:35:41,845 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:35:41,845 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:35:41,845 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:35:41,845 INFO L207 CegarAbsIntRunner]: [0], [6], [24], [25] [2019-02-15 11:35:41,847 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:35:41,847 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:35:51,696 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:35:51,696 INFO L272 AbstractInterpreter]: Visited 4 different actions 16 times. Merged at 2 different actions 8 times. Widened at 1 different actions 2 times. Found 1 fixpoints after 1 different actions. Largest state had 0 variables. [2019-02-15 11:35:51,697 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:35:51,697 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:35:52,123 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:35:54,764 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1223 Int) (v_idx_1212 Int) (v_idx_1221 Int) (v_idx_1209 Int) (v_idx_1219 Int) (v_idx_1217 Int) (v_idx_1215 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse3 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1221 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_1221) 0) (<= .cse0 v_idx_1221)) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_1217)) (<= .cse1 v_idx_1217) (< v_idx_1217 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_1223) (< v_idx_1223 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_1223) 0)) (or (= 1 (select |c_#valid| v_idx_1212)) (<= .cse2 v_idx_1212) (< v_idx_1212 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse3 v_idx_1215) (let ((.cse4 (select |c_#memory_int| v_idx_1215))) (and (<= 0 .cse4) (<= 0 (* 2 .cse4)))) (< v_idx_1215 c_ULTIMATE.start_main_p1)) (or (< v_idx_1209 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_1209) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1209))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_1219)) (<= .cse7 v_idx_1219) (< v_idx_1219 c_ULTIMATE.start_main_p3)) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse3 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:35:57,414 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1236 Int) (v_idx_1234 Int) (v_idx_1232 Int) (v_idx_1240 Int) (v_idx_1229 Int) (v_idx_1238 Int) (v_idx_1226 Int)) (let ((.cse0 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse1 (+ c_ULTIMATE.start_main_p2 1)) (.cse3 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_main_p4 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse7 (+ c_ULTIMATE.start_main_p1 1))) (and (or (= 1 (select |c_#valid| v_idx_1229)) (< v_idx_1229 c_ULTIMATE.start_main_p5) (<= .cse0 v_idx_1229)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1234 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_1234)) (<= .cse1 v_idx_1234)) (or (<= .cse0 v_idx_1240) (= (select |c_#memory_int| v_idx_1240) 0) (< v_idx_1240 c_ULTIMATE.start_main_p5)) (<= .cse2 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1226 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1226)) (<= .cse0 v_idx_1226)) (<= .cse2 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_1236)) (< v_idx_1236 c_ULTIMATE.start_main_p3) (<= .cse3 v_idx_1236)) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_1238) 0) (< v_idx_1238 c_ULTIMATE.start_main_p4) (<= .cse2 v_idx_1238)) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (let ((.cse8 (select |c_#memory_int| v_idx_1232))) (and (<= 0 (* 2 .cse8)) (<= 0 .cse8))) (<= .cse7 v_idx_1232) (< v_idx_1232 c_ULTIMATE.start_main_p1))))) is different from false [2019-02-15 11:36:00,058 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1257 Int) (v_idx_1246 Int) (v_idx_1255 Int) (v_idx_1243 Int) (v_idx_1253 Int) (v_idx_1251 Int) (v_idx_1249 Int)) (let ((.cse1 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p1 4)) (.cse3 (+ c_ULTIMATE.start_main_p2 3)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse4 (+ c_ULTIMATE.start_main_p3 1)) (.cse7 (+ c_ULTIMATE.start_main_p1 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse5 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (<= .cse1 v_idx_1251) (= 0 (select |c_#memory_int| v_idx_1251)) (< v_idx_1251 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse2 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p4) (<= .cse2 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1257 c_ULTIMATE.start_main_p5) (<= .cse5 v_idx_1257) (= 0 (select |c_#memory_int| v_idx_1257))) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1255 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1255)) (<= .cse0 v_idx_1255)) (or (<= .cse7 v_idx_1249) (< v_idx_1249 c_ULTIMATE.start_main_p1) (let ((.cse8 (select |c_#memory_int| v_idx_1249))) (and (<= 0 .cse8) (<= 0 (* 2 .cse8))))) (or (= 0 (select |c_#memory_int| v_idx_1253)) (< v_idx_1253 c_ULTIMATE.start_main_p3) (<= .cse4 v_idx_1253)) (or (<= .cse5 v_idx_1246) (= 1 (select |c_#valid| v_idx_1246)) (< v_idx_1246 c_ULTIMATE.start_main_p5)) (<= .cse7 c_ULTIMATE.start_main_p2) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1243) 0) (<= .cse5 v_idx_1243) (< v_idx_1243 c_ULTIMATE.start_main_p5))))) is different from false [2019-02-15 11:36:00,094 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:36:00,094 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:36:00,095 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:36:00,095 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [2] total 5 [2019-02-15 11:36:00,095 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:36:00,095 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:36:00,095 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:36:00,095 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:36:00,095 INFO L87 Difference]: Start difference. First operand 24 states and 71 transitions. Second operand 5 states. [2019-02-15 11:36:02,941 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_1223 Int) (v_idx_1212 Int) (v_idx_1221 Int) (v_idx_1209 Int) (v_idx_1219 Int) (v_idx_1217 Int) (v_idx_1215 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse5 (+ c_ULTIMATE.start_main_p1 4)) (.cse7 (+ c_ULTIMATE.start_main_p3 1)) (.cse6 (+ c_ULTIMATE.start_main_p2 3)) (.cse3 (+ c_ULTIMATE.start_main_p1 1)) (.cse8 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1221 c_ULTIMATE.start_main_p4) (= (select |c_#memory_int| v_idx_1221) 0) (<= .cse0 v_idx_1221)) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_1217)) (<= .cse1 v_idx_1217) (< v_idx_1217 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_1223) (< v_idx_1223 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_1223) 0)) (or (= 1 (select |c_#valid| v_idx_1212)) (<= .cse2 v_idx_1212) (< v_idx_1212 c_ULTIMATE.start_main_p5)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse1 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse3 v_idx_1215) (let ((.cse4 (select |c_#memory_int| v_idx_1215))) (and (<= 0 .cse4) (<= 0 (* 2 .cse4)))) (< v_idx_1215 c_ULTIMATE.start_main_p1)) (or (< v_idx_1209 c_ULTIMATE.start_main_p5) (<= .cse2 v_idx_1209) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1209))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p5) (<= .cse7 c_ULTIMATE.start_main_p4) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (or (= 0 (select |c_#memory_int| v_idx_1219)) (<= .cse7 v_idx_1219) (< v_idx_1219 c_ULTIMATE.start_main_p3)) (<= .cse8 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (<= .cse3 c_ULTIMATE.start_main_p2) (<= .cse8 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_1257 Int) (v_idx_1246 Int) (v_idx_1255 Int) (v_idx_1243 Int) (v_idx_1253 Int) (v_idx_1251 Int) (v_idx_1249 Int)) (let ((.cse10 (+ c_ULTIMATE.start_main_p2 1)) (.cse11 (+ c_ULTIMATE.start_main_p1 4)) (.cse12 (+ c_ULTIMATE.start_main_p2 3)) (.cse9 (+ c_ULTIMATE.start_main_p4 1)) (.cse13 (+ c_ULTIMATE.start_main_p3 1)) (.cse16 (+ c_ULTIMATE.start_main_p1 1)) (.cse15 (+ c_ULTIMATE.start_main_p3 2)) (.cse14 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse9 c_ULTIMATE.start_malloc_ptr) (or (<= .cse10 v_idx_1251) (= 0 (select |c_#memory_int| v_idx_1251)) (< v_idx_1251 c_ULTIMATE.start_main_p2)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse9 c_ULTIMATE.start_main_p5) (<= .cse10 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_main_p5) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1257 c_ULTIMATE.start_main_p5) (<= .cse14 v_idx_1257) (= 0 (select |c_#memory_int| v_idx_1257))) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1255 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1255)) (<= .cse9 v_idx_1255)) (or (<= .cse16 v_idx_1249) (< v_idx_1249 c_ULTIMATE.start_main_p1) (let ((.cse17 (select |c_#memory_int| v_idx_1249))) (and (<= 0 .cse17) (<= 0 (* 2 .cse17))))) (or (= 0 (select |c_#memory_int| v_idx_1253)) (< v_idx_1253 c_ULTIMATE.start_main_p3) (<= .cse13 v_idx_1253)) (or (<= .cse14 v_idx_1246) (= 1 (select |c_#valid| v_idx_1246)) (< v_idx_1246 c_ULTIMATE.start_main_p5)) (<= .cse16 c_ULTIMATE.start_main_p2) (<= .cse15 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1243) 0) (<= .cse14 v_idx_1243) (< v_idx_1243 c_ULTIMATE.start_main_p5))))) (forall ((v_idx_1236 Int) (v_idx_1234 Int) (v_idx_1232 Int) (v_idx_1240 Int) (v_idx_1229 Int) (v_idx_1238 Int) (v_idx_1226 Int)) (let ((.cse18 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse19 (+ c_ULTIMATE.start_main_p2 1)) (.cse21 (+ c_ULTIMATE.start_main_p3 1)) (.cse22 (+ c_ULTIMATE.start_main_p1 4)) (.cse23 (+ c_ULTIMATE.start_main_p2 3)) (.cse20 (+ c_ULTIMATE.start_main_p4 1)) (.cse24 (+ c_ULTIMATE.start_main_p3 2)) (.cse25 (+ c_ULTIMATE.start_main_p1 1))) (and (or (= 1 (select |c_#valid| v_idx_1229)) (< v_idx_1229 c_ULTIMATE.start_main_p5) (<= .cse18 v_idx_1229)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1234 c_ULTIMATE.start_main_p2) (= 0 (select |c_#memory_int| v_idx_1234)) (<= .cse19 v_idx_1234)) (or (<= .cse18 v_idx_1240) (= (select |c_#memory_int| v_idx_1240) 0) (< v_idx_1240 c_ULTIMATE.start_main_p5)) (<= .cse20 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1226 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1226)) (<= .cse18 v_idx_1226)) (<= .cse20 c_ULTIMATE.start_main_p5) (<= .cse19 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_1236)) (< v_idx_1236 c_ULTIMATE.start_main_p3) (<= .cse21 v_idx_1236)) (<= .cse22 c_ULTIMATE.start_main_p5) (<= .cse23 c_ULTIMATE.start_main_p5) (<= .cse21 c_ULTIMATE.start_main_p4) (<= .cse22 c_ULTIMATE.start_malloc_ptr) (<= .cse24 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse23 c_ULTIMATE.start_malloc_ptr) (<= .cse25 c_ULTIMATE.start_main_p2) (or (= (select |c_#memory_int| v_idx_1238) 0) (< v_idx_1238 c_ULTIMATE.start_main_p4) (<= .cse20 v_idx_1238)) (<= .cse24 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (let ((.cse26 (select |c_#memory_int| v_idx_1232))) (and (<= 0 (* 2 .cse26)) (<= 0 .cse26))) (<= .cse25 v_idx_1232) (< v_idx_1232 c_ULTIMATE.start_main_p1)))))) is different from false [2019-02-15 11:36:22,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:36:22,200 INFO L93 Difference]: Finished difference Result 25 states and 71 transitions. [2019-02-15 11:36:22,200 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:36:22,200 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:36:22,200 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:36:22,201 INFO L225 Difference]: With dead ends: 25 [2019-02-15 11:36:22,201 INFO L226 Difference]: Without dead ends: 24 [2019-02-15 11:36:22,201 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.4s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:36:22,201 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2019-02-15 11:36:22,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 23. [2019-02-15 11:36:22,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2019-02-15 11:36:22,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 69 transitions. [2019-02-15 11:36:22,229 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 69 transitions. Word has length 4 [2019-02-15 11:36:22,230 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:36:22,230 INFO L480 AbstractCegarLoop]: Abstraction has 23 states and 69 transitions. [2019-02-15 11:36:22,230 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:36:22,230 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 69 transitions. [2019-02-15 11:36:22,230 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:36:22,230 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:36:22,231 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:36:22,231 INFO L423 AbstractCegarLoop]: === Iteration 19 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:36:22,231 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:36:22,231 INFO L82 PathProgramCache]: Analyzing trace with hash 933712, now seen corresponding path program 2 times [2019-02-15 11:36:22,231 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:36:22,232 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:22,232 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:36:22,232 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:22,232 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:36:22,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:36:22,303 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:22,303 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:36:22,303 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:36:22,303 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-15 11:36:22,303 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-15 11:36:22,303 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:36:22,304 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-02-15 11:36:22,312 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-15 11:36:22,313 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-15 11:36:22,318 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2019-02-15 11:36:22,318 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-15 11:36:22,319 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-02-15 11:36:22,322 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-02-15 11:36:22,326 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,326 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-02-15 11:36:22,331 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,332 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,333 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-02-15 11:36:22,372 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,397 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,426 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,427 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-02-15 11:36:22,453 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,454 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,454 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,455 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,456 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 66 [2019-02-15 11:36:22,456 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,485 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,501 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,513 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,521 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,541 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:22,542 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:31, output treesize:38 [2019-02-15 11:36:22,574 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,575 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,577 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,577 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,578 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,579 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,580 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,581 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,583 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,584 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,585 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,586 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-02-15 11:36:22,587 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,681 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:22,682 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:48, output treesize:38 [2019-02-15 11:36:22,704 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,705 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,705 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,706 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,707 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,709 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,710 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,711 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,713 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,714 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,716 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,717 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:22,718 INFO L683 Elim1Store]: detected equality via solver [2019-02-15 11:36:22,719 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 79 [2019-02-15 11:36:22,719 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:22,812 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:22,813 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:50, output treesize:40 [2019-02-15 11:36:22,838 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:22,838 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-02-15 11:36:22,880 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:22,899 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-15 11:36:22,899 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-02-15 11:36:22,899 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-15 11:36:22,899 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-02-15 11:36:22,899 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-02-15 11:36:22,899 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=67, Unknown=0, NotChecked=0, Total=110 [2019-02-15 11:36:22,900 INFO L87 Difference]: Start difference. First operand 23 states and 69 transitions. Second operand 8 states. [2019-02-15 11:36:23,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:36:23,281 INFO L93 Difference]: Finished difference Result 47 states and 112 transitions. [2019-02-15 11:36:23,282 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-02-15 11:36:23,282 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-02-15 11:36:23,282 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:36:23,283 INFO L225 Difference]: With dead ends: 47 [2019-02-15 11:36:23,283 INFO L226 Difference]: Without dead ends: 46 [2019-02-15 11:36:23,284 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=61, Invalid=95, Unknown=0, NotChecked=0, Total=156 [2019-02-15 11:36:23,284 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2019-02-15 11:36:23,329 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 25. [2019-02-15 11:36:23,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2019-02-15 11:36:23,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 80 transitions. [2019-02-15 11:36:23,329 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 80 transitions. Word has length 4 [2019-02-15 11:36:23,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:36:23,329 INFO L480 AbstractCegarLoop]: Abstraction has 25 states and 80 transitions. [2019-02-15 11:36:23,329 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-02-15 11:36:23,329 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 80 transitions. [2019-02-15 11:36:23,330 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:36:23,330 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:36:23,330 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:36:23,330 INFO L423 AbstractCegarLoop]: === Iteration 20 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:36:23,330 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:36:23,330 INFO L82 PathProgramCache]: Analyzing trace with hash 933774, now seen corresponding path program 2 times [2019-02-15 11:36:23,331 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:36:23,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:23,331 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-15 11:36:23,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:23,331 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:36:23,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:36:23,572 WARN L181 SmtUtils]: Spent 165.00 ms on a formula simplification. DAG size of input: 30 DAG size of output: 17 [2019-02-15 11:36:23,594 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:23,594 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:36:23,594 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:36:23,595 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-15 11:36:23,595 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-15 11:36:23,595 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:36:23,595 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode Z3_IG No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2019-02-15 11:36:23,603 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-15 11:36:23,603 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-15 11:36:23,608 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2019-02-15 11:36:23,609 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-15 11:36:23,610 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2019-02-15 11:36:23,617 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 21 [2019-02-15 11:36:23,619 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,619 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 27 [2019-02-15 11:36:23,622 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,622 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,623 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 37 [2019-02-15 11:36:23,627 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,628 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,629 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,630 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 51 [2019-02-15 11:36:23,634 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,635 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,636 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,637 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,638 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 66 [2019-02-15 11:36:23,639 INFO L267 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,671 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,686 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,698 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,708 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,728 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:23,728 INFO L202 ElimStorePlain]: Needed 6 recursive calls to eliminate 3 variables, input treesize:31, output treesize:38 [2019-02-15 11:36:23,750 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,751 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,752 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,752 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,753 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,754 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,755 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,757 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,758 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,759 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,760 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,761 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 11 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 72 [2019-02-15 11:36:23,762 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,801 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:23,802 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:48, output treesize:38 [2019-02-15 11:36:23,821 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,822 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,822 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,823 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,824 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,826 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,827 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,828 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,830 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,831 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,832 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,834 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,835 INFO L701 Elim1Store]: detected not equals via solver [2019-02-15 11:36:23,836 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 13 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 88 [2019-02-15 11:36:23,837 INFO L267 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-02-15 11:36:23,882 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-1 vars, End of recursive call: 4 dim-0 vars, and 1 xjuncts. [2019-02-15 11:36:23,882 INFO L202 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:50, output treesize:40 [2019-02-15 11:36:23,908 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:23,908 INFO L316 TraceCheckSpWp]: Computing backward predicates... [2019-02-15 11:36:23,931 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:23,949 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-15 11:36:23,949 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2019-02-15 11:36:23,949 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-15 11:36:23,949 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-02-15 11:36:23,949 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-02-15 11:36:23,949 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=66, Unknown=0, NotChecked=0, Total=110 [2019-02-15 11:36:23,950 INFO L87 Difference]: Start difference. First operand 25 states and 80 transitions. Second operand 8 states. [2019-02-15 11:36:24,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:36:24,372 INFO L93 Difference]: Finished difference Result 45 states and 114 transitions. [2019-02-15 11:36:24,373 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-02-15 11:36:24,373 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 4 [2019-02-15 11:36:24,373 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:36:24,374 INFO L225 Difference]: With dead ends: 45 [2019-02-15 11:36:24,374 INFO L226 Difference]: Without dead ends: 44 [2019-02-15 11:36:24,375 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=62, Invalid=94, Unknown=0, NotChecked=0, Total=156 [2019-02-15 11:36:24,375 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2019-02-15 11:36:24,414 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 27. [2019-02-15 11:36:24,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2019-02-15 11:36:24,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 92 transitions. [2019-02-15 11:36:24,414 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 92 transitions. Word has length 4 [2019-02-15 11:36:24,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:36:24,415 INFO L480 AbstractCegarLoop]: Abstraction has 27 states and 92 transitions. [2019-02-15 11:36:24,415 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-02-15 11:36:24,415 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 92 transitions. [2019-02-15 11:36:24,415 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:36:24,415 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:36:24,415 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:36:24,416 INFO L423 AbstractCegarLoop]: === Iteration 21 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:36:24,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:36:24,416 INFO L82 PathProgramCache]: Analyzing trace with hash 933340, now seen corresponding path program 1 times [2019-02-15 11:36:24,416 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:36:24,417 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:24,417 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-15 11:36:24,417 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:36:24,417 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:36:24,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:36:24,492 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:36:24,492 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:36:24,493 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:36:24,493 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:36:24,493 INFO L207 CegarAbsIntRunner]: [0], [6], [10], [23] [2019-02-15 11:36:24,494 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:36:24,494 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:36:40,161 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:36:40,162 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-02-15 11:36:40,162 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:36:40,162 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:36:40,584 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:36:43,307 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1323 Int) (v_idx_1311 Int) (v_idx_1321 Int) (v_idx_1319 Int) (v_idx_1317 Int) (v_idx_1314 Int) (v_idx_1325 Int)) (let ((.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse7 (+ c_ULTIMATE.start_main_p1 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_1314) 1) (< v_idx_1314 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_1314)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse2 v_idx_1321) (= 0 (select |c_#memory_int| v_idx_1321)) (< v_idx_1321 c_ULTIMATE.start_main_p3)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1325 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_1325)) (<= .cse1 v_idx_1325)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_main_p2) (let ((.cse11 (select |c_#memory_int| v_idx_1317))) (let ((.cse13 (< v_idx_1317 c_ULTIMATE.start_main_p1)) (.cse10 (<= 0 .cse11)) (.cse12 (<= 0 (* 2 .cse11))) (.cse14 (<= .cse7 v_idx_1317))) (let ((.cse8 (or .cse13 (and .cse10 .cse12) .cse14))) (or (and .cse8 (<= .cse3 v_idx_1319)) (and .cse8 (< v_idx_1319 c_ULTIMATE.start_main_p2)) (let ((.cse9 (select |c_#memory_int| v_idx_1319))) (and (<= .cse9 0) (<= (* 2 .cse9) 0) (or (and .cse10 (<= .cse9 .cse11) .cse12) .cse13 .cse14))))))) (<= .cse6 c_ULTIMATE.start_main_p5) (or (<= .cse0 v_idx_1323) (< v_idx_1323 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1323))) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1311) 0) (<= .cse1 v_idx_1311) (< v_idx_1311 c_ULTIMATE.start_main_p5))))) is different from false [2019-02-15 11:36:45,757 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1334 Int) (v_idx_1331 Int) (v_idx_1342 Int) (v_idx_1340 Int) (v_idx_1328 Int) (v_idx_1338 Int) (v_idx_1336 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse14 (+ c_ULTIMATE.start_main_p1 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse0 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1331 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_1331) (= 1 (select |c_#valid| v_idx_1331))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_1342) (< v_idx_1342 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_1342) 0)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (or (<= .cse5 v_idx_1338) (= 0 (select |c_#memory_int| v_idx_1338)) (< v_idx_1338 c_ULTIMATE.start_main_p3)) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1328 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_1328) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1328) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (let ((.cse10 (select |c_#memory_int| v_idx_1334))) (let ((.cse7 (<= .cse14 v_idx_1334)) (.cse8 (<= 0 (* 2 .cse10))) (.cse11 (<= 0 .cse10)) (.cse12 (< v_idx_1334 c_ULTIMATE.start_main_p1))) (let ((.cse13 (or .cse7 (and .cse8 .cse11) .cse12))) (or (let ((.cse9 (select |c_#memory_int| v_idx_1336))) (and (or .cse7 (and .cse8 (<= .cse9 .cse10) .cse11) .cse12) (<= (* 2 .cse9) 0) (<= .cse9 0))) (and (< v_idx_1336 c_ULTIMATE.start_main_p2) .cse13) (and (<= .cse2 v_idx_1336) .cse13))))) (<= .cse14 c_ULTIMATE.start_main_p2) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_1340)) (< v_idx_1340 c_ULTIMATE.start_main_p4) (<= .cse0 v_idx_1340))))) is different from false [2019-02-15 11:36:48,290 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1357 Int) (v_idx_1345 Int) (v_idx_1355 Int) (v_idx_1353 Int) (v_idx_1351 Int) (v_idx_1359 Int) (v_idx_1348 Int)) (let ((.cse0 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse1 (+ c_ULTIMATE.start_main_p4 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse13 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (or (<= .cse0 v_idx_1359) (= (select |c_#memory_int| v_idx_1359) 0) (< v_idx_1359 c_ULTIMATE.start_main_p5)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse0 v_idx_1348) (= (select |c_#valid| v_idx_1348) 1) (< v_idx_1348 c_ULTIMATE.start_main_p5)) (<= .cse1 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse0 v_idx_1345) (< v_idx_1345 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1345))) (<= .cse1 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (let ((.cse10 (select |c_#memory_int| v_idx_1351))) (let ((.cse8 (<= 0 .cse10)) (.cse9 (<= 0 (* 2 .cse10))) (.cse11 (<= .cse13 v_idx_1351)) (.cse12 (< v_idx_1351 c_ULTIMATE.start_main_p1))) (let ((.cse6 (or (and .cse8 .cse9) .cse11 .cse12))) (or (and .cse6 (<= .cse2 v_idx_1353)) (let ((.cse7 (select |c_#memory_int| v_idx_1353))) (and (<= .cse7 0) (<= (* 2 .cse7) 0) (or (and .cse8 .cse9 (<= .cse7 .cse10)) .cse11 .cse12))) (and .cse6 (< v_idx_1353 c_ULTIMATE.start_main_p2)))))) (or (< v_idx_1357 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1357)) (<= .cse1 v_idx_1357)) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1355 c_ULTIMATE.start_main_p3) (<= .cse5 v_idx_1355) (= 0 (select |c_#memory_int| v_idx_1355))) (<= .cse13 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:36:48,324 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:36:48,325 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:36:48,325 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:36:48,325 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:36:48,325 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:36:48,325 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:36:48,325 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:36:48,325 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:36:48,326 INFO L87 Difference]: Start difference. First operand 27 states and 92 transitions. Second operand 5 states. [2019-02-15 11:36:51,109 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_1334 Int) (v_idx_1331 Int) (v_idx_1342 Int) (v_idx_1340 Int) (v_idx_1328 Int) (v_idx_1338 Int) (v_idx_1336 Int)) (let ((.cse3 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p3 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse4 (+ c_ULTIMATE.start_main_p2 3)) (.cse2 (+ c_ULTIMATE.start_main_p2 1)) (.cse14 (+ c_ULTIMATE.start_main_p1 1)) (.cse6 (+ c_ULTIMATE.start_main_p3 2)) (.cse0 (+ c_ULTIMATE.start_main_p4 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1331 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_1331) (= 1 (select |c_#valid| v_idx_1331))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse1 v_idx_1342) (< v_idx_1342 c_ULTIMATE.start_main_p5) (= (select |c_#memory_int| v_idx_1342) 0)) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_main_p5) (<= .cse4 c_ULTIMATE.start_main_p5) (<= .cse5 c_ULTIMATE.start_main_p4) (<= .cse3 c_ULTIMATE.start_malloc_ptr) (or (<= .cse5 v_idx_1338) (= 0 (select |c_#memory_int| v_idx_1338)) (< v_idx_1338 c_ULTIMATE.start_main_p3)) (<= .cse6 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1328 c_ULTIMATE.start_main_p5) (<= .cse1 v_idx_1328) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1328) 0)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (let ((.cse10 (select |c_#memory_int| v_idx_1334))) (let ((.cse7 (<= .cse14 v_idx_1334)) (.cse8 (<= 0 (* 2 .cse10))) (.cse11 (<= 0 .cse10)) (.cse12 (< v_idx_1334 c_ULTIMATE.start_main_p1))) (let ((.cse13 (or .cse7 (and .cse8 .cse11) .cse12))) (or (let ((.cse9 (select |c_#memory_int| v_idx_1336))) (and (or .cse7 (and .cse8 (<= .cse9 .cse10) .cse11) .cse12) (<= (* 2 .cse9) 0) (<= .cse9 0))) (and (< v_idx_1336 c_ULTIMATE.start_main_p2) .cse13) (and (<= .cse2 v_idx_1336) .cse13))))) (<= .cse14 c_ULTIMATE.start_main_p2) (<= .cse6 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= 0 (select |c_#memory_int| v_idx_1340)) (< v_idx_1340 c_ULTIMATE.start_main_p4) (<= .cse0 v_idx_1340))))) (forall ((v_idx_1323 Int) (v_idx_1311 Int) (v_idx_1321 Int) (v_idx_1319 Int) (v_idx_1317 Int) (v_idx_1314 Int) (v_idx_1325 Int)) (let ((.cse17 (+ c_ULTIMATE.start_main_p3 1)) (.cse19 (+ c_ULTIMATE.start_main_p1 4)) (.cse20 (+ c_ULTIMATE.start_main_p2 3)) (.cse18 (+ c_ULTIMATE.start_main_p2 1)) (.cse22 (+ c_ULTIMATE.start_main_p1 1)) (.cse21 (+ c_ULTIMATE.start_main_p3 2)) (.cse15 (+ c_ULTIMATE.start_main_p4 1)) (.cse16 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (or (= (select |c_#valid| v_idx_1314) 1) (< v_idx_1314 c_ULTIMATE.start_main_p5) (<= .cse16 v_idx_1314)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse17 v_idx_1321) (= 0 (select |c_#memory_int| v_idx_1321)) (< v_idx_1321 c_ULTIMATE.start_main_p3)) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse18 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse19 c_ULTIMATE.start_main_p5) (<= .cse20 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p4) (<= .cse19 c_ULTIMATE.start_malloc_ptr) (<= .cse21 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1325 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_1325)) (<= .cse16 v_idx_1325)) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse20 c_ULTIMATE.start_malloc_ptr) (<= .cse22 c_ULTIMATE.start_main_p2) (let ((.cse26 (select |c_#memory_int| v_idx_1317))) (let ((.cse28 (< v_idx_1317 c_ULTIMATE.start_main_p1)) (.cse25 (<= 0 .cse26)) (.cse27 (<= 0 (* 2 .cse26))) (.cse29 (<= .cse22 v_idx_1317))) (let ((.cse23 (or .cse28 (and .cse25 .cse27) .cse29))) (or (and .cse23 (<= .cse18 v_idx_1319)) (and .cse23 (< v_idx_1319 c_ULTIMATE.start_main_p2)) (let ((.cse24 (select |c_#memory_int| v_idx_1319))) (and (<= .cse24 0) (<= (* 2 .cse24) 0) (or (and .cse25 (<= .cse24 .cse26) .cse27) .cse28 .cse29))))))) (<= .cse21 c_ULTIMATE.start_main_p5) (or (<= .cse15 v_idx_1323) (< v_idx_1323 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1323))) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1311) 0) (<= .cse16 v_idx_1311) (< v_idx_1311 c_ULTIMATE.start_main_p5))))) (forall ((v_idx_1357 Int) (v_idx_1345 Int) (v_idx_1355 Int) (v_idx_1353 Int) (v_idx_1351 Int) (v_idx_1359 Int) (v_idx_1348 Int)) (let ((.cse30 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse33 (+ c_ULTIMATE.start_main_p1 4)) (.cse32 (+ c_ULTIMATE.start_main_p2 1)) (.cse31 (+ c_ULTIMATE.start_main_p4 1)) (.cse34 (+ c_ULTIMATE.start_main_p2 3)) (.cse35 (+ c_ULTIMATE.start_main_p3 1)) (.cse43 (+ c_ULTIMATE.start_main_p1 1)) (.cse44 (+ c_ULTIMATE.start_main_p3 2))) (and (or (<= .cse30 v_idx_1359) (= (select |c_#memory_int| v_idx_1359) 0) (< v_idx_1359 c_ULTIMATE.start_main_p5)) (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (<= .cse30 v_idx_1348) (= (select |c_#valid| v_idx_1348) 1) (< v_idx_1348 c_ULTIMATE.start_main_p5)) (<= .cse31 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (<= .cse30 v_idx_1345) (< v_idx_1345 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1345))) (<= .cse31 c_ULTIMATE.start_main_p5) (<= .cse32 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_main_p5) (<= .cse34 c_ULTIMATE.start_main_p5) (<= .cse35 c_ULTIMATE.start_main_p4) (<= .cse33 c_ULTIMATE.start_malloc_ptr) (let ((.cse40 (select |c_#memory_int| v_idx_1351))) (let ((.cse38 (<= 0 .cse40)) (.cse39 (<= 0 (* 2 .cse40))) (.cse41 (<= .cse43 v_idx_1351)) (.cse42 (< v_idx_1351 c_ULTIMATE.start_main_p1))) (let ((.cse36 (or (and .cse38 .cse39) .cse41 .cse42))) (or (and .cse36 (<= .cse32 v_idx_1353)) (let ((.cse37 (select |c_#memory_int| v_idx_1353))) (and (<= .cse37 0) (<= (* 2 .cse37) 0) (or (and .cse38 .cse39 (<= .cse37 .cse40)) .cse41 .cse42))) (and .cse36 (< v_idx_1353 c_ULTIMATE.start_main_p2)))))) (or (< v_idx_1357 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1357)) (<= .cse31 v_idx_1357)) (<= .cse44 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse34 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1355 c_ULTIMATE.start_main_p3) (<= .cse35 v_idx_1355) (= 0 (select |c_#memory_int| v_idx_1355))) (<= .cse43 c_ULTIMATE.start_main_p2) (<= .cse44 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4))))) is different from false [2019-02-15 11:37:11,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-15 11:37:11,104 INFO L93 Difference]: Finished difference Result 32 states and 102 transitions. [2019-02-15 11:37:11,104 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-15 11:37:11,104 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 4 [2019-02-15 11:37:11,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-15 11:37:11,105 INFO L225 Difference]: With dead ends: 32 [2019-02-15 11:37:11,105 INFO L226 Difference]: Without dead ends: 30 [2019-02-15 11:37:11,105 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 4 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 10.1s TimeCoverageRelationStatistics Valid=9, Invalid=5, Unknown=4, NotChecked=12, Total=30 [2019-02-15 11:37:11,105 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2019-02-15 11:37:11,142 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2019-02-15 11:37:11,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2019-02-15 11:37:11,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 99 transitions. [2019-02-15 11:37:11,143 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 99 transitions. Word has length 4 [2019-02-15 11:37:11,143 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-15 11:37:11,143 INFO L480 AbstractCegarLoop]: Abstraction has 29 states and 99 transitions. [2019-02-15 11:37:11,143 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-02-15 11:37:11,143 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 99 transitions. [2019-02-15 11:37:11,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-15 11:37:11,143 INFO L394 BasicCegarLoop]: Found error trace [2019-02-15 11:37:11,143 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-15 11:37:11,144 INFO L423 AbstractCegarLoop]: === Iteration 22 === [ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT]=== [2019-02-15 11:37:11,144 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:37:11,144 INFO L82 PathProgramCache]: Analyzing trace with hash 933588, now seen corresponding path program 1 times [2019-02-15 11:37:11,144 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-15 11:37:11,145 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:37:11,145 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-15 11:37:11,145 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-15 11:37:11,145 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-15 11:37:11,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-15 11:37:11,213 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-15 11:37:11,214 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-15 11:37:11,214 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-15 11:37:11,214 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-15 11:37:11,214 INFO L207 CegarAbsIntRunner]: [0], [10], [14], [23] [2019-02-15 11:37:11,215 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-02-15 11:37:11,215 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-15 11:37:27,355 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-02-15 11:37:27,355 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-02-15 11:37:27,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-15 11:37:27,355 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-02-15 11:37:27,804 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-02-15 11:37:30,117 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1423 Int) (v_idx_1421 Int) (v_idx_1419 Int) (v_idx_1427 Int) (v_idx_1416 Int) (v_idx_1425 Int) (v_idx_1413 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse6 (+ c_ULTIMATE.start_main_p3 1)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1413 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1413)) (<= .cse1 v_idx_1413)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1419 c_ULTIMATE.start_main_p1) (<= .cse2 v_idx_1419) (= 0 (select |c_#memory_int| v_idx_1419))) (<= .cse0 c_ULTIMATE.start_main_p5) (or (<= .cse0 v_idx_1425) (< v_idx_1425 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1425))) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_1427)) (<= .cse1 v_idx_1427) (< v_idx_1427 c_ULTIMATE.start_main_p5)) (or (<= .cse1 v_idx_1416) (< v_idx_1416 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_1416))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (let ((.cse10 (select |c_#memory_int| v_idx_1421))) (let ((.cse12 (< v_idx_1421 c_ULTIMATE.start_main_p2)) (.cse9 (<= (* 2 .cse10) 0)) (.cse11 (<= .cse10 0)) (.cse13 (<= .cse3 v_idx_1421))) (let ((.cse14 (or .cse12 (and .cse9 .cse11) .cse13))) (or (let ((.cse8 (select |c_#memory_int| v_idx_1423))) (and (<= 0 .cse8) (<= 0 (* 2 .cse8)) (or (and .cse9 (<= .cse10 .cse8) .cse11) .cse12 .cse13))) (and .cse14 (<= .cse6 v_idx_1423)) (and .cse14 (< v_idx_1423 c_ULTIMATE.start_main_p3)))))) (<= .cse2 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:37:32,682 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1433 Int) (v_idx_1444 Int) (v_idx_1442 Int) (v_idx_1430 Int) (v_idx_1440 Int) (v_idx_1438 Int) (v_idx_1436 Int)) (let ((.cse9 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p3 1)) (.cse12 (+ c_ULTIMATE.start_main_p1 4)) (.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse10 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse13 (+ c_ULTIMATE.start_main_p2 3)) (.cse11 (+ c_ULTIMATE.start_main_p1 1)) (.cse14 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (let ((.cse4 (select |c_#memory_int| v_idx_1438))) (let ((.cse3 (< v_idx_1438 c_ULTIMATE.start_main_p2)) (.cse6 (<= (* 2 .cse4) 0)) (.cse7 (<= .cse4 0)) (.cse8 (<= .cse9 v_idx_1438))) (let ((.cse1 (or .cse3 (and .cse6 .cse7) .cse8))) (or (and .cse1 (<= .cse2 v_idx_1440)) (and .cse1 (< v_idx_1440 c_ULTIMATE.start_main_p3)) (let ((.cse5 (select |c_#memory_int| v_idx_1440))) (and (or .cse3 (and (<= .cse4 .cse5) .cse6 .cse7) .cse8) (<= 0 .cse5) (<= 0 (* 2 .cse5)))))))) (or (= 1 (select |c_#valid| v_idx_1433)) (< v_idx_1433 c_ULTIMATE.start_main_p5) (<= .cse10 v_idx_1433)) (or (< v_idx_1430 c_ULTIMATE.start_main_p5) (<= .cse10 v_idx_1430) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1430))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse9 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse11 v_idx_1436) (= (select |c_#memory_int| v_idx_1436) 0) (< v_idx_1436 c_ULTIMATE.start_main_p1)) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse13 c_ULTIMATE.start_main_p5) (<= .cse2 c_ULTIMATE.start_main_p4) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1442 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1442)) (<= .cse0 v_idx_1442)) (or (= 0 (select |c_#memory_int| v_idx_1444)) (<= .cse10 v_idx_1444) (< v_idx_1444 c_ULTIMATE.start_main_p5)) (<= .cse14 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= .cse11 c_ULTIMATE.start_main_p2) (<= .cse14 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) is different from false [2019-02-15 11:37:35,330 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_idx_1455 Int) (v_idx_1453 Int) (v_idx_1450 Int) (v_idx_1461 Int) (v_idx_1459 Int) (v_idx_1447 Int) (v_idx_1457 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse8 (+ c_ULTIMATE.start_main_p2 1)) (.cse9 (+ c_ULTIMATE.start_main_p3 1)) (.cse11 (+ c_ULTIMATE.start_main_p1 4)) (.cse12 (+ c_ULTIMATE.start_main_p2 3)) (.cse10 (+ c_ULTIMATE.start_main_p1 1)) (.cse13 (+ c_ULTIMATE.start_main_p3 2)) (.cse14 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1459 c_ULTIMATE.start_main_p4) (<= .cse0 v_idx_1459) (= 0 (select |c_#memory_int| v_idx_1459))) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (let ((.cse5 (select |c_#memory_int| v_idx_1457))) (let ((.cse3 (<= 0 (* 2 .cse5))) (.cse6 (<= 0 .cse5)) (.cse1 (<= .cse9 v_idx_1457)) (.cse2 (< v_idx_1457 c_ULTIMATE.start_main_p3))) (let ((.cse7 (or (and .cse3 .cse6) .cse1 .cse2))) (or (let ((.cse4 (select |c_#memory_int| v_idx_1455))) (and (or .cse1 .cse2 (and .cse3 (<= .cse4 .cse5) .cse6)) (<= .cse4 0) (<= (* 2 .cse4) 0))) (and .cse7 (< v_idx_1455 c_ULTIMATE.start_main_p2)) (and .cse7 (<= .cse8 v_idx_1455)))))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1453 c_ULTIMATE.start_main_p1) (<= .cse10 v_idx_1453) (= 0 (select |c_#memory_int| v_idx_1453))) (<= .cse0 c_ULTIMATE.start_main_p5) (<= .cse8 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_main_p5) (<= .cse12 c_ULTIMATE.start_main_p5) (<= .cse9 c_ULTIMATE.start_main_p4) (<= .cse11 c_ULTIMATE.start_malloc_ptr) (<= .cse13 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse12 c_ULTIMATE.start_malloc_ptr) (or (<= .cse14 v_idx_1447) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1447) 0) (< v_idx_1447 c_ULTIMATE.start_main_p5)) (or (< v_idx_1450 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_1450)) (<= .cse14 v_idx_1450)) (<= .cse10 c_ULTIMATE.start_main_p2) (<= .cse13 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_1461 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_1461)) (<= .cse14 v_idx_1461))))) is different from false [2019-02-15 11:37:35,364 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-02-15 11:37:35,364 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-02-15 11:37:35,364 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-02-15 11:37:35,364 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [3] total 6 [2019-02-15 11:37:35,364 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-15 11:37:35,365 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-02-15 11:37:35,365 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-02-15 11:37:35,365 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=4, Unknown=3, NotChecked=6, Total=20 [2019-02-15 11:37:35,365 INFO L87 Difference]: Start difference. First operand 29 states and 99 transitions. Second operand 5 states. [2019-02-15 11:37:38,131 WARN L838 $PredicateComparison]: unable to prove that (and (forall ((v_idx_1423 Int) (v_idx_1421 Int) (v_idx_1419 Int) (v_idx_1427 Int) (v_idx_1416 Int) (v_idx_1425 Int) (v_idx_1413 Int)) (let ((.cse0 (+ c_ULTIMATE.start_main_p4 1)) (.cse1 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse4 (+ c_ULTIMATE.start_main_p1 4)) (.cse5 (+ c_ULTIMATE.start_main_p2 3)) (.cse6 (+ c_ULTIMATE.start_main_p3 1)) (.cse3 (+ c_ULTIMATE.start_main_p2 1)) (.cse2 (+ c_ULTIMATE.start_main_p1 1)) (.cse7 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse0 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1413 c_ULTIMATE.start_main_p5) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1413)) (<= .cse1 v_idx_1413)) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1419 c_ULTIMATE.start_main_p1) (<= .cse2 v_idx_1419) (= 0 (select |c_#memory_int| v_idx_1419))) (<= .cse0 c_ULTIMATE.start_main_p5) (or (<= .cse0 v_idx_1425) (< v_idx_1425 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1425))) (<= .cse3 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_main_p5) (or (= 0 (select |c_#memory_int| v_idx_1427)) (<= .cse1 v_idx_1427) (< v_idx_1427 c_ULTIMATE.start_main_p5)) (or (<= .cse1 v_idx_1416) (< v_idx_1416 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_1416))) (<= .cse5 c_ULTIMATE.start_main_p5) (<= .cse6 c_ULTIMATE.start_main_p4) (<= .cse4 c_ULTIMATE.start_malloc_ptr) (<= .cse7 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse5 c_ULTIMATE.start_malloc_ptr) (let ((.cse10 (select |c_#memory_int| v_idx_1421))) (let ((.cse12 (< v_idx_1421 c_ULTIMATE.start_main_p2)) (.cse9 (<= (* 2 .cse10) 0)) (.cse11 (<= .cse10 0)) (.cse13 (<= .cse3 v_idx_1421))) (let ((.cse14 (or .cse12 (and .cse9 .cse11) .cse13))) (or (let ((.cse8 (select |c_#memory_int| v_idx_1423))) (and (<= 0 .cse8) (<= 0 (* 2 .cse8)) (or (and .cse9 (<= .cse10 .cse8) .cse11) .cse12 .cse13))) (and .cse14 (<= .cse6 v_idx_1423)) (and .cse14 (< v_idx_1423 c_ULTIMATE.start_main_p3)))))) (<= .cse2 c_ULTIMATE.start_main_p2) (<= .cse7 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_1433 Int) (v_idx_1444 Int) (v_idx_1442 Int) (v_idx_1430 Int) (v_idx_1440 Int) (v_idx_1438 Int) (v_idx_1436 Int)) (let ((.cse24 (+ c_ULTIMATE.start_main_p2 1)) (.cse17 (+ c_ULTIMATE.start_main_p3 1)) (.cse27 (+ c_ULTIMATE.start_main_p1 4)) (.cse15 (+ c_ULTIMATE.start_main_p4 1)) (.cse25 (+ c_ULTIMATE.start_malloc_ptr 1)) (.cse28 (+ c_ULTIMATE.start_main_p2 3)) (.cse26 (+ c_ULTIMATE.start_main_p1 1)) (.cse29 (+ c_ULTIMATE.start_main_p3 2))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (<= .cse15 c_ULTIMATE.start_malloc_ptr) (let ((.cse19 (select |c_#memory_int| v_idx_1438))) (let ((.cse18 (< v_idx_1438 c_ULTIMATE.start_main_p2)) (.cse21 (<= (* 2 .cse19) 0)) (.cse22 (<= .cse19 0)) (.cse23 (<= .cse24 v_idx_1438))) (let ((.cse16 (or .cse18 (and .cse21 .cse22) .cse23))) (or (and .cse16 (<= .cse17 v_idx_1440)) (and .cse16 (< v_idx_1440 c_ULTIMATE.start_main_p3)) (let ((.cse20 (select |c_#memory_int| v_idx_1440))) (and (or .cse18 (and (<= .cse19 .cse20) .cse21 .cse22) .cse23) (<= 0 .cse20) (<= 0 (* 2 .cse20)))))))) (or (= 1 (select |c_#valid| v_idx_1433)) (< v_idx_1433 c_ULTIMATE.start_main_p5) (<= .cse25 v_idx_1433)) (or (< v_idx_1430 c_ULTIMATE.start_main_p5) (<= .cse25 v_idx_1430) (= 0 (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1430))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (<= .cse15 c_ULTIMATE.start_main_p5) (<= .cse24 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (or (<= .cse26 v_idx_1436) (= (select |c_#memory_int| v_idx_1436) 0) (< v_idx_1436 c_ULTIMATE.start_main_p1)) (<= .cse27 c_ULTIMATE.start_main_p5) (<= .cse28 c_ULTIMATE.start_main_p5) (<= .cse17 c_ULTIMATE.start_main_p4) (<= .cse27 c_ULTIMATE.start_malloc_ptr) (or (< v_idx_1442 c_ULTIMATE.start_main_p4) (= 0 (select |c_#memory_int| v_idx_1442)) (<= .cse15 v_idx_1442)) (or (= 0 (select |c_#memory_int| v_idx_1444)) (<= .cse25 v_idx_1444) (< v_idx_1444 c_ULTIMATE.start_main_p5)) (<= .cse29 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse28 c_ULTIMATE.start_malloc_ptr) (<= .cse26 c_ULTIMATE.start_main_p2) (<= .cse29 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4)))) (forall ((v_idx_1455 Int) (v_idx_1453 Int) (v_idx_1450 Int) (v_idx_1461 Int) (v_idx_1459 Int) (v_idx_1447 Int) (v_idx_1457 Int)) (let ((.cse30 (+ c_ULTIMATE.start_main_p4 1)) (.cse38 (+ c_ULTIMATE.start_main_p2 1)) (.cse39 (+ c_ULTIMATE.start_main_p3 1)) (.cse41 (+ c_ULTIMATE.start_main_p1 4)) (.cse42 (+ c_ULTIMATE.start_main_p2 3)) (.cse40 (+ c_ULTIMATE.start_main_p1 1)) (.cse43 (+ c_ULTIMATE.start_main_p3 2)) (.cse44 (+ c_ULTIMATE.start_malloc_ptr 1))) (and (<= (+ c_ULTIMATE.start_main_p1 2) c_ULTIMATE.start_main_p3) (or (< v_idx_1459 c_ULTIMATE.start_main_p4) (<= .cse30 v_idx_1459) (= 0 (select |c_#memory_int| v_idx_1459))) (<= .cse30 c_ULTIMATE.start_malloc_ptr) (let ((.cse35 (select |c_#memory_int| v_idx_1457))) (let ((.cse33 (<= 0 (* 2 .cse35))) (.cse36 (<= 0 .cse35)) (.cse31 (<= .cse39 v_idx_1457)) (.cse32 (< v_idx_1457 c_ULTIMATE.start_main_p3))) (let ((.cse37 (or (and .cse33 .cse36) .cse31 .cse32))) (or (let ((.cse34 (select |c_#memory_int| v_idx_1455))) (and (or .cse31 .cse32 (and .cse33 (<= .cse34 .cse35) .cse36)) (<= .cse34 0) (<= (* 2 .cse34) 0))) (and .cse37 (< v_idx_1455 c_ULTIMATE.start_main_p2)) (and .cse37 (<= .cse38 v_idx_1455)))))) (<= c_ULTIMATE.start_malloc_ptr c_ULTIMATE.start_main_p5) (or (< v_idx_1453 c_ULTIMATE.start_main_p1) (<= .cse40 v_idx_1453) (= 0 (select |c_#memory_int| v_idx_1453))) (<= .cse30 c_ULTIMATE.start_main_p5) (<= .cse38 c_ULTIMATE.start_main_p3) (<= (+ c_ULTIMATE.start_main_p2 2) c_ULTIMATE.start_main_p4) (<= .cse41 c_ULTIMATE.start_main_p5) (<= .cse42 c_ULTIMATE.start_main_p5) (<= .cse39 c_ULTIMATE.start_main_p4) (<= .cse41 c_ULTIMATE.start_malloc_ptr) (<= .cse43 c_ULTIMATE.start_malloc_ptr) (<= c_ULTIMATE.start_main_p5 c_ULTIMATE.start_malloc_ptr) (<= .cse42 c_ULTIMATE.start_malloc_ptr) (or (<= .cse44 v_idx_1447) (= (select |c_ULTIMATE.start_malloc_old_#valid| v_idx_1447) 0) (< v_idx_1447 c_ULTIMATE.start_main_p5)) (or (< v_idx_1450 c_ULTIMATE.start_main_p5) (= 1 (select |c_#valid| v_idx_1450)) (<= .cse44 v_idx_1450)) (<= .cse40 c_ULTIMATE.start_main_p2) (<= .cse43 c_ULTIMATE.start_main_p5) (<= (+ c_ULTIMATE.start_main_p1 3) c_ULTIMATE.start_main_p4) (or (< v_idx_1461 c_ULTIMATE.start_main_p5) (= 0 (select |c_#memory_int| v_idx_1461)) (<= .cse44 v_idx_1461)))))) is different from false [2019-02-15 11:37:49,358 WARN L194 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000) stderr output: (error "out of memory") [2019-02-15 11:37:49,359 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-02-15 11:37:49,359 FATAL L265 ToolchainWalker]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:225) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:155) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.managedscript.ManagedScript.checkSat(ManagedScript.java:141) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker.checkValidity(IncrementalHoareTripleChecker.java:666) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker.checkInternal(IncrementalHoareTripleChecker.java:133) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.AbsIntHoareTripleChecker.checkInternal(AbsIntHoareTripleChecker.java:186) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.CachingHoareTripleChecker.checkInternal(CachingHoareTripleChecker.java:98) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton$InternalSuccessorComputationHelper.computeSuccWithSolver(AbstractInterpolantAutomaton.java:359) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.chooseFalseSuccessor2(BasicAbstractInterpolantAutomaton.java:106) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:72) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:234) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.TotalizeNwa.internalSuccessors(TotalizeNwa.java:213) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ComplementDeterministicNwa.internalSuccessors(ComplementDeterministicNwa.java:121) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:216) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:208) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.addInternalsAndSuccessors(NestedWordAutomatonReachableStates.java:1066) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.(NestedWordAutomatonReachableStates.java:968) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates.(NestedWordAutomatonReachableStates.java:188) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.computeDifference(Difference.java:137) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.(Difference.java:90) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.computeAutomataDifference(BasicCegarLoop.java:699) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.refineAbstraction(BasicCegarLoop.java:628) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:472) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:376) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:334) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:126) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:316) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:205) ... 41 more [2019-02-15 11:37:49,366 INFO L168 Benchmark]: Toolchain (without parser) took 773618.91 ms. Allocated memory was 139.5 MB in the beginning and 2.8 GB in the end (delta: 2.6 GB). Free memory was 105.5 MB in the beginning and 1.2 GB in the end (delta: -1.1 GB). Peak memory consumption was 1.6 GB. Max. memory is 7.1 GB. [2019-02-15 11:37:49,367 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.21 ms. Allocated memory is still 139.5 MB. Free memory is still 107.0 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-02-15 11:37:49,368 INFO L168 Benchmark]: Boogie Procedure Inliner took 53.41 ms. Allocated memory is still 139.5 MB. Free memory was 105.5 MB in the beginning and 103.2 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. [2019-02-15 11:37:49,368 INFO L168 Benchmark]: Boogie Preprocessor took 27.87 ms. Allocated memory is still 139.5 MB. Free memory was 103.2 MB in the beginning and 102.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. [2019-02-15 11:37:49,369 INFO L168 Benchmark]: RCFGBuilder took 384.30 ms. Allocated memory is still 139.5 MB. Free memory was 102.0 MB in the beginning and 90.9 MB in the end (delta: 11.1 MB). Peak memory consumption was 11.1 MB. Max. memory is 7.1 GB. [2019-02-15 11:37:49,369 INFO L168 Benchmark]: TraceAbstraction took 773148.44 ms. Allocated memory was 139.5 MB in the beginning and 2.8 GB in the end (delta: 2.6 GB). Free memory was 90.7 MB in the beginning and 1.2 GB in the end (delta: -1.1 GB). Peak memory consumption was 1.6 GB. Max. memory is 7.1 GB. [2019-02-15 11:37:49,379 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.21 ms. Allocated memory is still 139.5 MB. Free memory is still 107.0 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 53.41 ms. Allocated memory is still 139.5 MB. Free memory was 105.5 MB in the beginning and 103.2 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 27.87 ms. Allocated memory is still 139.5 MB. Free memory was 103.2 MB in the beginning and 102.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. * RCFGBuilder took 384.30 ms. Allocated memory is still 139.5 MB. Free memory was 102.0 MB in the beginning and 90.9 MB in the end (delta: 11.1 MB). Peak memory consumption was 11.1 MB. Max. memory is 7.1 GB. * TraceAbstraction took 773148.44 ms. Allocated memory was 139.5 MB in the beginning and 2.8 GB in the end (delta: 2.6 GB). Free memory was 90.7 MB in the beginning and 1.2 GB in the end (delta: -1.1 GB). Peak memory consumption was 1.6 GB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:208) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...