java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -s ../../../trunk/examples/settings/ai/array-bench/reach_32bit_compound_exp_cong.epf -i ../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/Luxembourg-WithArrays.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-a9d37a5-m [2019-02-28 13:05:06,716 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-02-28 13:05:06,718 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-02-28 13:05:06,730 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-02-28 13:05:06,730 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-02-28 13:05:06,732 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-02-28 13:05:06,733 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-02-28 13:05:06,735 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-02-28 13:05:06,737 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-02-28 13:05:06,738 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-02-28 13:05:06,739 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-02-28 13:05:06,739 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-02-28 13:05:06,740 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-02-28 13:05:06,741 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-02-28 13:05:06,743 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-02-28 13:05:06,744 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-02-28 13:05:06,745 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-02-28 13:05:06,747 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-02-28 13:05:06,749 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-02-28 13:05:06,751 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-02-28 13:05:06,752 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-02-28 13:05:06,753 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-02-28 13:05:06,756 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-02-28 13:05:06,756 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-02-28 13:05:06,757 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-02-28 13:05:06,758 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-02-28 13:05:06,759 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-02-28 13:05:06,760 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-02-28 13:05:06,761 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-02-28 13:05:06,762 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-02-28 13:05:06,762 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-02-28 13:05:06,763 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-02-28 13:05:06,763 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-02-28 13:05:06,764 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-02-28 13:05:06,765 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-02-28 13:05:06,766 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-02-28 13:05:06,766 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/array-bench/reach_32bit_compound_exp_cong.epf [2019-02-28 13:05:06,779 INFO L110 SettingsManager]: Loading preferences was successful [2019-02-28 13:05:06,779 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-02-28 13:05:06,780 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-02-28 13:05:06,781 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-02-28 13:05:06,781 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-02-28 13:05:06,781 INFO L133 SettingsManager]: * User list type=DISABLED [2019-02-28 13:05:06,781 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-02-28 13:05:06,782 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-02-28 13:05:06,782 INFO L133 SettingsManager]: * Explicit value domain=true [2019-02-28 13:05:06,782 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-02-28 13:05:06,782 INFO L133 SettingsManager]: * Octagon Domain=false [2019-02-28 13:05:06,782 INFO L133 SettingsManager]: * Abstract domain=CompoundDomain [2019-02-28 13:05:06,783 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-02-28 13:05:06,783 INFO L133 SettingsManager]: * Interval Domain=false [2019-02-28 13:05:06,784 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-02-28 13:05:06,784 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-02-28 13:05:06,784 INFO L133 SettingsManager]: * Use SBE=true [2019-02-28 13:05:06,784 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-02-28 13:05:06,785 INFO L133 SettingsManager]: * sizeof long=4 [2019-02-28 13:05:06,785 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-02-28 13:05:06,785 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-02-28 13:05:06,785 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-02-28 13:05:06,786 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-02-28 13:05:06,786 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-02-28 13:05:06,786 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-02-28 13:05:06,786 INFO L133 SettingsManager]: * sizeof long double=12 [2019-02-28 13:05:06,786 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-02-28 13:05:06,787 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-02-28 13:05:06,787 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-02-28 13:05:06,787 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-02-28 13:05:06,787 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-02-28 13:05:06,788 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:16092 -smt2 -in -t:200000 [2019-02-28 13:05:06,788 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-02-28 13:05:06,788 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-02-28 13:05:06,788 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-02-28 13:05:06,788 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-02-28 13:05:06,789 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-02-28 13:05:06,789 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:16092 -smt2 -in [2019-02-28 13:05:06,789 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-02-28 13:05:06,789 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-02-28 13:05:06,835 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-02-28 13:05:06,849 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-02-28 13:05:06,856 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-02-28 13:05:06,858 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-02-28 13:05:06,858 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-02-28 13:05:06,859 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/Luxembourg-WithArrays.bpl [2019-02-28 13:05:06,859 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/Luxembourg-WithArrays.bpl' [2019-02-28 13:05:06,906 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-02-28 13:05:06,908 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-02-28 13:05:06,909 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-02-28 13:05:06,909 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-02-28 13:05:06,909 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-02-28 13:05:06,928 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,938 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,944 WARN L165 Inliner]: Program contained no entry procedure! [2019-02-28 13:05:06,945 WARN L168 Inliner]: Missing entry procedures: [ULTIMATE.start] [2019-02-28 13:05:06,945 WARN L175 Inliner]: Fallback enabled. All procedures will be processed. [2019-02-28 13:05:06,948 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-02-28 13:05:06,949 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-02-28 13:05:06,949 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-02-28 13:05:06,950 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-02-28 13:05:06,962 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,962 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,963 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,963 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,967 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,973 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,974 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/1) ... [2019-02-28 13:05:06,976 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-02-28 13:05:06,977 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-02-28 13:05:06,977 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-02-28 13:05:06,977 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-02-28 13:05:06,980 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (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:16092 -smt2 -in -t:200000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:16092 -smt2 -in -t:200000 [2019-02-28 13:05:07,054 INFO L124 BoogieDeclarations]: Specification and implementation of procedure main given in one single declaration [2019-02-28 13:05:07,054 INFO L130 BoogieDeclarations]: Found specification of procedure main [2019-02-28 13:05:07,054 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2019-02-28 13:05:07,345 INFO L278 CfgBuilder]: Using library mode [2019-02-28 13:05:07,345 INFO L286 CfgBuilder]: Removed 1 assue(true) statements. [2019-02-28 13:05:07,347 INFO L202 PluginConnector]: Adding new model Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.02 01:05:07 BoogieIcfgContainer [2019-02-28 13:05:07,347 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-02-28 13:05:07,348 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-02-28 13:05:07,348 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-02-28 13:05:07,351 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-02-28 13:05:07,352 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 28.02 01:05:06" (1/2) ... [2019-02-28 13:05:07,353 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@70b5a715 and model type Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.02 01:05:07, skipping insertion in model container [2019-02-28 13:05:07,353 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.02 01:05:07" (2/2) ... [2019-02-28 13:05:07,355 INFO L112 eAbstractionObserver]: Analyzing ICFG Luxembourg-WithArrays.bpl [2019-02-28 13:05:07,364 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-02-28 13:05:07,373 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2019-02-28 13:05:07,388 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2019-02-28 13:05:07,420 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-02-28 13:05:07,421 INFO L383 AbstractCegarLoop]: Hoare is true [2019-02-28 13:05:07,421 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-02-28 13:05:07,421 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-02-28 13:05:07,421 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-02-28 13:05:07,421 INFO L387 AbstractCegarLoop]: Difference is false [2019-02-28 13:05:07,422 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-02-28 13:05:07,422 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-02-28 13:05:07,436 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states. [2019-02-28 13:05:07,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-02-28 13:05:07,443 INFO L394 BasicCegarLoop]: Found error trace [2019-02-28 13:05:07,444 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-02-28 13:05:07,446 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-02-28 13:05:07,452 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-28 13:05:07,453 INFO L82 PathProgramCache]: Analyzing trace with hash 30048, now seen corresponding path program 1 times [2019-02-28 13:05:07,455 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-28 13:05:07,505 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:05:07,505 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-28 13:05:07,505 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:05:07,505 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-28 13:05:07,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:05:07,867 WARN L181 SmtUtils]: Spent 113.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 9 [2019-02-28 13:05:07,897 INFO L273 TraceCheckUtils]: 0: Hoare triple {9#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {11#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} is VALID [2019-02-28 13:05:07,901 INFO L273 TraceCheckUtils]: 1: Hoare triple {11#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} assume a[x] == 1000; {10#false} is VALID [2019-02-28 13:05:07,902 INFO L273 TraceCheckUtils]: 2: Hoare triple {10#false} assume !(a[y] <= 0); {10#false} is VALID [2019-02-28 13:05:07,903 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-28 13:05:07,905 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-02-28 13:05:07,905 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2019-02-28 13:05:07,905 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-02-28 13:05:07,911 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-02-28 13:05:07,912 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-02-28 13:05:07,916 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-02-28 13:05:07,959 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:05:07,959 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-02-28 13:05:07,967 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-02-28 13:05:07,968 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-28 13:05:07,970 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 3 states. [2019-02-28 13:05:08,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:05:08,097 INFO L93 Difference]: Finished difference Result 13 states and 14 transitions. [2019-02-28 13:05:08,098 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-02-28 13:05:08,098 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-02-28 13:05:08,098 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-28 13:05:08,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-02-28 13:05:08,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 14 transitions. [2019-02-28 13:05:08,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-02-28 13:05:08,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 14 transitions. [2019-02-28 13:05:08,108 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 14 transitions. [2019-02-28 13:05:08,150 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:05:08,161 INFO L225 Difference]: With dead ends: 13 [2019-02-28 13:05:08,161 INFO L226 Difference]: Without dead ends: 5 [2019-02-28 13:05:08,165 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-02-28 13:05:08,184 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 5 states. [2019-02-28 13:05:08,233 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 5 to 5. [2019-02-28 13:05:08,234 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-02-28 13:05:08,234 INFO L82 GeneralOperation]: Start isEquivalent. First operand 5 states. Second operand 5 states. [2019-02-28 13:05:08,235 INFO L74 IsIncluded]: Start isIncluded. First operand 5 states. Second operand 5 states. [2019-02-28 13:05:08,235 INFO L87 Difference]: Start difference. First operand 5 states. Second operand 5 states. [2019-02-28 13:05:08,237 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:05:08,237 INFO L93 Difference]: Finished difference Result 5 states and 5 transitions. [2019-02-28 13:05:08,237 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-02-28 13:05:08,238 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:05:08,238 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:05:08,238 INFO L74 IsIncluded]: Start isIncluded. First operand 5 states. Second operand 5 states. [2019-02-28 13:05:08,238 INFO L87 Difference]: Start difference. First operand 5 states. Second operand 5 states. [2019-02-28 13:05:08,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:05:08,240 INFO L93 Difference]: Finished difference Result 5 states and 5 transitions. [2019-02-28 13:05:08,240 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-02-28 13:05:08,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:05:08,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:05:08,241 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-02-28 13:05:08,241 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-02-28 13:05:08,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2019-02-28 13:05:08,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 5 transitions. [2019-02-28 13:05:08,244 INFO L78 Accepts]: Start accepts. Automaton has 5 states and 5 transitions. Word has length 3 [2019-02-28 13:05:08,244 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-28 13:05:08,245 INFO L480 AbstractCegarLoop]: Abstraction has 5 states and 5 transitions. [2019-02-28 13:05:08,245 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-02-28 13:05:08,245 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-02-28 13:05:08,245 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-02-28 13:05:08,246 INFO L394 BasicCegarLoop]: Found error trace [2019-02-28 13:05:08,246 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-02-28 13:05:08,246 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-02-28 13:05:08,247 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-28 13:05:08,247 INFO L82 PathProgramCache]: Analyzing trace with hash 927622, now seen corresponding path program 1 times [2019-02-28 13:05:08,247 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-28 13:05:08,248 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:05:08,248 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-28 13:05:08,248 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:05:08,249 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-28 13:05:08,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:05:08,608 WARN L181 SmtUtils]: Spent 179.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 9 [2019-02-28 13:05:08,736 INFO L273 TraceCheckUtils]: 0: Hoare triple {46#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {48#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} is VALID [2019-02-28 13:05:08,738 INFO L273 TraceCheckUtils]: 1: Hoare triple {48#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {49#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} is VALID [2019-02-28 13:05:08,755 INFO L273 TraceCheckUtils]: 2: Hoare triple {49#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} assume a[x] == 1000; {47#false} is VALID [2019-02-28 13:05:08,756 INFO L273 TraceCheckUtils]: 3: Hoare triple {47#false} assume !(a[y] <= 0); {47#false} is VALID [2019-02-28 13:05:08,756 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-28 13:05:08,756 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:05:08,757 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-28 13:05:08,758 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-02-28 13:05:08,762 INFO L207 CegarAbsIntRunner]: [0], [4], [8], [9] [2019-02-28 13:05:08,795 INFO L148 AbstractInterpreter]: Using domain CompoundDomain [CongruenceDomain, ExplicitValueDomain] [2019-02-28 13:05:08,796 INFO L101 FixpointEngine]: Starting fixpoint engine with domain CompoundDomain (maxUnwinding=3, maxParallelStates=2) [2019-02-28 13:05:08,866 INFO L263 AbstractInterpreter]: Some error location(s) were reachable [2019-02-28 13:05:08,867 INFO L272 AbstractInterpreter]: Visited 4 different actions 4 times. Never merged. Never widened. Performed 14 root evaluator evaluations with a maximum evaluation depth of 2. Performed 14 inverse root evaluator evaluations with a maximum inverse evaluation depth of 2. Found 1 fixpoints after 1 different actions. Largest state had 0 variables. [2019-02-28 13:05:08,871 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-28 13:05:08,873 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: Unknown [2019-02-28 13:05:08,873 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:05:08,873 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-28 13:05:08,884 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-28 13:05:08,884 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: FPandBP) [2019-02-28 13:05:08,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:05:08,901 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 4 conjunts are in the unsatisfiable core [2019-02-28 13:05:08,911 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:05:08,914 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-02-28 13:05:08,978 INFO L442 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 9 treesize of output 12 [2019-02-28 13:05:08,992 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:05:08,994 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2019-02-28 13:05:08,998 INFO L315 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,039 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,109 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,109 INFO L209 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:13, output treesize:14 [2019-02-28 13:05:09,113 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:05:09,113 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_11]. (and (= (store (store v_main_a_11 main_x 0) main_y 1000) main_a) (< main_y main_x)) [2019-02-28 13:05:09,113 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x)) [2019-02-28 13:05:09,225 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:05:09,282 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:05:09,284 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:05:09,318 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:05:09,321 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:05:09,354 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,363 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,373 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:05:09,379 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-02-28 13:05:09,380 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:38, output treesize:14 [2019-02-28 13:06:06,481 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:06:06,482 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_12, main_y]. (let ((.cse1 (select v_main_a_12 main_x))) (and (= (let ((.cse0 (store v_main_a_12 main_x (+ .cse1 1)))) (store .cse0 main_y (+ (select .cse0 main_y) (- 1)))) main_a) (< main_y main_x) (= (select v_main_a_12 main_y) 1000) (= .cse1 0))) [2019-02-28 13:06:06,482 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ [main_y]. (and (= (select main_a main_y) 999) (= (select main_a main_x) 1) (< main_y main_x)) [2019-02-28 13:06:06,583 INFO L273 TraceCheckUtils]: 0: Hoare triple {46#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {53#(and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x))} is VALID [2019-02-28 13:06:06,592 INFO L273 TraceCheckUtils]: 1: Hoare triple {53#(and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {57#(and (exists ((main_y Int)) (and (= (select main_a main_y) 999) (< main_y main_x))) (= (select main_a main_x) 1))} is VALID [2019-02-28 13:06:06,602 INFO L273 TraceCheckUtils]: 2: Hoare triple {57#(and (exists ((main_y Int)) (and (= (select main_a main_y) 999) (< main_y main_x))) (= (select main_a main_x) 1))} assume a[x] == 1000; {47#false} is VALID [2019-02-28 13:06:06,602 INFO L273 TraceCheckUtils]: 3: Hoare triple {47#false} assume !(a[y] <= 0); {47#false} is VALID [2019-02-28 13:06:06,603 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-28 13:06:06,603 INFO L322 TraceCheckSpWp]: Computing backward predicates... [2019-02-28 13:06:06,900 INFO L273 TraceCheckUtils]: 3: Hoare triple {47#false} assume !(a[y] <= 0); {47#false} is VALID [2019-02-28 13:06:06,915 INFO L273 TraceCheckUtils]: 2: Hoare triple {67#(< (select main_a main_x) 1000)} assume a[x] == 1000; {47#false} is VALID [2019-02-28 13:06:06,928 INFO L273 TraceCheckUtils]: 1: Hoare triple {71#(< (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1000)} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {67#(< (select main_a main_x) 1000)} is VALID [2019-02-28 13:06:06,943 INFO L273 TraceCheckUtils]: 0: Hoare triple {46#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {71#(< (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1000)} is VALID [2019-02-28 13:06:06,944 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-28 13:06:06,965 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-28 13:06:06,965 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 7 [2019-02-28 13:06:06,966 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-28 13:06:06,967 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-02-28 13:06:06,967 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-02-28 13:06:06,967 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-02-28 13:06:06,979 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:06:06,980 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-02-28 13:06:06,980 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-02-28 13:06:06,980 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2019-02-28 13:06:06,981 INFO L87 Difference]: Start difference. First operand 5 states and 5 transitions. Second operand 6 states. [2019-02-28 13:06:07,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:06:07,112 INFO L93 Difference]: Finished difference Result 9 states and 10 transitions. [2019-02-28 13:06:07,112 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-02-28 13:06:07,112 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 4 [2019-02-28 13:06:07,113 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-28 13:06:07,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-02-28 13:06:07,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 10 transitions. [2019-02-28 13:06:07,114 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-02-28 13:06:07,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 10 transitions. [2019-02-28 13:06:07,116 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 10 transitions. [2019-02-28 13:06:07,138 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:06:07,139 INFO L225 Difference]: With dead ends: 9 [2019-02-28 13:06:07,139 INFO L226 Difference]: Without dead ends: 7 [2019-02-28 13:06:07,140 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=29, Invalid=43, Unknown=0, NotChecked=0, Total=72 [2019-02-28 13:06:07,141 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 7 states. [2019-02-28 13:06:07,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 7 to 7. [2019-02-28 13:06:07,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-02-28 13:06:07,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 7 states. Second operand 7 states. [2019-02-28 13:06:07,203 INFO L74 IsIncluded]: Start isIncluded. First operand 7 states. Second operand 7 states. [2019-02-28 13:06:07,203 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 7 states. [2019-02-28 13:06:07,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:06:07,205 INFO L93 Difference]: Finished difference Result 7 states and 7 transitions. [2019-02-28 13:06:07,205 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 7 transitions. [2019-02-28 13:06:07,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:06:07,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:06:07,206 INFO L74 IsIncluded]: Start isIncluded. First operand 7 states. Second operand 7 states. [2019-02-28 13:06:07,206 INFO L87 Difference]: Start difference. First operand 7 states. Second operand 7 states. [2019-02-28 13:06:07,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:06:07,207 INFO L93 Difference]: Finished difference Result 7 states and 7 transitions. [2019-02-28 13:06:07,207 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 7 transitions. [2019-02-28 13:06:07,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:06:07,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:06:07,208 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-02-28 13:06:07,208 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-02-28 13:06:07,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-02-28 13:06:07,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 7 transitions. [2019-02-28 13:06:07,209 INFO L78 Accepts]: Start accepts. Automaton has 7 states and 7 transitions. Word has length 4 [2019-02-28 13:06:07,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-28 13:06:07,210 INFO L480 AbstractCegarLoop]: Abstraction has 7 states and 7 transitions. [2019-02-28 13:06:07,210 INFO L481 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-02-28 13:06:07,210 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 7 transitions. [2019-02-28 13:06:07,210 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2019-02-28 13:06:07,210 INFO L394 BasicCegarLoop]: Found error trace [2019-02-28 13:06:07,211 INFO L402 BasicCegarLoop]: trace histogram [3, 1, 1, 1] [2019-02-28 13:06:07,211 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-02-28 13:06:07,211 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-28 13:06:07,211 INFO L82 PathProgramCache]: Analyzing trace with hash 891321030, now seen corresponding path program 2 times [2019-02-28 13:06:07,212 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-28 13:06:07,213 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:06:07,213 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-02-28 13:06:07,213 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:06:07,213 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-28 13:06:07,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:06:07,554 INFO L273 TraceCheckUtils]: 0: Hoare triple {114#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {116#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} is VALID [2019-02-28 13:06:07,562 INFO L273 TraceCheckUtils]: 1: Hoare triple {116#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {117#(and (not (= main_x main_y)) (<= (select main_a main_x) 1))} is VALID [2019-02-28 13:06:07,563 INFO L273 TraceCheckUtils]: 2: Hoare triple {117#(and (not (= main_x main_y)) (<= (select main_a main_x) 1))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {118#(and (not (= (select main_a main_x) 999)) (not (= main_x main_y)))} is VALID [2019-02-28 13:06:07,564 INFO L273 TraceCheckUtils]: 3: Hoare triple {118#(and (not (= (select main_a main_x) 999)) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {119#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} is VALID [2019-02-28 13:06:07,564 INFO L273 TraceCheckUtils]: 4: Hoare triple {119#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} assume a[x] == 1000; {115#false} is VALID [2019-02-28 13:06:07,564 INFO L273 TraceCheckUtils]: 5: Hoare triple {115#false} assume !(a[y] <= 0); {115#false} is VALID [2019-02-28 13:06:07,565 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-28 13:06:07,565 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:06:07,565 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-28 13:06:07,566 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-28 13:06:07,566 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-28 13:06:07,566 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:06:07,566 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-28 13:06:07,576 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2019-02-28 13:06:07,576 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder OUTSIDE_LOOP_FIRST2 (IT: FPandBP) [2019-02-28 13:06:07,582 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2019-02-28 13:06:07,582 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-28 13:06:07,583 WARN L254 TraceCheckSpWp]: Trace formula consists of 10 conjuncts, 6 conjunts are in the unsatisfiable core [2019-02-28 13:06:07,594 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:06:07,594 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-02-28 13:06:07,613 INFO L442 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 9 treesize of output 12 [2019-02-28 13:06:07,666 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:06:07,668 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2019-02-28 13:06:07,671 INFO L315 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,676 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,690 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,690 INFO L209 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:13, output treesize:14 [2019-02-28 13:06:07,697 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:06:07,697 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_14]. (and (< main_y main_x) (= main_a (store (store v_main_a_14 main_x 0) main_y 1000))) [2019-02-28 13:06:07,697 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x)) [2019-02-28 13:06:07,764 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:06:07,794 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:06:07,796 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:06:07,813 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:06:07,815 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:06:07,820 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,827 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,833 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,852 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:06:07,852 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:38, output treesize:14 [2019-02-28 13:09:28,170 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:09:28,170 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_15]. (let ((.cse0 (select v_main_a_15 main_x))) (and (= .cse0 0) (= (select v_main_a_15 main_y) 1000) (< main_y main_x) (= main_a (let ((.cse1 (store v_main_a_15 main_x (+ .cse0 1)))) (store .cse1 main_y (+ (select .cse1 main_y) (- 1))))))) [2019-02-28 13:09:28,170 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_y) 999) (= (select main_a main_x) 1) (< main_y main_x)) [2019-02-28 13:09:28,246 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:09:28,266 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:09:28,269 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:09:28,297 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:09:28,299 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:09:28,302 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:09:28,311 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:09:28,317 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:09:28,325 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:09:28,325 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:38, output treesize:14 [2019-02-28 13:12:48,596 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:12:48,596 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_16]. (let ((.cse0 (select v_main_a_16 main_x))) (and (= .cse0 1) (= (select v_main_a_16 main_y) 999) (< main_y main_x) (= (let ((.cse1 (store v_main_a_16 main_x (+ .cse0 1)))) (store .cse1 main_y (+ (select .cse1 main_y) (- 1)))) main_a))) [2019-02-28 13:12:48,596 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_x) 2) (< main_y main_x) (= (select main_a main_y) 998)) [2019-02-28 13:12:48,667 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:12:48,698 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:12:48,700 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:12:48,710 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:12:48,713 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:12:48,718 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:12:48,723 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:12:48,728 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:12:48,737 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-02-28 13:12:48,738 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 2 variables, input treesize:38, output treesize:14 [2019-02-28 13:14:02,590 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:14:02,590 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_17, main_y]. (let ((.cse1 (select v_main_a_17 main_x))) (and (= main_a (let ((.cse0 (store v_main_a_17 main_x (+ .cse1 1)))) (store .cse0 main_y (+ (select .cse0 main_y) (- 1))))) (= .cse1 2) (< main_y main_x) (= (select v_main_a_17 main_y) 998))) [2019-02-28 13:14:02,591 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ [main_y]. (and (= (select main_a main_y) 997) (< main_y main_x) (= (select main_a main_x) 3)) [2019-02-28 13:14:02,658 INFO L273 TraceCheckUtils]: 0: Hoare triple {114#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {123#(and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x))} is VALID [2019-02-28 13:14:02,659 INFO L273 TraceCheckUtils]: 1: Hoare triple {123#(and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {127#(and (= (select main_a main_y) 999) (= (select main_a main_x) 1) (< main_y main_x))} is VALID [2019-02-28 13:14:02,660 INFO L273 TraceCheckUtils]: 2: Hoare triple {127#(and (= (select main_a main_y) 999) (= (select main_a main_x) 1) (< main_y main_x))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {131#(and (= (select main_a main_x) 2) (< main_y main_x) (= (select main_a main_y) 998))} is VALID [2019-02-28 13:14:02,662 INFO L273 TraceCheckUtils]: 3: Hoare triple {131#(and (= (select main_a main_x) 2) (< main_y main_x) (= (select main_a main_y) 998))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {135#(and (exists ((main_y Int)) (and (= (select main_a main_y) 997) (< main_y main_x))) (= (select main_a main_x) 3))} is VALID [2019-02-28 13:14:02,663 INFO L273 TraceCheckUtils]: 4: Hoare triple {135#(and (exists ((main_y Int)) (and (= (select main_a main_y) 997) (< main_y main_x))) (= (select main_a main_x) 3))} assume a[x] == 1000; {115#false} is VALID [2019-02-28 13:14:02,664 INFO L273 TraceCheckUtils]: 5: Hoare triple {115#false} assume !(a[y] <= 0); {115#false} is VALID [2019-02-28 13:14:02,664 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-28 13:14:02,664 INFO L322 TraceCheckSpWp]: Computing backward predicates... [2019-02-28 13:14:02,779 INFO L273 TraceCheckUtils]: 5: Hoare triple {115#false} assume !(a[y] <= 0); {115#false} is VALID [2019-02-28 13:14:02,780 INFO L273 TraceCheckUtils]: 4: Hoare triple {145#(< (select main_a main_x) 1000)} assume a[x] == 1000; {115#false} is VALID [2019-02-28 13:14:02,781 INFO L273 TraceCheckUtils]: 3: Hoare triple {149#(< (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1000)} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {145#(< (select main_a main_x) 1000)} is VALID [2019-02-28 13:14:02,783 INFO L273 TraceCheckUtils]: 2: Hoare triple {153#(< (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1000)} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {149#(< (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1000)} is VALID [2019-02-28 13:14:02,787 INFO L273 TraceCheckUtils]: 1: Hoare triple {157#(< (select (store (store (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1000)} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {153#(< (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1000)} is VALID [2019-02-28 13:14:02,789 INFO L273 TraceCheckUtils]: 0: Hoare triple {114#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {157#(< (select (store (store (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y (+ (select (store (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x (+ (select (store (store main_a main_x (+ (select main_a main_x) 1)) main_y (+ (select (store main_a main_x (+ (select main_a main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1)) main_y) (- 1))) main_x) 1000)} is VALID [2019-02-28 13:14:02,789 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-28 13:14:02,809 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 3 imperfect interpolant sequences. [2019-02-28 13:14:02,809 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 13 [2019-02-28 13:14:02,809 INFO L250 anRefinementStrategy]: Using the first two imperfect interpolant sequences [2019-02-28 13:14:02,810 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 6 [2019-02-28 13:14:02,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-02-28 13:14:02,810 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2019-02-28 13:14:02,824 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:14:02,824 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2019-02-28 13:14:02,825 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2019-02-28 13:14:02,825 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=113, Unknown=0, NotChecked=0, Total=182 [2019-02-28 13:14:02,825 INFO L87 Difference]: Start difference. First operand 7 states and 7 transitions. Second operand 10 states. [2019-02-28 13:14:03,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:14:03,033 INFO L93 Difference]: Finished difference Result 12 states and 14 transitions. [2019-02-28 13:14:03,033 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-02-28 13:14:03,033 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 6 [2019-02-28 13:14:03,034 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-02-28 13:14:03,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2019-02-28 13:14:03,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 14 transitions. [2019-02-28 13:14:03,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2019-02-28 13:14:03,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 14 transitions. [2019-02-28 13:14:03,037 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 14 transitions. [2019-02-28 13:14:03,063 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-02-28 13:14:03,064 INFO L225 Difference]: With dead ends: 12 [2019-02-28 13:14:03,064 INFO L226 Difference]: Without dead ends: 10 [2019-02-28 13:14:03,065 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=88, Invalid=152, Unknown=0, NotChecked=0, Total=240 [2019-02-28 13:14:03,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 10 states. [2019-02-28 13:14:03,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 10 to 10. [2019-02-28 13:14:03,089 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-02-28 13:14:03,089 INFO L82 GeneralOperation]: Start isEquivalent. First operand 10 states. Second operand 10 states. [2019-02-28 13:14:03,089 INFO L74 IsIncluded]: Start isIncluded. First operand 10 states. Second operand 10 states. [2019-02-28 13:14:03,089 INFO L87 Difference]: Start difference. First operand 10 states. Second operand 10 states. [2019-02-28 13:14:03,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:14:03,091 INFO L93 Difference]: Finished difference Result 10 states and 10 transitions. [2019-02-28 13:14:03,092 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 10 transitions. [2019-02-28 13:14:03,092 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:14:03,092 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:14:03,092 INFO L74 IsIncluded]: Start isIncluded. First operand 10 states. Second operand 10 states. [2019-02-28 13:14:03,093 INFO L87 Difference]: Start difference. First operand 10 states. Second operand 10 states. [2019-02-28 13:14:03,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-02-28 13:14:03,093 INFO L93 Difference]: Finished difference Result 10 states and 10 transitions. [2019-02-28 13:14:03,094 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 10 transitions. [2019-02-28 13:14:03,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-02-28 13:14:03,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-02-28 13:14:03,094 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-02-28 13:14:03,094 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-02-28 13:14:03,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2019-02-28 13:14:03,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 10 transitions. [2019-02-28 13:14:03,095 INFO L78 Accepts]: Start accepts. Automaton has 10 states and 10 transitions. Word has length 6 [2019-02-28 13:14:03,096 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-02-28 13:14:03,096 INFO L480 AbstractCegarLoop]: Abstraction has 10 states and 10 transitions. [2019-02-28 13:14:03,096 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2019-02-28 13:14:03,096 INFO L276 IsEmpty]: Start isEmpty. Operand 10 states and 10 transitions. [2019-02-28 13:14:03,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2019-02-28 13:14:03,096 INFO L394 BasicCegarLoop]: Found error trace [2019-02-28 13:14:03,097 INFO L402 BasicCegarLoop]: trace histogram [6, 1, 1, 1] [2019-02-28 13:14:03,097 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-02-28 13:14:03,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-02-28 13:14:03,097 INFO L82 PathProgramCache]: Analyzing trace with hash 1853141920, now seen corresponding path program 3 times [2019-02-28 13:14:03,097 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-02-28 13:14:03,098 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:14:03,098 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2019-02-28 13:14:03,098 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-02-28 13:14:03,098 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-02-28 13:14:03,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:14:03,493 INFO L273 TraceCheckUtils]: 0: Hoare triple {220#true} assume x > y;a := a[x := 0];a := a[y := 1000]; {222#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} is VALID [2019-02-28 13:14:03,494 INFO L273 TraceCheckUtils]: 1: Hoare triple {222#(and (= (select main_a main_x) 0) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {223#(and (not (= main_x main_y)) (<= (select main_a main_x) 1))} is VALID [2019-02-28 13:14:03,495 INFO L273 TraceCheckUtils]: 2: Hoare triple {223#(and (not (= main_x main_y)) (<= (select main_a main_x) 1))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {224#(and (not (= main_x main_y)) (<= (select main_a main_x) 2))} is VALID [2019-02-28 13:14:03,495 INFO L273 TraceCheckUtils]: 3: Hoare triple {224#(and (not (= main_x main_y)) (<= (select main_a main_x) 2))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {225#(and (not (= main_x main_y)) (<= (select main_a main_x) 3))} is VALID [2019-02-28 13:14:03,496 INFO L273 TraceCheckUtils]: 4: Hoare triple {225#(and (not (= main_x main_y)) (<= (select main_a main_x) 3))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {226#(and (<= (select main_a main_x) 4) (not (= main_x main_y)))} is VALID [2019-02-28 13:14:03,497 INFO L273 TraceCheckUtils]: 5: Hoare triple {226#(and (<= (select main_a main_x) 4) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {227#(and (not (= (select main_a main_x) 999)) (not (= main_x main_y)))} is VALID [2019-02-28 13:14:03,498 INFO L273 TraceCheckUtils]: 6: Hoare triple {227#(and (not (= (select main_a main_x) 999)) (not (= main_x main_y)))} a := a[x := a[x] + 1];a := a[y := a[y] - 1]; {228#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} is VALID [2019-02-28 13:14:03,499 INFO L273 TraceCheckUtils]: 7: Hoare triple {228#(and (not (= (select main_a main_x) 1000)) (not (= main_x main_y)))} assume a[x] == 1000; {221#false} is VALID [2019-02-28 13:14:03,500 INFO L273 TraceCheckUtils]: 8: Hoare triple {221#false} assume !(a[y] <= 0); {221#false} is VALID [2019-02-28 13:14:03,501 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-02-28 13:14:03,501 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:14:03,501 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-02-28 13:14:03,501 INFO L189 CegarAbsIntRunner]: Skipping current iteration for AI because we have already analyzed this path program [2019-02-28 13:14:03,502 INFO L422 seRefinementStrategy]: Interpolation failed due to KNOWN_IGNORE: AbsInt can only provide a hoare triple checker if it generated fixpoints [2019-02-28 13:14:03,502 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-02-28 13:14:03,502 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-28 13:14:03,516 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2019-02-28 13:14:03,516 INFO L289 anRefinementStrategy]: Using traceCheck mode Z3_IG with AssertCodeBlockOrder TERMS_WITH_SMALL_CONSTANTS_FIRST (IT: FPandBP) [2019-02-28 13:14:03,521 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2019-02-28 13:14:03,521 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2019-02-28 13:14:03,522 WARN L254 TraceCheckSpWp]: Trace formula consists of 13 conjuncts, 9 conjunts are in the unsatisfiable core [2019-02-28 13:14:03,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-02-28 13:14:03,531 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-02-28 13:14:03,544 INFO L442 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 9 treesize of output 12 [2019-02-28 13:14:03,557 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:14:03,558 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 11 [2019-02-28 13:14:03,562 INFO L315 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,569 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,575 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,576 INFO L209 ElimStorePlain]: Needed 3 recursive calls to eliminate 1 variables, input treesize:13, output treesize:14 [2019-02-28 13:14:03,579 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:14:03,579 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_21]. (and (= (store (store v_main_a_21 main_x 0) main_y 1000) main_a) (< main_y main_x)) [2019-02-28 13:14:03,579 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_x) 0) (= (select main_a main_y) 1000) (< main_y main_x)) [2019-02-28 13:14:03,634 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:14:03,644 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:14:03,646 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:14:03,658 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:14:03,660 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:14:03,662 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,707 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,731 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,738 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:14:03,739 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:38, output treesize:14 [2019-02-28 13:17:23,846 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:17:23,846 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_22]. (let ((.cse0 (select v_main_a_22 main_x))) (and (= 1000 (select v_main_a_22 main_y)) (= 0 .cse0) (= main_a (let ((.cse1 (store v_main_a_22 main_x (+ .cse0 1)))) (store .cse1 main_y (+ (select .cse1 main_y) (- 1))))) (< main_y main_x))) [2019-02-28 13:17:23,846 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_y) 999) (= (select main_a main_x) 1) (< main_y main_x)) [2019-02-28 13:17:23,917 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:17:23,935 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:17:23,937 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:17:23,958 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:17:23,960 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:17:23,967 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:17:23,975 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:17:23,981 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:17:23,990 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:17:23,991 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:38, output treesize:14 [2019-02-28 13:19:06,474 WARN L397 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-02-28 13:19:06,474 WARN L398 uantifierElimination]: Input elimination task: ∃ [v_main_a_23]. (let ((.cse1 (select v_main_a_23 main_x))) (and (= (let ((.cse0 (store v_main_a_23 main_x (+ .cse1 1)))) (store .cse0 main_y (+ (select .cse0 main_y) (- 1)))) main_a) (= 1 .cse1) (< main_y main_x) (= 999 (select v_main_a_23 main_y)))) [2019-02-28 13:19:06,475 WARN L399 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select main_a main_x) 2) (< main_y main_x) (= (select main_a main_y) 998)) [2019-02-28 13:19:06,545 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:19:06,554 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:19:06,557 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 26 [2019-02-28 13:19:06,564 INFO L187 IndexEqualityManager]: detected not equals via solver [2019-02-28 13:19:06,565 INFO L442 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 16 [2019-02-28 13:19:06,568 INFO L315 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-02-28 13:19:06,576 INFO L315 ElimStorePlain]: Start of recursive call 3: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:19:06,582 INFO L315 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:19:06,589 INFO L315 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-02-28 13:19:06,589 INFO L209 ElimStorePlain]: Needed 4 recursive calls to eliminate 1 variables, input treesize:38, output treesize:14