java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -s ../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf -i ../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/Luxembourg-WithArrays.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-fa1c628-m [2019-01-31 15:07:57,629 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-01-31 15:07:57,636 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-01-31 15:07:57,650 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-01-31 15:07:57,650 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-01-31 15:07:57,652 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-01-31 15:07:57,654 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-01-31 15:07:57,658 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-01-31 15:07:57,661 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-01-31 15:07:57,661 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-01-31 15:07:57,669 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-01-31 15:07:57,669 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-01-31 15:07:57,670 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-01-31 15:07:57,671 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-01-31 15:07:57,673 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-01-31 15:07:57,673 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-01-31 15:07:57,675 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-01-31 15:07:57,676 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-01-31 15:07:57,678 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-01-31 15:07:57,680 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-01-31 15:07:57,681 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-01-31 15:07:57,682 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-01-31 15:07:57,684 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-01-31 15:07:57,684 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-01-31 15:07:57,684 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-01-31 15:07:57,687 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-01-31 15:07:57,688 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-01-31 15:07:57,689 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-01-31 15:07:57,690 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-01-31 15:07:57,693 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-01-31 15:07:57,693 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-01-31 15:07:57,697 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-01-31 15:07:57,697 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-01-31 15:07:57,697 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-01-31 15:07:57,698 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-01-31 15:07:57,698 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2019-01-31 15:07:57,699 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/array-bench/reach_32bit_array_oct.epf [2019-01-31 15:07:57,716 INFO L110 SettingsManager]: Loading preferences was successful [2019-01-31 15:07:57,716 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2019-01-31 15:07:57,717 INFO L131 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2019-01-31 15:07:57,717 INFO L133 SettingsManager]: * Show backtranslation warnings=false [2019-01-31 15:07:57,718 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2019-01-31 15:07:57,718 INFO L133 SettingsManager]: * User list type=DISABLED [2019-01-31 15:07:57,718 INFO L133 SettingsManager]: * Inline calls to unimplemented procedures=true [2019-01-31 15:07:57,718 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2019-01-31 15:07:57,718 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=PoormanAbstractDomain [2019-01-31 15:07:57,719 INFO L133 SettingsManager]: * Underlying domain=OctagonDomain [2019-01-31 15:07:57,719 INFO L133 SettingsManager]: * Abstract domain=ArrayDomain [2019-01-31 15:07:57,719 INFO L133 SettingsManager]: * Check feasibility of abstract posts with an SMT solver=true [2019-01-31 15:07:57,719 INFO L133 SettingsManager]: * Interval Domain=false [2019-01-31 15:07:57,720 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2019-01-31 15:07:57,721 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2019-01-31 15:07:57,721 INFO L133 SettingsManager]: * Use SBE=true [2019-01-31 15:07:57,721 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2019-01-31 15:07:57,721 INFO L133 SettingsManager]: * sizeof long=4 [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * sizeof POINTER=4 [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2019-01-31 15:07:57,722 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2019-01-31 15:07:57,723 INFO L133 SettingsManager]: * sizeof long double=12 [2019-01-31 15:07:57,724 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2019-01-31 15:07:57,724 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2019-01-31 15:07:57,725 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2019-01-31 15:07:57,725 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2019-01-31 15:07:57,725 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2019-01-31 15:07:57,725 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in -t:10000 [2019-01-31 15:07:57,725 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * Trace refinement strategy=TAIPAN [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in [2019-01-31 15:07:57,726 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2019-01-31 15:07:57,727 INFO L133 SettingsManager]: * Abstract interpretation Mode=USE_PREDICATES [2019-01-31 15:07:57,787 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-01-31 15:07:57,802 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-01-31 15:07:57,808 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-01-31 15:07:57,809 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-01-31 15:07:57,810 INFO L276 PluginConnector]: Boogie PL CUP Parser initialized [2019-01-31 15:07:57,811 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-01-31 15:07:57,811 INFO L111 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/Luxembourg-WithArrays.bpl' [2019-01-31 15:07:57,858 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-01-31 15:07:57,860 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-01-31 15:07:57,860 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-01-31 15:07:57,861 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-01-31 15:07:57,861 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2019-01-31 15:07:57,878 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,890 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,896 WARN L165 Inliner]: Program contained no entry procedure! [2019-01-31 15:07:57,896 WARN L168 Inliner]: Missing entry procedures: [ULTIMATE.start] [2019-01-31 15:07:57,896 WARN L175 Inliner]: Fallback enabled. All procedures will be processed. [2019-01-31 15:07:57,899 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-01-31 15:07:57,900 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-01-31 15:07:57,900 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-01-31 15:07:57,901 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2019-01-31 15:07:57,912 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,913 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,913 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,915 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,921 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,929 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,930 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... [2019-01-31 15:07:57,931 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-01-31 15:07:57,931 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-01-31 15:07:57,932 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-01-31 15:07:57,932 INFO L276 PluginConnector]: RCFGBuilder initialized [2019-01-31 15:07:57,933 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:8092 -smt2 -in -t:10000 [2019-01-31 15:07:57,997 INFO L124 BoogieDeclarations]: Specification and implementation of procedure main given in one single declaration [2019-01-31 15:07:57,997 INFO L130 BoogieDeclarations]: Found specification of procedure main [2019-01-31 15:07:57,997 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2019-01-31 15:07:58,249 INFO L278 CfgBuilder]: Using library mode [2019-01-31 15:07:58,249 INFO L286 CfgBuilder]: Removed 1 assue(true) statements. [2019-01-31 15:07:58,250 INFO L202 PluginConnector]: Adding new model Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.01 03:07:58 BoogieIcfgContainer [2019-01-31 15:07:58,251 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-01-31 15:07:58,252 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-01-31 15:07:58,252 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-01-31 15:07:58,255 INFO L276 PluginConnector]: TraceAbstraction initialized [2019-01-31 15:07:58,255 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 31.01 03:07:57" (1/2) ... [2019-01-31 15:07:58,257 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@24af5855 and model type Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 31.01 03:07:58, skipping insertion in model container [2019-01-31 15:07:58,257 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 31.01 03:07:58" (2/2) ... [2019-01-31 15:07:58,258 INFO L112 eAbstractionObserver]: Analyzing ICFG Luxembourg-WithArrays.bpl [2019-01-31 15:07:58,269 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2019-01-31 15:07:58,276 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2019-01-31 15:07:58,294 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2019-01-31 15:07:58,325 INFO L382 AbstractCegarLoop]: Interprodecural is true [2019-01-31 15:07:58,325 INFO L383 AbstractCegarLoop]: Hoare is true [2019-01-31 15:07:58,325 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2019-01-31 15:07:58,325 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-01-31 15:07:58,325 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-01-31 15:07:58,326 INFO L387 AbstractCegarLoop]: Difference is false [2019-01-31 15:07:58,326 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-01-31 15:07:58,326 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-01-31 15:07:58,341 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states. [2019-01-31 15:07:58,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 4 [2019-01-31 15:07:58,347 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:07:58,348 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1] [2019-01-31 15:07:58,351 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:07:58,357 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:07:58,357 INFO L82 PathProgramCache]: Analyzing trace with hash 30048, now seen corresponding path program 1 times [2019-01-31 15:07:58,360 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:07:58,405 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:07:58,405 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:07:58,406 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:07:58,406 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:07:58,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:07:58,787 WARN L181 SmtUtils]: Spent 168.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 9 [2019-01-31 15:07:58,818 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-01-31 15:07:58,824 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-01-31 15:07:58,824 INFO L273 TraceCheckUtils]: 2: Hoare triple {10#false} assume !(a[y] <= 0); {10#false} is VALID [2019-01-31 15:07:58,826 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-31 15:07:58,828 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-01-31 15:07:58,828 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2019-01-31 15:07:58,828 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:07:58,833 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-31 15:07:58,835 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:07:58,838 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2019-01-31 15:07:58,877 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 3 edges. 3 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:07:58,878 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2019-01-31 15:07:58,885 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2019-01-31 15:07:58,886 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:07:58,888 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 3 states. [2019-01-31 15:07:59,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:07:59,045 INFO L93 Difference]: Finished difference Result 13 states and 14 transitions. [2019-01-31 15:07:59,045 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2019-01-31 15:07:59,045 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 3 [2019-01-31 15:07:59,046 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:07:59,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:07:59,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 14 transitions. [2019-01-31 15:07:59,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2019-01-31 15:07:59,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 14 transitions. [2019-01-31 15:07:59,054 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 14 transitions. [2019-01-31 15:07:59,088 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:07:59,099 INFO L225 Difference]: With dead ends: 13 [2019-01-31 15:07:59,099 INFO L226 Difference]: Without dead ends: 5 [2019-01-31 15:07:59,103 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2019-01-31 15:07:59,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 5 states. [2019-01-31 15:07:59,185 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 5 to 5. [2019-01-31 15:07:59,185 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:07:59,186 INFO L82 GeneralOperation]: Start isEquivalent. First operand 5 states. Second operand 5 states. [2019-01-31 15:07:59,187 INFO L74 IsIncluded]: Start isIncluded. First operand 5 states. Second operand 5 states. [2019-01-31 15:07:59,187 INFO L87 Difference]: Start difference. First operand 5 states. Second operand 5 states. [2019-01-31 15:07:59,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:07:59,189 INFO L93 Difference]: Finished difference Result 5 states and 5 transitions. [2019-01-31 15:07:59,189 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-01-31 15:07:59,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:07:59,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:07:59,190 INFO L74 IsIncluded]: Start isIncluded. First operand 5 states. Second operand 5 states. [2019-01-31 15:07:59,191 INFO L87 Difference]: Start difference. First operand 5 states. Second operand 5 states. [2019-01-31 15:07:59,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:07:59,192 INFO L93 Difference]: Finished difference Result 5 states and 5 transitions. [2019-01-31 15:07:59,192 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-01-31 15:07:59,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:07:59,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:07:59,193 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:07:59,193 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:07:59,194 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2019-01-31 15:07:59,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 5 transitions. [2019-01-31 15:07:59,196 INFO L78 Accepts]: Start accepts. Automaton has 5 states and 5 transitions. Word has length 3 [2019-01-31 15:07:59,197 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:07:59,197 INFO L480 AbstractCegarLoop]: Abstraction has 5 states and 5 transitions. [2019-01-31 15:07:59,197 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2019-01-31 15:07:59,197 INFO L276 IsEmpty]: Start isEmpty. Operand 5 states and 5 transitions. [2019-01-31 15:07:59,198 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-01-31 15:07:59,198 INFO L394 BasicCegarLoop]: Found error trace [2019-01-31 15:07:59,198 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-01-31 15:07:59,198 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-01-31 15:07:59,199 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:07:59,199 INFO L82 PathProgramCache]: Analyzing trace with hash 927622, now seen corresponding path program 1 times [2019-01-31 15:07:59,199 INFO L69 tionRefinementEngine]: Using refinement strategy TaipanRefinementStrategy [2019-01-31 15:07:59,200 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:07:59,201 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2019-01-31 15:07:59,201 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2019-01-31 15:07:59,201 INFO L289 anRefinementStrategy]: Using traceCheck mode SMTINTERPOL with AssertCodeBlockOrder NOT_INCREMENTALLY (IT: Craig_TreeInterpolation) [2019-01-31 15:07:59,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-01-31 15:07:59,492 WARN L181 SmtUtils]: Spent 170.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 9 [2019-01-31 15:07:59,617 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-01-31 15:07:59,618 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-01-31 15:07:59,619 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-01-31 15:07:59,619 INFO L273 TraceCheckUtils]: 3: Hoare triple {47#false} assume !(a[y] <= 0); {47#false} is VALID [2019-01-31 15:07:59,620 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-01-31 15:07:59,620 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2019-01-31 15:07:59,620 INFO L193 anRefinementStrategy]: Switched to InterpolantGenerator mode ABSTRACT_INTERPRETATION [2019-01-31 15:07:59,622 INFO L205 CegarAbsIntRunner]: Running AI on error trace of length 5 with the following transitions: [2019-01-31 15:07:59,624 INFO L207 CegarAbsIntRunner]: [0], [4], [8], [9] [2019-01-31 15:07:59,677 INFO L148 AbstractInterpreter]: Using domain ArrayDomain [2019-01-31 15:07:59,677 INFO L101 FixpointEngine]: Starting fixpoint engine with domain ArrayDomain (maxUnwinding=3, maxParallelStates=2) [2019-01-31 15:08:26,308 INFO L266 AbstractInterpreter]: Error location(s) were unreachable [2019-01-31 15:08:26,310 INFO L272 AbstractInterpreter]: Visited 4 different actions 30 times. Merged at 1 different actions 13 times. Widened at 1 different actions 9 times. Found 5 fixpoints after 2 different actions. Largest state had 0 variables. [2019-01-31 15:08:26,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-01-31 15:08:26,315 INFO L403 sIntCurrentIteration]: Generating AbsInt predicates [2019-01-31 15:08:29,592 INFO L227 lantSequenceWeakener]: Weakened 1 states. On average, predicates are now at 33.33% of their original sizes. [2019-01-31 15:08:29,797 INFO L418 sIntCurrentIteration]: Unifying AI predicates [2019-01-31 15:08:30,655 INFO L420 sIntCurrentIteration]: We unified 3 AI predicates to 3 [2019-01-31 15:08:31,986 INFO L429 sIntCurrentIteration]: Finished generation of AbsInt predicates [2019-01-31 15:08:31,987 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2019-01-31 15:08:31,987 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [3] total 5 [2019-01-31 15:08:31,988 INFO L257 anRefinementStrategy]: Using the first perfect interpolant sequence [2019-01-31 15:08:31,990 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-31 15:08:31,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-01-31 15:08:31,991 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2019-01-31 15:08:32,045 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:08:32,045 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-01-31 15:08:32,046 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-01-31 15:08:32,046 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2019-01-31 15:08:32,046 INFO L87 Difference]: Start difference. First operand 5 states and 5 transitions. Second operand 4 states. [2019-01-31 15:08:33,191 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:08:33,192 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:08:33,193 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:08:33,194 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:08:33,194 WARN L224 ngHoareTripleChecker]: Pre: {90#(forall ((v_idx_664 Int) (v_idx_662 Int)) (and (or (and (<= (+ c_main_y 1) v_idx_662) (or (<= (+ c_main_x 1) v_idx_664) (< v_idx_664 c_main_x) (and (<= 0 (select c_main_a v_idx_664)) (<= 0 (* 2 (select c_main_a v_idx_664)))))) (and (< v_idx_662 c_main_y) (or (<= (+ c_main_x 1) v_idx_664) (< v_idx_664 c_main_x) (and (<= 0 (select c_main_a v_idx_664)) (<= 0 (* 2 (select c_main_a v_idx_664)))))) (and (or (and (<= (+ c_main_x 1) v_idx_664) (<= (* 2 (select c_main_a v_idx_662)) 2000) (<= (select c_main_a v_idx_662) 1000)) (and (< v_idx_664 c_main_x) (<= (* 2 (select c_main_a v_idx_662)) 2000) (<= (select c_main_a v_idx_662) 1000)) (and (<= (select c_main_a v_idx_662) (+ (select c_main_a v_idx_664) 1000)) (<= 1000 (+ (select c_main_a v_idx_662) (select c_main_a v_idx_664))) (<= (+ (select c_main_a v_idx_662) (select c_main_a v_idx_664)) 1000) (<= 0 (* 2 (select c_main_a v_idx_664))))) (<= (* 2 (select c_main_a v_idx_662)) 2000))) (<= (+ c_main_y 1) c_main_x) (<= (- (- c_main_x) (- c_main_y)) (- 1))))} [2019-01-31 15:08:33,194 WARN L228 ngHoareTripleChecker]: Action: a := a[x := a[x] + 1];a := a[y := a[y] - 1]; [2019-01-31 15:08:33,197 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (store (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y (+ (select (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y) (- 1))) c_main_a_primed) [2019-01-31 15:08:33,198 WARN L230 ngHoareTripleChecker]: Post: {91#false} [2019-01-31 15:08:33,198 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:08:33,200 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:08:33,200 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:08:36,262 WARN L270 ngHoareTripleChecker]: Pre: {90#(and (forall ((v_idx_664 Int) (v_idx_662 Int)) (or (< v_idx_662 main_y) (<= (+ main_y 1) v_idx_662) (<= 1000 (+ (select main_a v_idx_662) (select main_a v_idx_664))) (<= (* 2 (select main_a v_idx_662)) 2000))) (forall ((v_prenex_123 Int) (v_prenex_122 Int)) (or (<= (+ main_x 1) v_prenex_122) (<= (select main_a v_prenex_123) 1000) (< v_prenex_123 main_y) (<= 0 (select main_a v_prenex_122)) (< v_prenex_122 main_x) (<= (select main_a v_prenex_123) (+ (select main_a v_prenex_122) 1000)))) (forall ((v_prenex_202 Int) (v_prenex_201 Int)) (or (< v_prenex_202 main_y) (<= (+ main_y 1) v_prenex_202) (<= (select main_a v_prenex_202) (+ (select main_a v_prenex_201) 1000)) (<= (* 2 (select main_a v_prenex_202)) 2000))) (or (forall ((v_prenex_74 Int)) (or (< v_prenex_74 main_y) (<= (+ main_y 1) v_prenex_74) (<= (select main_a v_prenex_74) 1000))) (forall ((v_prenex_73 Int)) (or (<= (+ main_x 1) v_prenex_73) (<= 0 (* 2 (select main_a v_prenex_73)))))) (forall ((v_prenex_90 Int) (v_prenex_91 Int)) (or (<= (select main_a v_prenex_91) 1000) (<= (* 2 (select main_a v_prenex_91)) 2000) (<= (+ main_x 1) v_prenex_90) (< v_prenex_90 main_x) (< v_prenex_91 main_y) (<= 0 (select main_a v_prenex_90)) (<= (+ (select main_a v_prenex_91) (select main_a v_prenex_90)) 1000))) (forall ((v_prenex_89 Int) (v_prenex_88 Int)) (or (< v_prenex_88 main_x) (<= (+ main_x 1) v_prenex_88) (<= (+ main_y 1) v_prenex_89) (<= 0 (* 2 (select main_a v_prenex_88))) (<= (+ (select main_a v_prenex_89) (select main_a v_prenex_88)) 1000))) (or (forall ((v_prenex_149 Int)) (or (<= (+ main_y 1) v_prenex_149) (<= (* 2 (select main_a v_prenex_149)) 2000))) (forall ((v_prenex_150 Int)) (or (<= (+ main_x 1) v_prenex_150) (<= 0 (* 2 (select main_a v_prenex_150))) (< v_prenex_150 main_x)))) (forall ((v_prenex_165 Int) (v_prenex_166 Int)) (or (< v_prenex_165 main_x) (<= (select main_a v_prenex_166) (+ (select main_a v_prenex_165) 1000)) (<= (+ main_x 1) v_prenex_165) (<= 0 (select main_a v_prenex_165)))) (or (forall ((v_prenex_47 Int)) (or (< v_prenex_47 main_y) (<= (+ main_y 1) v_prenex_47) (<= (* 2 (select main_a v_prenex_47)) 2000))) (forall ((v_prenex_46 Int)) (or (<= 0 (* 2 (select main_a v_prenex_46))) (<= (+ main_x 1) v_prenex_46)))) (forall ((v_prenex_7 Int) (v_prenex_8 Int)) (or (<= (select main_a v_prenex_8) 1000) (<= (select main_a v_prenex_8) (+ (select main_a v_prenex_7) 1000)) (< v_prenex_8 main_y) (<= (+ main_y 1) v_prenex_8) (< v_prenex_7 main_x))) (forall ((v_prenex_181 Int) (v_prenex_182 Int)) (or (<= (+ main_y 1) v_prenex_182) (<= (* 2 (select main_a v_prenex_182)) 2000) (< v_prenex_182 main_y) (<= (+ (select main_a v_prenex_182) (select main_a v_prenex_181)) 1000))) (or (forall ((v_prenex_10 Int)) (or (<= (select main_a v_prenex_10) 1000) (< v_prenex_10 main_y) (<= (+ main_y 1) v_prenex_10))) (forall ((v_prenex_9 Int)) (<= 0 (* 2 (select main_a v_prenex_9))))) (or (forall ((v_prenex_224 Int)) (or (<= (select main_a v_prenex_224) 1000) (<= (+ main_y 1) v_prenex_224) (<= (* 2 (select main_a v_prenex_224)) 2000))) (forall ((v_prenex_223 Int)) (or (< v_prenex_223 main_x) (<= 0 (select main_a v_prenex_223)) (<= 0 (* 2 (select main_a v_prenex_223))) (<= (+ main_x 1) v_prenex_223)))) (forall ((v_prenex_83 Int) (v_prenex_82 Int)) (or (<= (select main_a v_prenex_83) 1000) (< v_prenex_82 main_x) (<= (select main_a v_prenex_83) (+ (select main_a v_prenex_82) 1000)) (<= (* 2 (select main_a v_prenex_83)) 2000) (<= (+ main_x 1) v_prenex_82) (<= 0 (* 2 (select main_a v_prenex_82))))) (or (forall ((v_prenex_121 Int)) (or (<= (* 2 (select main_a v_prenex_121)) 2000) (<= (+ main_y 1) v_prenex_121))) (forall ((v_prenex_2 Int)) (or (<= 0 (* 2 (select main_a v_prenex_2))) (<= (+ main_x 1) v_prenex_2) (< v_prenex_2 main_x)))) (forall ((v_prenex_72 Int) (v_prenex_71 Int)) (or (< v_prenex_71 main_x) (<= (* 2 (select main_a v_prenex_72)) 2000) (< v_prenex_72 main_y) (<= (+ main_y 1) v_prenex_72) (<= (+ (select main_a v_prenex_72) (select main_a v_prenex_71)) 1000))) (forall ((v_prenex_198 Int) (v_prenex_197 Int)) (or (<= (* 2 (select main_a v_prenex_198)) 2000) (<= (select main_a v_prenex_198) 1000) (<= (+ (select main_a v_prenex_198) (select main_a v_prenex_197)) 1000) (< v_prenex_197 main_x) (<= (+ main_x 1) v_prenex_197) (< v_prenex_198 main_y) (<= 0 (* 2 (select main_a v_prenex_197))))) (forall ((v_prenex_29 Int) (v_prenex_28 Int)) (or (< v_prenex_28 main_x) (<= (select main_a v_prenex_29) (+ (select main_a v_prenex_28) 1000)) (<= 0 (select main_a v_prenex_28)) (<= (+ main_x 1) v_prenex_28) (<= (* 2 (select main_a v_prenex_29)) 2000) (<= (+ main_y 1) v_prenex_29))) (or (forall ((v_prenex_229 Int)) (<= (* 2 (select main_a v_prenex_229)) 2000)) (forall ((v_prenex_228 Int)) (or (<= 0 (select main_a v_prenex_228)) (<= (+ main_x 1) v_prenex_228) (< v_prenex_228 main_x)))) (forall ((v_prenex_33 Int) (v_prenex_32 Int)) (or (<= (+ main_x 1) v_prenex_32) (<= 0 (* 2 (select main_a v_prenex_32))) (<= (* 2 (select main_a v_prenex_33)) 2000) (<= (select main_a v_prenex_33) (+ (select main_a v_prenex_32) 1000)) (<= (+ main_y 1) v_prenex_33) (< v_prenex_32 main_x))) (or (forall ((v_prenex_229 Int)) (<= (* 2 (select main_a v_prenex_229)) 2000)) (forall ((v_prenex_230 Int)) (or (<= 0 (* 2 (select main_a v_prenex_230))) (< v_prenex_230 main_x) (<= (+ main_x 1) v_prenex_230)))) (forall ((v_prenex_163 Int) (v_prenex_164 Int)) (or (<= 1000 (+ (select main_a v_prenex_164) (select main_a v_prenex_163))) (< v_prenex_164 main_y) (<= (+ main_x 1) v_prenex_163) (<= 0 (select main_a v_prenex_163)) (< v_prenex_163 main_x))) (forall ((v_prenex_196 Int) (v_prenex_195 Int)) (or (<= (* 2 (select main_a v_prenex_196)) 2000) (<= (select main_a v_prenex_196) 1000) (<= (select main_a v_prenex_196) (+ (select main_a v_prenex_195) 1000)) (<= (+ main_x 1) v_prenex_195) (< v_prenex_195 main_x) (<= 0 (select main_a v_prenex_195)) (< v_prenex_196 main_y))) (forall ((v_prenex_63 Int) (v_prenex_62 Int)) (or (<= (+ main_x 1) v_prenex_62) (<= (+ main_y 1) v_prenex_63) (<= (* 2 (select main_a v_prenex_63)) 2000) (<= 0 (select main_a v_prenex_62)) (<= (+ (select main_a v_prenex_63) (select main_a v_prenex_62)) 1000) (< v_prenex_62 main_x))) (forall ((v_prenex_25 Int) (v_prenex_24 Int)) (or (<= (+ main_x 1) v_prenex_24) (<= (+ main_y 1) v_prenex_25) (< v_prenex_25 main_y) (<= (* 2 (select main_a v_prenex_25)) 2000) (<= (+ (select main_a v_prenex_25) (select main_a v_prenex_24)) 1000))) (forall ((v_prenex_226 Int) (v_prenex_227 Int)) (or (< v_prenex_227 main_y) (<= (+ main_x 1) v_prenex_226) (<= 0 (* 2 (select main_a v_prenex_226))) (<= (select main_a v_prenex_227) (+ (select main_a v_prenex_226) 1000)) (< v_prenex_226 main_x))) (forall ((v_prenex_220 Int) (v_prenex_219 Int)) (or (<= (select main_a v_prenex_220) (+ (select main_a v_prenex_219) 1000)) (<= (+ main_y 1) v_prenex_220) (<= 0 (select main_a v_prenex_219)) (<= (+ main_x 1) v_prenex_219) (< v_prenex_219 main_x) (<= (* 2 (select main_a v_prenex_220)) 2000) (<= (select main_a v_prenex_220) 1000))) (forall ((v_prenex_222 Int) (v_prenex_221 Int)) (or (<= (+ main_y 1) v_prenex_222) (<= 1000 (+ (select main_a v_prenex_222) (select main_a v_prenex_221))) (<= (select main_a v_prenex_222) 1000) (< v_prenex_222 main_y))) (<= (- (- main_x) (- main_y)) (- 1)) (forall ((v_prenex_38 Int) (v_prenex_39 Int)) (or (<= (+ (select main_a v_prenex_39) (select main_a v_prenex_38)) 1000) (<= 0 (* 2 (select main_a v_prenex_38))) (< v_prenex_39 main_y) (<= (+ main_x 1) v_prenex_38) (<= (* 2 (select main_a v_prenex_39)) 2000) (< v_prenex_38 main_x))) (forall ((v_prenex_69 Int) (v_prenex_68 Int)) (or (< v_prenex_69 main_y) (<= (* 2 (select main_a v_prenex_69)) 2000) (<= (select main_a v_prenex_69) 1000) (<= 1000 (+ (select main_a v_prenex_69) (select main_a v_prenex_68))) (<= (+ main_y 1) v_prenex_69))) (forall ((v_prenex_134 Int) (v_prenex_135 Int)) (or (<= (+ main_y 1) v_prenex_135) (<= 0 (select main_a v_prenex_134)) (< v_prenex_134 main_x) (<= (+ (select main_a v_prenex_135) (select main_a v_prenex_134)) 1000) (<= (+ main_x 1) v_prenex_134))) (or (forall ((v_prenex_180 Int)) (or (<= (+ main_y 1) v_prenex_180) (< v_prenex_180 main_y) (<= (* 2 (select main_a v_prenex_180)) 2000))) (forall ((v_prenex_179 Int)) (or (<= 0 (* 2 (select main_a v_prenex_179))) (< v_prenex_179 main_x)))) (forall ((v_prenex_27 Int) (v_prenex_26 Int)) (or (<= (+ main_x 1) v_prenex_26) (<= (* 2 (select main_a v_prenex_27)) 2000) (<= (select main_a v_prenex_27) 1000) (<= 1000 (+ (select main_a v_prenex_27) (select main_a v_prenex_26))) (< v_prenex_27 main_y) (< v_prenex_26 main_x) (<= 0 (select main_a v_prenex_26)))) (or (forall ((v_prenex_1 Int)) (or (<= 0 (* 2 (select main_a v_prenex_1))) (< v_prenex_1 main_x) (<= (+ main_x 1) v_prenex_1))) (forall ((v_prenex_76 Int)) (or (<= (* 2 (select main_a v_prenex_76)) 2000) (<= (select main_a v_prenex_76) 1000)))) (forall ((v_prenex_112 Int) (v_prenex_113 Int)) (or (<= (+ main_y 1) v_prenex_113) (<= 0 (select main_a v_prenex_112)) (<= 1000 (+ (select main_a v_prenex_113) (select main_a v_prenex_112))) (<= (+ main_x 1) v_prenex_112) (< v_prenex_112 main_x))) (forall ((v_prenex_37 Int) (v_prenex_36 Int)) (or (<= 1000 (+ (select main_a v_prenex_37) (select main_a v_prenex_36))) (< v_prenex_36 main_x) (<= (+ main_x 1) v_prenex_36) (<= 0 (* 2 (select main_a v_prenex_36))))) (forall ((v_prenex_174 Int) (v_prenex_173 Int)) (or (<= (+ main_y 1) v_prenex_174) (< v_prenex_173 main_x) (<= (select main_a v_prenex_174) (+ (select main_a v_prenex_173) 1000)) (<= (+ main_x 1) v_prenex_173) (< v_prenex_174 main_y))) (forall ((v_prenex_96 Int) (v_prenex_97 Int)) (or (<= (+ main_y 1) v_prenex_97) (<= 1000 (+ (select main_a v_prenex_97) (select main_a v_prenex_96))) (<= (* 2 (select main_a v_prenex_97)) 2000) (<= (+ main_x 1) v_prenex_96) (<= 0 (* 2 (select main_a v_prenex_96))) (< v_prenex_96 main_x))) (or (forall ((v_prenex_240 Int)) (or (< v_prenex_240 main_y) (<= (* 2 (select main_a v_prenex_240)) 2000))) (forall ((v_prenex_241 Int)) (or (<= (+ main_x 1) v_prenex_241) (<= 0 (* 2 (select main_a v_prenex_241))) (< v_prenex_241 main_x)))) (forall ((v_prenex_176 Int) (v_prenex_175 Int)) (or (<= (+ (select main_a v_prenex_176) (select main_a v_prenex_175)) 1000) (<= (select main_a v_prenex_176) 1000) (<= (+ main_x 1) v_prenex_175) (< v_prenex_175 main_x) (<= (+ main_y 1) v_prenex_176) (<= 0 (select main_a v_prenex_175)) (<= (* 2 (select main_a v_prenex_176)) 2000))) (forall ((v_prenex_12 Int) (v_prenex_11 Int)) (or (<= 0 (* 2 (select main_a v_prenex_11))) (< v_prenex_11 main_x) (<= (select main_a v_prenex_12) 1000) (<= (+ main_x 1) v_prenex_11) (<= (+ main_y 1) v_prenex_12) (<= 1000 (+ (select main_a v_prenex_12) (select main_a v_prenex_11))))) (forall ((v_prenex_189 Int) (v_prenex_188 Int)) (or (< v_prenex_189 main_y) (<= (+ main_x 1) v_prenex_188) (<= 1000 (+ (select main_a v_prenex_189) (select main_a v_prenex_188))) (<= (+ main_y 1) v_prenex_189) (<= (* 2 (select main_a v_prenex_189)) 2000))) (or (forall ((v_prenex_186 Int)) (or (< v_prenex_186 main_y) (<= (select main_a v_prenex_186) 1000))) (forall ((v_prenex_187 Int)) (or (< v_prenex_187 main_x) (<= (+ main_x 1) v_prenex_187) (<= 0 (* 2 (select main_a v_prenex_187)))))) (or (forall ((v_prenex_156 Int)) (or (<= (* 2 (select main_a v_prenex_156)) 2000) (< v_prenex_156 main_y) (<= (select main_a v_prenex_156) 1000) (<= (+ main_y 1) v_prenex_156))) (forall ((v_prenex_155 Int)) (<= 0 (* 2 (select main_a v_prenex_155))))) (or (forall ((v_prenex_148 Int)) (or (< v_prenex_148 main_x) (<= (+ main_x 1) v_prenex_148) (<= 0 (select main_a v_prenex_148)) (<= 0 (* 2 (select main_a v_prenex_148))))) (forall ((v_prenex_149 Int)) (or (<= (+ main_y 1) v_prenex_149) (<= (* 2 (select main_a v_prenex_149)) 2000)))) (forall ((v_prenex_147 Int) (v_prenex_146 Int)) (or (<= (+ (select main_a v_prenex_147) (select main_a v_prenex_146)) 1000) (<= (+ main_y 1) v_prenex_147) (< v_prenex_146 main_x) (<= (+ main_x 1) v_prenex_146) (<= 0 (* 2 (select main_a v_prenex_146))) (<= (* 2 (select main_a v_prenex_147)) 2000))) (forall ((v_prenex_114 Int) (v_prenex_115 Int)) (or (<= (* 2 (select main_a v_prenex_115)) 2000) (<= (+ main_x 1) v_prenex_114) (<= (select main_a v_prenex_115) 1000) (<= 0 (select main_a v_prenex_114)) (<= (+ (select main_a v_prenex_115) (select main_a v_prenex_114)) 1000) (< v_prenex_114 main_x))) (forall ((v_prenex_169 Int) (v_prenex_170 Int)) (or (<= (select main_a v_prenex_170) 1000) (<= 0 (* 2 (select main_a v_prenex_169))) (< v_prenex_169 main_x) (<= (+ main_x 1) v_prenex_169) (<= 1000 (+ (select main_a v_prenex_170) (select main_a v_prenex_169))))) (forall ((v_prenex_127 Int) (v_prenex_126 Int)) (or (<= (select main_a v_prenex_127) (+ (select main_a v_prenex_126) 1000)) (<= 0 (* 2 (select main_a v_prenex_126))) (<= (+ main_x 1) v_prenex_126) (< v_prenex_126 main_x) (<= (select main_a v_prenex_127) 1000))) (forall ((v_prenex_92 Int) (v_prenex_93 Int)) (or (<= (+ (select main_a v_prenex_93) (select main_a v_prenex_92)) 1000) (< v_prenex_92 main_x) (<= (+ main_x 1) v_prenex_92) (<= 0 (* 2 (select main_a v_prenex_92))))) (forall ((v_prenex_158 Int) (v_prenex_157 Int)) (or (<= (+ main_y 1) v_prenex_158) (< v_prenex_158 main_y) (<= (select main_a v_prenex_158) 1000) (<= (select main_a v_prenex_158) (+ (select main_a v_prenex_157) 1000)) (<= (* 2 (select main_a v_prenex_158)) 2000))) (forall ((v_prenex_55 Int) (v_prenex_54 Int)) (or (<= (* 2 (select main_a v_prenex_55)) 2000) (< v_prenex_55 main_y) (<= 1000 (+ (select main_a v_prenex_55) (select main_a v_prenex_54))) (< v_prenex_54 main_x) (<= (+ main_x 1) v_prenex_54) (<= 0 (select main_a v_prenex_54)))) (forall ((v_prenex_152 Int) (v_prenex_151 Int)) (or (<= 0 (select main_a v_prenex_151)) (<= (+ main_x 1) v_prenex_151) (<= (+ main_y 1) v_prenex_152) (< v_prenex_151 main_x) (<= (select main_a v_prenex_152) (+ (select main_a v_prenex_151) 1000)))) (forall ((v_prenex_56 Int) (v_prenex_57 Int)) (or (< v_prenex_57 main_y) (<= (+ (select main_a v_prenex_57) (select main_a v_prenex_56)) 1000) (< v_prenex_56 main_x) (<= (+ main_x 1) v_prenex_56) (<= (+ main_y 1) v_prenex_57))) (forall ((v_prenex_106 Int) (v_prenex_107 Int)) (or (<= (+ (select main_a v_prenex_107) (select main_a v_prenex_106)) 1000) (<= 0 (* 2 (select main_a v_prenex_106))) (<= (select main_a v_prenex_107) 1000) (<= (+ main_x 1) v_prenex_106) (< v_prenex_106 main_x))) (forall ((v_prenex_172 Int) (v_prenex_171 Int)) (or (< v_prenex_171 main_x) (<= 0 (* 2 (select main_a v_prenex_171))) (<= (+ main_x 1) v_prenex_171) (<= (select main_a v_prenex_172) (+ (select main_a v_prenex_171) 1000)) (<= (+ main_y 1) v_prenex_172))) (forall ((v_prenex_154 Int) (v_prenex_153 Int)) (or (<= (+ (select main_a v_prenex_154) (select main_a v_prenex_153)) 1000) (< v_prenex_154 main_y) (< v_prenex_153 main_x) (<= (+ main_x 1) v_prenex_153) (<= 0 (* 2 (select main_a v_prenex_153))))) (or (forall ((v_prenex_213 Int)) (or (<= 0 (* 2 (select main_a v_prenex_213))) (<= (+ main_x 1) v_prenex_213) (<= 0 (select main_a v_prenex_213)) (< v_prenex_213 main_x))) (forall ((v_prenex_214 Int)) (or (< v_prenex_214 main_y) (<= (* 2 (select main_a v_prenex_214)) 2000) (<= (select main_a v_prenex_214) 1000)))) (forall ((v_prenex_183 Int) (v_prenex_184 Int)) (or (<= 0 (* 2 (select main_a v_prenex_183))) (< v_prenex_184 main_y) (<= (* 2 (select main_a v_prenex_184)) 2000) (<= (select main_a v_prenex_184) (+ (select main_a v_prenex_183) 1000)) (<= (+ main_x 1) v_prenex_183) (< v_prenex_183 main_x))) (forall ((v_prenex_18 Int) (v_prenex_17 Int)) (or (<= (select main_a v_prenex_18) (+ (select main_a v_prenex_17) 1000)) (< v_prenex_18 main_y) (<= (+ main_y 1) v_prenex_18) (<= (select main_a v_prenex_18) 1000))) (forall ((v_prenex_235 Int) (v_prenex_236 Int)) (or (<= (select main_a v_prenex_236) 1000) (<= (+ main_x 1) v_prenex_235) (<= (+ main_y 1) v_prenex_236) (< v_prenex_236 main_y) (<= 1000 (+ (select main_a v_prenex_236) (select main_a v_prenex_235))))) (forall ((v_prenex_41 Int) (v_prenex_40 Int)) (or (< v_prenex_40 main_x) (<= (select main_a v_prenex_41) 1000) (<= 0 (select main_a v_prenex_40)) (<= (+ main_y 1) v_prenex_41) (<= (+ main_x 1) v_prenex_40) (<= (+ (select main_a v_prenex_41) (select main_a v_prenex_40)) 1000))) (forall ((v_prenex_132 Int) (v_prenex_133 Int)) (or (<= 0 (select main_a v_prenex_132)) (<= 1000 (+ (select main_a v_prenex_133) (select main_a v_prenex_132))) (< v_prenex_132 main_x) (<= (select main_a v_prenex_133) 1000) (< v_prenex_133 main_y) (<= (+ main_x 1) v_prenex_132))) (forall ((v_prenex_16 Int) (v_prenex_15 Int)) (or (<= 0 (select main_a v_prenex_15)) (<= (select main_a v_prenex_16) 1000) (<= (+ main_x 1) v_prenex_15) (<= 1000 (+ (select main_a v_prenex_16) (select main_a v_prenex_15))) (<= (* 2 (select main_a v_prenex_16)) 2000) (< v_prenex_15 main_x) (<= (+ main_y 1) v_prenex_16))) (forall ((v_prenex_34 Int) (v_prenex_35 Int)) (or (<= 1000 (+ (select main_a v_prenex_35) (select main_a v_prenex_34))) (< v_prenex_35 main_y) (<= (+ main_y 1) v_prenex_35) (< v_prenex_34 main_x) (<= (select main_a v_prenex_35) 1000))) (forall ((v_prenex_43 Int) (v_prenex_42 Int)) (or (< v_prenex_43 main_y) (<= (+ main_x 1) v_prenex_42) (<= (+ main_y 1) v_prenex_43) (<= (* 2 (select main_a v_prenex_43)) 2000) (<= (select main_a v_prenex_43) (+ (select main_a v_prenex_42) 1000)))) (or (forall ((v_prenex_78 Int)) (or (<= (select main_a v_prenex_78) 1000) (<= (+ main_y 1) v_prenex_78))) (forall ((v_prenex_77 Int)) (or (<= (+ main_x 1) v_prenex_77) (<= 0 (select main_a v_prenex_77)) (<= 0 (* 2 (select main_a v_prenex_77))) (< v_prenex_77 main_x)))) (forall ((v_prenex_85 Int) (v_prenex_84 Int)) (or (<= (+ main_x 1) v_prenex_84) (< v_prenex_84 main_x) (<= 0 (* 2 (select main_a v_prenex_84))) (<= (select main_a v_prenex_85) (+ (select main_a v_prenex_84) 1000)))) (forall ((v_prenex_95 Int) (v_prenex_94 Int)) (or (<= (select main_a v_prenex_95) 1000) (<= 0 (* 2 (select main_a v_prenex_94))) (<= (+ main_x 1) v_prenex_94) (< v_prenex_95 main_y) (<= (+ (select main_a v_prenex_95) (select main_a v_prenex_94)) 1000) (< v_prenex_94 main_x))) (or (forall ((v_prenex_121 Int)) (or (<= (* 2 (select main_a v_prenex_121)) 2000) (<= (+ main_y 1) v_prenex_121))) (forall ((v_prenex_120 Int)) (or (<= (+ main_x 1) v_prenex_120) (<= 0 (select main_a v_prenex_120)) (< v_prenex_120 main_x)))) (forall ((v_prenex_67 Int) (v_prenex_66 Int)) (or (<= (+ main_x 1) v_prenex_66) (< v_prenex_67 main_y) (<= 1000 (+ (select main_a v_prenex_67) (select main_a v_prenex_66))) (<= 0 (* 2 (select main_a v_prenex_66))) (< v_prenex_66 main_x) (<= (* 2 (select main_a v_prenex_67)) 2000) (<= (select main_a v_prenex_67) 1000))) (forall ((v_prenex_231 Int) (v_prenex_232 Int)) (or (<= (+ main_x 1) v_prenex_231) (< v_prenex_231 main_x) (<= 1000 (+ (select main_a v_prenex_232) (select main_a v_prenex_231))) (<= (* 2 (select main_a v_prenex_232)) 2000) (<= 0 (* 2 (select main_a v_prenex_231))))) (forall ((v_prenex_138 Int) (v_prenex_139 Int)) (or (<= (select main_a v_prenex_139) 1000) (< v_prenex_139 main_y) (< v_prenex_138 main_x) (<= (+ main_y 1) v_prenex_139) (<= (+ (select main_a v_prenex_139) (select main_a v_prenex_138)) 1000))) (forall ((v_prenex_161 Int) (v_prenex_162 Int)) (or (<= (+ main_x 1) v_prenex_161) (< v_prenex_162 main_y) (<= 0 (* 2 (select main_a v_prenex_161))) (< v_prenex_161 main_x) (<= (select main_a v_prenex_162) 1000) (<= (select main_a v_prenex_162) (+ (select main_a v_prenex_161) 1000)))) (forall ((v_prenex_208 Int) (v_prenex_207 Int)) (or (<= 0 (select main_a v_prenex_207)) (< v_prenex_207 main_x) (<= (+ main_y 1) v_prenex_208) (<= (* 2 (select main_a v_prenex_208)) 2000) (<= (+ main_x 1) v_prenex_207) (<= 1000 (+ (select main_a v_prenex_208) (select main_a v_prenex_207))))) (forall ((v_prenex_99 Int) (v_prenex_98 Int)) (or (<= (+ main_y 1) v_prenex_99) (<= (* 2 (select main_a v_prenex_99)) 2000) (<= (select main_a v_prenex_99) (+ (select main_a v_prenex_98) 1000)) (< v_prenex_98 main_x) (< v_prenex_99 main_y))) (forall ((v_prenex_237 Int) (v_prenex_238 Int)) (or (<= (+ (select main_a v_prenex_238) (select main_a v_prenex_237)) 1000) (<= (+ main_y 1) v_prenex_238) (<= (select main_a v_prenex_238) 1000) (<= (+ main_x 1) v_prenex_237) (< v_prenex_238 main_y))) (forall ((v_prenex_145 Int) (v_prenex_144 Int)) (or (<= (+ main_x 1) v_prenex_144) (<= 0 (select main_a v_prenex_144)) (< v_prenex_144 main_x) (<= (* 2 (select main_a v_prenex_145)) 2000) (<= 1000 (+ (select main_a v_prenex_145) (select main_a v_prenex_144))))) (forall ((v_prenex_4 Int) (v_prenex_3 Int)) (or (<= 0 (* 2 (select main_a v_prenex_3))) (<= (+ main_x 1) v_prenex_3) (< v_prenex_4 main_y) (<= (select main_a v_prenex_4) (+ (select main_a v_prenex_3) 1000)) (< v_prenex_3 main_x) (<= (* 2 (select main_a v_prenex_4)) 2000) (<= (select main_a v_prenex_4) 1000))) (forall ((v_prenex_178 Int) (v_prenex_177 Int)) (or (<= (+ main_y 1) v_prenex_178) (<= (select main_a v_prenex_178) (+ (select main_a v_prenex_177) 1000)) (<= 0 (select main_a v_prenex_177)) (<= (+ main_x 1) v_prenex_177) (<= (select main_a v_prenex_178) 1000) (< v_prenex_177 main_x))) (forall ((v_prenex_211 Int) (v_prenex_212 Int)) (or (<= (select main_a v_prenex_212) (+ (select main_a v_prenex_211) 1000)) (<= (* 2 (select main_a v_prenex_212)) 2000) (<= (+ main_x 1) v_prenex_211) (<= 0 (* 2 (select main_a v_prenex_211))) (< v_prenex_211 main_x))) (forall ((v_prenex_81 Int) (v_prenex_80 Int)) (or (<= (select main_a v_prenex_81) 1000) (<= (select main_a v_prenex_81) (+ (select main_a v_prenex_80) 1000)) (<= (+ main_x 1) v_prenex_80) (< v_prenex_80 main_x) (<= (+ main_y 1) v_prenex_81) (<= 0 (* 2 (select main_a v_prenex_80))))) (forall ((v_prenex_65 Int) (v_prenex_64 Int)) (or (<= (* 2 (select main_a v_prenex_65)) 2000) (<= 0 (select main_a v_prenex_64)) (<= (select main_a v_prenex_65) (+ (select main_a v_prenex_64) 1000)) (<= (+ main_x 1) v_prenex_64) (< v_prenex_64 main_x) (< v_prenex_65 main_y))) (forall ((v_prenex_190 Int) (v_prenex_191 Int)) (or (<= (select main_a v_prenex_191) (+ (select main_a v_prenex_190) 1000)) (<= 0 (select main_a v_prenex_190)) (<= (select main_a v_prenex_191) 1000) (<= (+ main_x 1) v_prenex_190) (< v_prenex_190 main_x))) (forall ((v_prenex_110 Int) (v_prenex_111 Int)) (or (< v_prenex_111 main_y) (<= (+ main_x 1) v_prenex_110) (<= (select main_a v_prenex_111) (+ (select main_a v_prenex_110) 1000)) (<= (+ main_y 1) v_prenex_111) (<= (select main_a v_prenex_111) 1000))) (forall ((v_prenex_204 Int) (v_prenex_203 Int)) (or (< v_prenex_204 main_y) (<= 1000 (+ (select main_a v_prenex_204) (select main_a v_prenex_203))) (<= 0 (* 2 (select main_a v_prenex_203))) (<= (select main_a v_prenex_204) 1000) (<= (+ main_x 1) v_prenex_203) (< v_prenex_203 main_x))) (forall ((v_prenex_109 Int) (v_prenex_108 Int)) (or (<= 0 (* 2 (select main_a v_prenex_108))) (<= (+ main_x 1) v_prenex_108) (<= (* 2 (select main_a v_prenex_109)) 2000) (<= (select main_a v_prenex_109) 1000) (<= (+ (select main_a v_prenex_109) (select main_a v_prenex_108)) 1000) (< v_prenex_108 main_x) (<= (+ main_y 1) v_prenex_109))) (forall ((v_prenex_20 Int) (v_prenex_19 Int)) (or (< v_prenex_19 main_x) (<= (+ (select main_a v_prenex_20) (select main_a v_prenex_19)) 1000) (<= (+ main_x 1) v_prenex_19) (<= (select main_a v_prenex_20) 1000) (<= (+ main_y 1) v_prenex_20) (<= 0 (* 2 (select main_a v_prenex_19))))) (forall ((v_prenex_143 Int) (v_prenex_142 Int)) (or (<= (+ main_x 1) v_prenex_142) (<= 1000 (+ (select main_a v_prenex_143) (select main_a v_prenex_142))) (<= (* 2 (select main_a v_prenex_143)) 2000) (< v_prenex_142 main_x) (<= 0 (* 2 (select main_a v_prenex_142))) (<= (+ main_y 1) v_prenex_143) (<= (select main_a v_prenex_143) 1000))) (forall ((v_prenex_30 Int) (v_prenex_31 Int)) (or (<= (select main_a v_prenex_31) (+ (select main_a v_prenex_30) 1000)) (<= (+ main_y 1) v_prenex_31) (< v_prenex_30 main_x) (<= 0 (* 2 (select main_a v_prenex_30))) (<= (* 2 (select main_a v_prenex_31)) 2000) (<= (+ main_x 1) v_prenex_30) (<= (select main_a v_prenex_31) 1000))) (forall ((v_prenex_116 Int)) (or (<= 0 (* 2 (select main_a v_prenex_116))) (< v_prenex_116 main_x) (<= (+ main_x 1) v_prenex_116))) (forall ((v_prenex_130 Int) (v_prenex_131 Int)) (or (<= (* 2 (select main_a v_prenex_131)) 2000) (<= 1000 (+ (select main_a v_prenex_131) (select main_a v_prenex_130))) (< v_prenex_131 main_y) (< v_prenex_130 main_x) (<= (+ main_y 1) v_prenex_131))) (forall ((v_prenex_49 Int) (v_prenex_48 Int)) (or (< v_prenex_48 main_x) (<= (+ (select main_a v_prenex_49) (select main_a v_prenex_48)) 1000) (<= 0 (select main_a v_prenex_48)) (<= (+ main_x 1) v_prenex_48) (<= (* 2 (select main_a v_prenex_49)) 2000))) (or (forall ((v_prenex_193 Int)) (or (<= (* 2 (select main_a v_prenex_193)) 2000) (< v_prenex_193 main_y))) (forall ((v_prenex_192 Int)) (or (<= (+ main_x 1) v_prenex_192) (< v_prenex_192 main_x) (<= 0 (select main_a v_prenex_192))))) (forall ((v_prenex_105 Int) (v_prenex_104 Int)) (or (<= (+ main_y 1) v_prenex_105) (< v_prenex_104 main_x) (<= (+ main_x 1) v_prenex_104) (<= 1000 (+ (select main_a v_prenex_105) (select main_a v_prenex_104))) (<= 0 (* 2 (select main_a v_prenex_104))))) (forall ((v_prenex_21 Int)) (or (<= 0 (select main_a v_prenex_21)) (<= (+ main_x 1) v_prenex_21) (< v_prenex_21 main_x) (<= 0 (* 2 (select main_a v_prenex_21))))) (or (forall ((v_prenex_217 Int)) (<= (* 2 (select main_a v_prenex_217)) 2000)) (forall ((v_prenex_216 Int)) (or (<= 0 (* 2 (select main_a v_prenex_216))) (<= 0 (select main_a v_prenex_216)) (< v_prenex_216 main_x) (<= (+ main_x 1) v_prenex_216)))) (forall ((v_prenex_205 Int) (v_prenex_206 Int)) (or (<= (* 2 (select main_a v_prenex_206)) 2000) (<= (+ (select main_a v_prenex_206) (select main_a v_prenex_205)) 1000) (< v_prenex_205 main_x) (<= 0 (* 2 (select main_a v_prenex_205))) (<= (select main_a v_prenex_206) 1000) (<= (+ main_x 1) v_prenex_205))) (forall ((v_prenex_200 Int) (v_prenex_199 Int)) (or (< v_prenex_199 main_x) (<= 0 (select main_a v_prenex_199)) (<= (+ main_y 1) v_prenex_200) (<= 1000 (+ (select main_a v_prenex_200) (select main_a v_prenex_199))) (<= (+ main_x 1) v_prenex_199) (<= (select main_a v_prenex_200) 1000))) (or (forall ((v_prenex_193 Int)) (or (<= (* 2 (select main_a v_prenex_193)) 2000) (< v_prenex_193 main_y))) (forall ((v_prenex_194 Int)) (or (<= 0 (* 2 (select main_a v_prenex_194))) (<= (+ main_x 1) v_prenex_194) (< v_prenex_194 main_x)))) (forall ((v_prenex_103 Int) (v_prenex_102 Int)) (or (<= (+ main_x 1) v_prenex_102) (< v_prenex_103 main_y) (<= 0 (* 2 (select main_a v_prenex_102))) (<= 1000 (+ (select main_a v_prenex_103) (select main_a v_prenex_102))) (< v_prenex_102 main_x))) (forall ((v_prenex_14 Int) (v_prenex_13 Int)) (or (<= (+ main_y 1) v_prenex_14) (<= 1000 (+ (select main_a v_prenex_14) (select main_a v_prenex_13))) (< v_prenex_14 main_y) (<= (+ main_x 1) v_prenex_13) (< v_prenex_13 main_x))) (forall ((v_prenex_70 Int)) (or (< v_prenex_70 main_y) (<= (+ main_y 1) v_prenex_70) (<= (* 2 (select main_a v_prenex_70)) 2000))) (or (forall ((v_prenex_78 Int)) (or (<= (select main_a v_prenex_78) 1000) (<= (+ main_y 1) v_prenex_78))) (forall ((v_prenex_79 Int)) (or (<= (+ main_x 1) v_prenex_79) (< v_prenex_79 main_x) (<= 0 (* 2 (select main_a v_prenex_79)))))) (forall ((v_prenex_159 Int) (v_prenex_160 Int)) (or (<= 0 (select main_a v_prenex_159)) (< v_prenex_159 main_x) (<= (select main_a v_prenex_160) 1000) (<= 1000 (+ (select main_a v_prenex_160) (select main_a v_prenex_159))) (<= (+ main_x 1) v_prenex_159))) (forall ((v_prenex_6 Int) (v_prenex_5 Int)) (or (<= 1000 (+ (select main_a v_prenex_6) (select main_a v_prenex_5))) (<= (select main_a v_prenex_6) 1000) (<= (* 2 (select main_a v_prenex_6)) 2000) (< v_prenex_5 main_x) (<= 0 (select main_a v_prenex_5)) (<= (+ main_x 1) v_prenex_5))) (or (forall ((v_prenex_119 Int)) (or (< v_prenex_119 main_x) (<= 0 (* 2 (select main_a v_prenex_119))) (<= (+ main_x 1) v_prenex_119))) (forall ((v_prenex_118 Int)) (<= (select main_a v_prenex_118) 1000))) (or (forall ((v_prenex_186 Int)) (or (< v_prenex_186 main_y) (<= (select main_a v_prenex_186) 1000))) (forall ((v_prenex_185 Int)) (or (<= 0 (select main_a v_prenex_185)) (<= 0 (* 2 (select main_a v_prenex_185))) (< v_prenex_185 main_x) (<= (+ main_x 1) v_prenex_185)))) (forall ((v_prenex_210 Int) (v_prenex_209 Int)) (or (<= (+ main_x 1) v_prenex_209) (<= 0 (* 2 (select main_a v_prenex_209))) (<= (+ (select main_a v_prenex_210) (select main_a v_prenex_209)) 1000) (<= (* 2 (select main_a v_prenex_210)) 2000) (< v_prenex_209 main_x))) (or (forall ((v_prenex_53 Int)) (or (< v_prenex_53 main_y) (<= (* 2 (select main_a v_prenex_53)) 2000) (<= (+ main_y 1) v_prenex_53))) (forall ((v_prenex_52 Int)) (<= 0 (* 2 (select main_a v_prenex_52))))) (or (forall ((v_prenex_118 Int)) (<= (select main_a v_prenex_118) 1000)) (forall ((v_prenex_117 Int)) (or (<= 0 (* 2 (select main_a v_prenex_117))) (< v_prenex_117 main_x) (<= (+ main_x 1) v_prenex_117) (<= 0 (select main_a v_prenex_117))))) (forall ((v_prenex_59 Int) (v_prenex_58 Int)) (or (<= (+ (select main_a v_prenex_59) (select main_a v_prenex_58)) 1000) (<= (select main_a v_prenex_59) 1000) (<= (* 2 (select main_a v_prenex_59)) 2000) (<= (+ main_y 1) v_prenex_59) (< v_prenex_59 main_y))) (or (forall ((v_prenex_75 Int)) (or (< v_prenex_75 main_x) (<= (+ main_x 1) v_prenex_75) (<= 0 (* 2 (select main_a v_prenex_75))) (<= 0 (select main_a v_prenex_75)))) (forall ((v_prenex_76 Int)) (or (<= (* 2 (select main_a v_prenex_76)) 2000) (<= (select main_a v_prenex_76) 1000)))) (or (forall ((v_prenex_215 Int)) (or (< v_prenex_215 main_x) (<= (+ main_x 1) v_prenex_215) (<= 0 (* 2 (select main_a v_prenex_215))))) (forall ((v_prenex_214 Int)) (or (< v_prenex_214 main_y) (<= (* 2 (select main_a v_prenex_214)) 2000) (<= (select main_a v_prenex_214) 1000)))) (forall ((v_prenex_125 Int) (v_prenex_124 Int)) (or (<= (select main_a v_prenex_125) (+ (select main_a v_prenex_124) 1000)) (< v_prenex_125 main_y) (<= (+ main_x 1) v_prenex_124) (<= 0 (select main_a v_prenex_124)) (< v_prenex_124 main_x))) (or (forall ((v_prenex_218 Int)) (or (< v_prenex_218 main_x) (<= 0 (* 2 (select main_a v_prenex_218))) (<= (+ main_x 1) v_prenex_218))) (forall ((v_prenex_217 Int)) (<= (* 2 (select main_a v_prenex_217)) 2000))) (forall ((v_prenex_242 Int) (v_prenex_243 Int)) (or (<= (select main_a v_prenex_243) 1000) (<= 0 (select main_a v_prenex_242)) (<= (+ main_x 1) v_prenex_242) (< v_prenex_242 main_x) (<= (* 2 (select main_a v_prenex_243)) 2000) (<= (select main_a v_prenex_243) (+ (select main_a v_prenex_242) 1000)))) (or (forall ((v_prenex_136 Int)) (or (<= 0 (* 2 (select main_a v_prenex_136))) (< v_prenex_136 main_x))) (forall ((v_prenex_137 Int)) (or (<= (select main_a v_prenex_137) 1000) (<= (+ main_y 1) v_prenex_137) (< v_prenex_137 main_y)))) (forall ((v_prenex_61 Int) (v_prenex_60 Int)) (or (<= (+ (select main_a v_prenex_61) (select main_a v_prenex_60)) 1000) (<= (+ main_y 1) v_prenex_61) (< v_prenex_61 main_y) (<= (select main_a v_prenex_61) 1000))) (forall ((v_prenex_45 Int) (v_prenex_44 Int)) (or (<= (* 2 (select main_a v_prenex_45)) 2000) (<= 0 (select main_a v_prenex_44)) (<= (+ main_x 1) v_prenex_44) (< v_prenex_44 main_x) (<= (+ (select main_a v_prenex_45) (select main_a v_prenex_44)) 1000) (< v_prenex_45 main_y))) (forall ((v_prenex_167 Int) (v_prenex_168 Int)) (or (<= (+ main_x 1) v_prenex_167) (<= 1000 (+ (select main_a v_prenex_168) (select main_a v_prenex_167))) (<= (* 2 (select main_a v_prenex_168)) 2000) (< v_prenex_167 main_x) (<= 0 (* 2 (select main_a v_prenex_167))) (<= (select main_a v_prenex_168) 1000))) (forall ((v_prenex_51 Int) (v_prenex_50 Int)) (or (<= (+ (select main_a v_prenex_51) (select main_a v_prenex_50)) 1000) (<= 0 (select main_a v_prenex_50)) (<= (+ main_x 1) v_prenex_50) (< v_prenex_50 main_x) (< v_prenex_51 main_y))) (forall ((v_prenex_128 Int) (v_prenex_129 Int)) (or (< v_prenex_128 main_x) (<= 0 (select main_a v_prenex_128)) (<= (+ main_x 1) v_prenex_128) (<= 1000 (+ (select main_a v_prenex_129) (select main_a v_prenex_128))))) (or (forall ((v_prenex_240 Int)) (or (< v_prenex_240 main_y) (<= (* 2 (select main_a v_prenex_240)) 2000))) (forall ((v_prenex_239 Int)) (or (<= 0 (select main_a v_prenex_239)) (<= (+ main_x 1) v_prenex_239) (< v_prenex_239 main_x) (<= 0 (* 2 (select main_a v_prenex_239)))))) (forall ((v_prenex_233 Int) (v_prenex_234 Int)) (or (<= (+ (select main_a v_prenex_234) (select main_a v_prenex_233)) 1000) (< v_prenex_233 main_x) (<= (+ main_x 1) v_prenex_233) (<= 0 (select main_a v_prenex_233)) (<= (select main_a v_prenex_234) 1000) (< v_prenex_234 main_y))) (or (forall ((v_prenex_224 Int)) (or (<= (select main_a v_prenex_224) 1000) (<= (+ main_y 1) v_prenex_224) (<= (* 2 (select main_a v_prenex_224)) 2000))) (forall ((v_prenex_225 Int)) (or (<= (+ main_x 1) v_prenex_225) (<= 0 (* 2 (select main_a v_prenex_225))) (< v_prenex_225 main_x)))) (forall ((v_prenex_141 Int) (v_prenex_140 Int)) (or (<= 1000 (+ (select main_a v_prenex_141) (select main_a v_prenex_140))) (<= (+ main_x 1) v_prenex_140) (<= 0 (* 2 (select main_a v_prenex_140))) (<= (* 2 (select main_a v_prenex_141)) 2000) (< v_prenex_141 main_y) (< v_prenex_140 main_x))) (forall ((v_prenex_101 Int) (v_prenex_100 Int)) (or (<= (+ (select main_a v_prenex_101) (select main_a v_prenex_100)) 1000) (<= 0 (select main_a v_prenex_100)) (<= (+ main_x 1) v_prenex_100) (< v_prenex_100 main_x) (<= (select main_a v_prenex_101) 1000))) (forall ((v_prenex_23 Int) (v_prenex_22 Int)) (or (<= (* 2 (select main_a v_prenex_23)) 2000) (< v_prenex_22 main_x) (<= 0 (select main_a v_prenex_22)) (<= (select main_a v_prenex_23) (+ (select main_a v_prenex_22) 1000)) (<= (+ main_x 1) v_prenex_22))) (forall ((v_prenex_87 Int) (v_prenex_86 Int)) (or (< v_prenex_86 main_x) (<= 0 (select main_a v_prenex_86)) (<= (+ main_x 1) v_prenex_86) (<= (+ (select main_a v_prenex_87) (select main_a v_prenex_86)) 1000))) (<= (+ main_y 1) main_x))} [2019-01-31 15:08:36,263 WARN L274 ngHoareTripleChecker]: Action: a := a[x := a[x] + 1];a := a[y := a[y] - 1]; [2019-01-31 15:08:36,264 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (store (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y (+ (select (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y) (- 1))) c_main_a_primed) [2019-01-31 15:08:36,287 WARN L276 ngHoareTripleChecker]: Post: {91#false} [2019-01-31 15:08:36,288 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:08:36,288 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:08:36,288 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[main_a] -> [-inf_0] v_1805 [b_236] v_1806 [b_237] v_1807 [b_238] v_1808 [b_239] v_1809 [inf_0], }, Substate: {ints: {v_1806 = [-inf; 1000]; v_1808 = [0; inf]}, 9 vars top, relations: {b_237 - b_238 = [-inf; 0]; b_236 - b_238 = [-inf; -1]; b_236 - b_237 = [-1; -1]; b_238 - b_239 = [-1; -1]; b_237 - b_239 = [-inf; -1]; b_236 - b_239 = [-inf; -2]; b_238 - main_y = [1; inf]; b_237 - main_y = [1; 1]; b_236 - main_y = [0; 0]; b_239 - main_y = [2; inf]; main_x - main_y = [1; inf]; b_238 - main_x = [0; 0]; b_237 - main_x = [-inf; 0]; b_236 - main_x = [-inf; -1]; b_239 - main_x = [1; 1]; v_1806 + v_1808 = [1000; 1000]; v_1806 - v_1808 = [-inf; 1000]}, }}} [2019-01-31 15:08:36,289 WARN L628 ntHoareTripleChecker]: (= (let ((.cse0 (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)))) (store .cse0 c_main_y (+ (select .cse0 c_main_y) (- 1)))) c_main_a_primed) (a := a[x := a[x] + 1];a := a[y := a[y] - 1];) [2019-01-31 15:08:36,289 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:08:36,289 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:08:38,045 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:08:38,046 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:08:38,047 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:08:38,047 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:08:38,047 WARN L224 ngHoareTripleChecker]: Pre: {92#(forall ((v_idx_687 Int) (v_idx_689 Int)) (and (or (and (or (< v_idx_689 c_main_x) (<= (+ c_main_x 1) v_idx_689) (and (<= 0 (select c_main_a v_idx_689)) (<= 0 (* 2 (select c_main_a v_idx_689))))) (< v_idx_687 c_main_y)) (and (or (and (<= (+ c_main_x 1) v_idx_689) (<= (select c_main_a v_idx_687) 1000) (<= (* 2 (select c_main_a v_idx_687)) 2000)) (and (<= 1000 (+ (select c_main_a v_idx_689) (select c_main_a v_idx_687))) (<= (select c_main_a v_idx_687) (+ (select c_main_a v_idx_689) 1000)) (<= (+ (select c_main_a v_idx_689) (select c_main_a v_idx_687)) 1000) (<= 0 (* 2 (select c_main_a v_idx_689)))) (and (< v_idx_689 c_main_x) (<= (select c_main_a v_idx_687) 1000) (<= (* 2 (select c_main_a v_idx_687)) 2000))) (<= (* 2 (select c_main_a v_idx_687)) 2000)) (and (or (< v_idx_689 c_main_x) (<= (+ c_main_x 1) v_idx_689) (and (<= 0 (select c_main_a v_idx_689)) (<= 0 (* 2 (select c_main_a v_idx_689))))) (<= (+ c_main_y 1) v_idx_687))) (<= (+ c_main_y 1) c_main_x) (<= (- (- c_main_x) (- c_main_y)) (- 1))))} [2019-01-31 15:08:38,047 WARN L228 ngHoareTripleChecker]: Action: a := a[x := a[x] + 1];a := a[y := a[y] - 1]; [2019-01-31 15:08:38,047 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (store (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y (+ (select (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y) (- 1))) c_main_a_primed) [2019-01-31 15:08:38,048 WARN L230 ngHoareTripleChecker]: Post: {93#(forall ((v_idx_692 Int)) (or (= 0 (select c_main_a v_idx_692)) (<= (+ c_main_y 1) v_idx_692) (< v_idx_692 c_main_y)))} [2019-01-31 15:08:38,048 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:08:38,049 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:08:38,049 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:08:40,494 WARN L270 ngHoareTripleChecker]: Pre: {92#(and (forall ((v_prenex_510 Int) (v_prenex_511 Int)) (or (< v_prenex_511 main_x) (< v_prenex_510 main_y) (<= 1000 (+ (select main_a v_prenex_511) (select main_a v_prenex_510))) (<= (* 2 (select main_a v_prenex_510)) 2000) (<= (select main_a v_prenex_510) 1000) (<= 0 (select main_a v_prenex_511)) (<= (+ main_x 1) v_prenex_511))) (forall ((v_prenex_356 Int) (v_prenex_355 Int)) (or (<= 0 (* 2 (select main_a v_prenex_356))) (<= 0 (select main_a v_prenex_356)) (< v_prenex_356 main_x) (<= 1000 (+ (select main_a v_prenex_356) (select main_a v_prenex_355))) (<= (+ main_x 1) v_prenex_356) (<= (* 2 (select main_a v_prenex_355)) 2000))) (forall ((v_idx_687 Int) (v_idx_689 Int)) (or (<= 0 (select main_a v_idx_689)) (< v_idx_689 main_x) (<= (+ main_x 1) v_idx_689) (<= (+ (select main_a v_idx_689) (select main_a v_idx_687)) 1000) (<= (select main_a v_idx_687) 1000) (<= (* 2 (select main_a v_idx_687)) 2000))) (forall ((v_prenex_458 Int) (v_prenex_459 Int)) (or (<= (select main_a v_prenex_458) (+ (select main_a v_prenex_459) 1000)) (<= (+ main_y 1) v_prenex_458) (<= (+ main_x 1) v_prenex_459) (<= (select main_a v_prenex_458) 1000) (< v_prenex_458 main_y))) (forall ((v_prenex_417 Int) (v_prenex_418 Int)) (or (< v_prenex_418 main_x) (<= (* 2 (select main_a v_prenex_417)) 2000) (<= (+ main_x 1) v_prenex_418) (<= 0 (select main_a v_prenex_418)) (< v_prenex_417 main_y) (<= (select main_a v_prenex_417) (+ (select main_a v_prenex_418) 1000)))) (forall ((v_prenex_257 Int) (v_prenex_258 Int)) (or (<= (select main_a v_prenex_257) (+ (select main_a v_prenex_258) 1000)) (< v_prenex_257 main_y) (<= 0 (* 2 (select main_a v_prenex_258))) (<= (select main_a v_prenex_257) 1000) (< v_prenex_258 main_x) (<= (+ main_x 1) v_prenex_258))) (forall ((v_prenex_279 Int) (v_prenex_280 Int)) (or (<= (select main_a v_prenex_279) 1000) (<= 0 (select main_a v_prenex_280)) (<= (+ main_x 1) v_prenex_280) (< v_prenex_279 main_y) (< v_prenex_280 main_x) (<= (select main_a v_prenex_279) (+ (select main_a v_prenex_280) 1000)))) (forall ((v_prenex_466 Int) (v_prenex_465 Int)) (or (<= (select main_a v_prenex_465) (+ (select main_a v_prenex_466) 1000)) (< v_prenex_466 main_x) (<= (* 2 (select main_a v_prenex_465)) 2000) (<= (+ main_x 1) v_prenex_466) (<= 0 (* 2 (select main_a v_prenex_466))))) (forall ((v_prenex_471 Int) (v_prenex_472 Int)) (or (<= (+ (select main_a v_prenex_472) (select main_a v_prenex_471)) 1000) (<= 0 (select main_a v_prenex_472)) (<= (+ main_x 1) v_prenex_472) (<= 0 (* 2 (select main_a v_prenex_472))) (< v_prenex_472 main_x) (<= (select main_a v_prenex_471) 1000))) (forall ((v_prenex_251 Int) (v_prenex_252 Int)) (or (<= (select main_a v_prenex_251) (+ (select main_a v_prenex_252) 1000)) (< v_prenex_252 main_x) (<= (select main_a v_prenex_251) 1000) (<= (* 2 (select main_a v_prenex_251)) 2000) (<= (+ main_x 1) v_prenex_252) (<= 0 (* 2 (select main_a v_prenex_252))))) (or (forall ((v_prenex_341 Int)) (or (<= 0 (select main_a v_prenex_341)) (< v_prenex_341 main_x) (<= (+ main_x 1) v_prenex_341) (<= 0 (* 2 (select main_a v_prenex_341))))) (forall ((v_prenex_340 Int)) (or (< v_prenex_340 main_y) (<= (* 2 (select main_a v_prenex_340)) 2000)))) (forall ((v_prenex_248 Int) (v_prenex_247 Int)) (or (< v_prenex_248 main_x) (<= 0 (select main_a v_prenex_248)) (<= (+ main_x 1) v_prenex_248) (<= (select main_a v_prenex_247) (+ (select main_a v_prenex_248) 1000)) (<= (* 2 (select main_a v_prenex_247)) 2000) (<= 0 (* 2 (select main_a v_prenex_248))))) (forall ((v_prenex_422 Int) (v_prenex_421 Int)) (or (<= (+ main_x 1) v_prenex_422) (< v_prenex_421 main_y) (<= 0 (select main_a v_prenex_422)) (< v_prenex_422 main_x) (<= (select main_a v_prenex_421) (+ (select main_a v_prenex_422) 1000)))) (or (forall ((v_prenex_305 Int)) (or (<= 0 (* 2 (select main_a v_prenex_305))) (< v_prenex_305 main_x))) (forall ((v_prenex_304 Int)) (or (<= (+ main_y 1) v_prenex_304) (<= (* 2 (select main_a v_prenex_304)) 2000) (< v_prenex_304 main_y)))) (forall ((v_prenex_387 Int) (v_prenex_386 Int)) (or (< v_prenex_387 main_x) (<= (+ main_x 1) v_prenex_387) (<= 0 (* 2 (select main_a v_prenex_387))) (<= (+ main_y 1) v_prenex_386) (<= 1000 (+ (select main_a v_prenex_387) (select main_a v_prenex_386))))) (forall ((v_prenex_535 Int) (v_prenex_536 Int)) (or (<= (* 2 (select main_a v_prenex_535)) 2000) (<= 0 (* 2 (select main_a v_prenex_536))) (< v_prenex_536 main_x) (<= (+ main_x 1) v_prenex_536) (<= (+ (select main_a v_prenex_536) (select main_a v_prenex_535)) 1000) (<= (+ main_y 1) v_prenex_535))) (forall ((v_prenex_448 Int) (v_prenex_449 Int)) (or (< v_prenex_449 main_x) (<= (select main_a v_prenex_448) (+ (select main_a v_prenex_449) 1000)) (<= 0 (select main_a v_prenex_449)) (<= (+ main_x 1) v_prenex_449) (<= (+ main_y 1) v_prenex_448))) (or (forall ((v_prenex_409 Int)) (or (< v_prenex_409 main_x) (<= 0 (select main_a v_prenex_409)) (<= (+ main_x 1) v_prenex_409) (<= 0 (* 2 (select main_a v_prenex_409))))) (forall ((v_prenex_408 Int)) (or (<= (* 2 (select main_a v_prenex_408)) 2000) (<= (select main_a v_prenex_408) 1000)))) (forall ((v_prenex_501 Int) (v_prenex_502 Int)) (or (< v_prenex_501 main_y) (<= (* 2 (select main_a v_prenex_501)) 2000) (<= (+ main_y 1) v_prenex_501) (<= (+ main_x 1) v_prenex_502) (<= 1000 (+ (select main_a v_prenex_502) (select main_a v_prenex_501))))) (or (forall ((v_prenex_440 Int)) (or (<= 0 (select main_a v_prenex_440)) (<= 0 (* 2 (select main_a v_prenex_440))) (< v_prenex_440 main_x) (<= (+ main_x 1) v_prenex_440))) (forall ((v_prenex_439 Int)) (or (<= (+ main_y 1) v_prenex_439) (<= (select main_a v_prenex_439) 1000)))) (forall ((v_prenex_314 Int) (v_prenex_315 Int)) (or (< v_prenex_315 main_x) (<= 0 (select main_a v_prenex_315)) (<= (+ main_x 1) v_prenex_315) (<= (select main_a v_prenex_314) (+ (select main_a v_prenex_315) 1000)) (<= 0 (* 2 (select main_a v_prenex_315))))) (forall ((v_prenex_441 Int)) (or (<= (+ main_x 1) v_prenex_441) (<= 0 (* 2 (select main_a v_prenex_441))) (< v_prenex_441 main_x))) (forall ((v_prenex_367 Int) (v_prenex_366 Int)) (or (< v_prenex_367 main_x) (<= (+ (select main_a v_prenex_367) (select main_a v_prenex_366)) 1000) (<= (+ main_x 1) v_prenex_367) (<= (select main_a v_prenex_366) 1000) (<= 0 (* 2 (select main_a v_prenex_367))) (<= (+ main_y 1) v_prenex_366))) (forall ((v_prenex_540 Int) (v_prenex_539 Int)) (or (<= 0 (* 2 (select main_a v_prenex_540))) (<= 0 (select main_a v_prenex_540)) (<= (+ main_x 1) v_prenex_540) (< v_prenex_540 main_x) (<= (select main_a v_prenex_539) (+ (select main_a v_prenex_540) 1000)))) (forall ((v_prenex_415 Int) (v_prenex_416 Int)) (or (<= (+ main_y 1) v_prenex_415) (< v_prenex_415 main_y) (<= (* 2 (select main_a v_prenex_415)) 2000) (<= (+ (select main_a v_prenex_416) (select main_a v_prenex_415)) 1000))) (forall ((v_prenex_552 Int) (v_prenex_553 Int)) (or (<= (select main_a v_prenex_552) 1000) (<= 0 (* 2 (select main_a v_prenex_553))) (<= (* 2 (select main_a v_prenex_552)) 2000) (< v_prenex_553 main_x) (<= 1000 (+ (select main_a v_prenex_553) (select main_a v_prenex_552))) (<= (+ main_y 1) v_prenex_552) (<= (+ main_x 1) v_prenex_553))) (forall ((v_prenex_477 Int) (v_prenex_478 Int)) (or (< v_prenex_478 main_x) (< v_prenex_477 main_y) (<= (+ main_x 1) v_prenex_478) (<= 0 (* 2 (select main_a v_prenex_478))) (<= (select main_a v_prenex_477) (+ (select main_a v_prenex_478) 1000)) (<= (* 2 (select main_a v_prenex_477)) 2000))) (forall ((v_prenex_493 Int) (v_prenex_494 Int)) (or (<= 0 (select main_a v_prenex_494)) (< v_prenex_494 main_x) (<= (+ main_x 1) v_prenex_494) (<= 0 (* 2 (select main_a v_prenex_494))) (<= (* 2 (select main_a v_prenex_493)) 2000) (<= (+ (select main_a v_prenex_494) (select main_a v_prenex_493)) 1000))) (forall ((v_prenex_249 Int) (v_prenex_250 Int)) (or (<= (select main_a v_prenex_249) 1000) (<= 0 (select main_a v_prenex_250)) (<= (+ main_y 1) v_prenex_249) (<= (+ (select main_a v_prenex_250) (select main_a v_prenex_249)) 1000) (< v_prenex_250 main_x) (<= (+ main_x 1) v_prenex_250))) (or (forall ((v_prenex_505 Int)) (or (<= (+ main_x 1) v_prenex_505) (< v_prenex_505 main_x) (<= 0 (* 2 (select main_a v_prenex_505))))) (forall ((v_prenex_504 Int)) (or (<= (+ main_y 1) v_prenex_504) (<= (* 2 (select main_a v_prenex_504)) 2000)))) (forall ((v_prenex_277 Int) (v_prenex_278 Int)) (or (< v_prenex_277 main_y) (<= 0 (select main_a v_prenex_278)) (< v_prenex_278 main_x) (<= (+ main_x 1) v_prenex_278) (<= (+ (select main_a v_prenex_278) (select main_a v_prenex_277)) 1000))) (or (forall ((v_prenex_284 Int)) (or (<= 0 (* 2 (select main_a v_prenex_284))) (< v_prenex_284 main_x))) (forall ((v_prenex_283 Int)) (or (<= (select main_a v_prenex_283) 1000) (< v_prenex_283 main_y) (<= (+ main_y 1) v_prenex_283)))) (forall ((v_prenex_516 Int) (v_prenex_517 Int)) (or (<= (select main_a v_prenex_516) (+ (select main_a v_prenex_517) 1000)) (<= (+ main_y 1) v_prenex_516) (<= (* 2 (select main_a v_prenex_516)) 2000) (< v_prenex_517 main_x) (<= 0 (select main_a v_prenex_517)) (<= (+ main_x 1) v_prenex_517))) (or (forall ((v_prenex_531 Int)) (<= (select main_a v_prenex_531) 1000)) (forall ((v_prenex_532 Int)) (or (<= (+ main_x 1) v_prenex_532) (<= 0 (select main_a v_prenex_532)) (<= 0 (* 2 (select main_a v_prenex_532))) (< v_prenex_532 main_x)))) (forall ((v_prenex_307 Int) (v_prenex_306 Int)) (or (<= (+ main_x 1) v_prenex_307) (<= 0 (* 2 (select main_a v_prenex_307))) (< v_prenex_307 main_x) (<= 0 (select main_a v_prenex_307)) (<= (select main_a v_prenex_306) (+ (select main_a v_prenex_307) 1000)) (<= (* 2 (select main_a v_prenex_306)) 2000))) (forall ((v_prenex_329 Int) (v_prenex_328 Int)) (or (<= 0 (* 2 (select main_a v_prenex_329))) (<= 0 (select main_a v_prenex_329)) (<= 1000 (+ (select main_a v_prenex_329) (select main_a v_prenex_328))) (<= (select main_a v_prenex_328) 1000) (< v_prenex_329 main_x) (<= (+ main_x 1) v_prenex_329) (<= (* 2 (select main_a v_prenex_328)) 2000))) (forall ((v_prenex_268 Int) (v_prenex_267 Int)) (or (<= (+ main_y 1) v_prenex_267) (<= 1000 (+ (select main_a v_prenex_268) (select main_a v_prenex_267))) (<= (+ main_x 1) v_prenex_268) (< v_prenex_268 main_x) (<= (select main_a v_prenex_267) 1000) (<= 0 (* 2 (select main_a v_prenex_268))))) (forall ((v_prenex_312 Int) (v_prenex_313 Int)) (or (< v_prenex_312 main_y) (<= (+ main_y 1) v_prenex_312) (<= (+ main_x 1) v_prenex_313) (< v_prenex_313 main_x) (<= (+ (select main_a v_prenex_313) (select main_a v_prenex_312)) 1000))) (or (forall ((v_prenex_527 Int)) (or (<= (select main_a v_prenex_527) 1000) (<= (+ main_y 1) v_prenex_527) (<= (* 2 (select main_a v_prenex_527)) 2000))) (forall ((v_prenex_528 Int)) (or (<= 0 (select main_a v_prenex_528)) (<= 0 (* 2 (select main_a v_prenex_528))) (<= (+ main_x 1) v_prenex_528) (< v_prenex_528 main_x)))) (forall ((v_prenex_413 Int) (v_prenex_414 Int)) (or (<= 1000 (+ (select main_a v_prenex_414) (select main_a v_prenex_413))) (<= 0 (* 2 (select main_a v_prenex_414))) (<= (+ main_x 1) v_prenex_414) (< v_prenex_414 main_x))) (forall ((v_prenex_497 Int) (v_prenex_498 Int)) (or (<= (+ main_y 1) v_prenex_497) (<= (+ (select main_a v_prenex_498) (select main_a v_prenex_497)) 1000) (<= (select main_a v_prenex_497) 1000) (< v_prenex_497 main_y))) (<= (- (- main_x) (- main_y)) (- 1)) (forall ((v_prenex_334 Int) (v_prenex_335 Int)) (or (<= (+ main_x 1) v_prenex_335) (< v_prenex_335 main_x) (<= (select main_a v_prenex_334) (+ (select main_a v_prenex_335) 1000)) (<= (select main_a v_prenex_334) 1000) (<= 0 (* 2 (select main_a v_prenex_335))))) (forall ((v_prenex_404 Int) (v_prenex_405 Int)) (or (<= (+ main_x 1) v_prenex_405) (<= (+ main_y 1) v_prenex_404) (<= (+ (select main_a v_prenex_405) (select main_a v_prenex_404)) 1000) (<= (select main_a v_prenex_404) 1000) (<= (* 2 (select main_a v_prenex_404)) 2000) (<= 0 (select main_a v_prenex_405)) (< v_prenex_405 main_x))) (forall ((v_prenex_424 Int) (v_prenex_423 Int)) (or (<= 0 (select main_a v_prenex_424)) (<= (select main_a v_prenex_423) (+ (select main_a v_prenex_424) 1000)) (<= (select main_a v_prenex_423) 1000) (<= (+ main_x 1) v_prenex_424) (<= (+ main_y 1) v_prenex_423) (< v_prenex_424 main_x))) (forall ((v_prenex_301 Int) (v_prenex_300 Int)) (or (<= (+ (select main_a v_prenex_301) (select main_a v_prenex_300)) 1000) (< v_prenex_301 main_x) (<= (+ main_x 1) v_prenex_301) (<= 0 (select main_a v_prenex_301)))) (forall ((v_prenex_425 Int) (v_prenex_426 Int)) (or (<= (+ (select main_a v_prenex_426) (select main_a v_prenex_425)) 1000) (< v_prenex_425 main_y) (<= (+ main_y 1) v_prenex_425) (<= (+ main_x 1) v_prenex_426) (<= (* 2 (select main_a v_prenex_425)) 2000))) (or (forall ((v_prenex_436 Int)) (<= 0 (* 2 (select main_a v_prenex_436)))) (forall ((v_prenex_435 Int)) (or (<= (* 2 (select main_a v_prenex_435)) 2000) (<= (+ main_y 1) v_prenex_435) (< v_prenex_435 main_y)))) (forall ((v_prenex_343 Int) (v_prenex_344 Int)) (or (< v_prenex_344 main_x) (<= 0 (select main_a v_prenex_344)) (<= (* 2 (select main_a v_prenex_343)) 2000) (<= (+ main_x 1) v_prenex_344) (<= (select main_a v_prenex_343) (+ (select main_a v_prenex_344) 1000)))) (forall ((v_prenex_534 Int) (v_prenex_533 Int)) (or (< v_prenex_534 main_x) (<= 1000 (+ (select main_a v_prenex_534) (select main_a v_prenex_533))) (<= (+ main_x 1) v_prenex_534) (<= (* 2 (select main_a v_prenex_533)) 2000) (< v_prenex_533 main_y) (<= 0 (select main_a v_prenex_534)))) (or (forall ((v_prenex_363 Int)) (or (<= 0 (* 2 (select main_a v_prenex_363))) (< v_prenex_363 main_x) (<= (+ main_x 1) v_prenex_363))) (forall ((v_prenex_361 Int)) (or (<= (select main_a v_prenex_361) 1000) (< v_prenex_361 main_y)))) (or (forall ((v_prenex_508 Int)) (or (< v_prenex_508 main_y) (<= (* 2 (select main_a v_prenex_508)) 2000))) (forall ((v_prenex_246 Int)) (or (<= 0 (select main_a v_prenex_246)) (<= (+ main_x 1) v_prenex_246) (< v_prenex_246 main_x)))) (or (forall ((v_prenex_295 Int)) (or (<= 0 (* 2 (select main_a v_prenex_295))) (<= 0 (select main_a v_prenex_295)) (< v_prenex_295 main_x) (<= (+ main_x 1) v_prenex_295))) (forall ((v_prenex_294 Int)) (or (< v_prenex_294 main_y) (<= (select main_a v_prenex_294) 1000) (<= (* 2 (select main_a v_prenex_294)) 2000)))) (forall ((v_prenex_411 Int) (v_prenex_412 Int)) (or (< v_prenex_412 main_x) (<= (* 2 (select main_a v_prenex_411)) 2000) (<= 1000 (+ (select main_a v_prenex_412) (select main_a v_prenex_411))) (<= (+ main_x 1) v_prenex_412) (< v_prenex_411 main_y) (<= 0 (* 2 (select main_a v_prenex_412))))) (forall ((v_prenex_489 Int) (v_prenex_490 Int)) (or (<= (+ main_x 1) v_prenex_490) (<= (select main_a v_prenex_489) 1000) (< v_prenex_489 main_y) (<= 0 (select main_a v_prenex_490)) (< v_prenex_490 main_x) (<= 1000 (+ (select main_a v_prenex_490) (select main_a v_prenex_489))))) (forall ((v_prenex_332 Int) (v_prenex_333 Int)) (or (< v_prenex_333 main_x) (<= (* 2 (select main_a v_prenex_332)) 2000) (<= (select main_a v_prenex_332) (+ (select main_a v_prenex_333) 1000)) (<= (+ main_y 1) v_prenex_332) (<= 0 (* 2 (select main_a v_prenex_333))) (<= (+ main_x 1) v_prenex_333) (<= (select main_a v_prenex_332) 1000))) (forall ((v_prenex_286 Int) (v_prenex_285 Int)) (or (<= (select main_a v_prenex_285) 1000) (<= (select main_a v_prenex_285) (+ (select main_a v_prenex_286) 1000)) (<= (* 2 (select main_a v_prenex_285)) 2000) (< v_prenex_285 main_y) (<= (+ main_y 1) v_prenex_285))) (forall ((v_prenex_345 Int) (v_prenex_346 Int)) (or (< v_prenex_345 main_y) (<= (* 2 (select main_a v_prenex_345)) 2000) (<= 0 (select main_a v_prenex_346)) (<= (+ (select main_a v_prenex_346) (select main_a v_prenex_345)) 1000) (<= (+ main_x 1) v_prenex_346) (< v_prenex_346 main_x))) (forall ((v_prenex_358 Int) (v_prenex_357 Int)) (or (< v_prenex_358 main_x) (<= (+ main_x 1) v_prenex_358) (<= 0 (select main_a v_prenex_358)) (<= (select main_a v_prenex_357) 1000) (<= (select main_a v_prenex_357) (+ (select main_a v_prenex_358) 1000)))) (forall ((v_prenex_365 Int) (v_prenex_364 Int)) (or (<= 0 (* 2 (select main_a v_prenex_365))) (<= (select main_a v_prenex_364) (+ (select main_a v_prenex_365) 1000)) (< v_prenex_365 main_x) (<= (+ main_x 1) v_prenex_365) (<= (+ main_y 1) v_prenex_364) (<= (select main_a v_prenex_364) 1000))) (or (forall ((v_prenex_442 Int)) (or (<= (select main_a v_prenex_442) 1000) (<= (+ main_y 1) v_prenex_442))) (forall ((v_prenex_443 Int)) (or (< v_prenex_443 main_x) (<= 0 (* 2 (select main_a v_prenex_443))) (<= (+ main_x 1) v_prenex_443) (<= 0 (select main_a v_prenex_443))))) (or (forall ((v_prenex_408 Int)) (or (<= (* 2 (select main_a v_prenex_408)) 2000) (<= (select main_a v_prenex_408) 1000))) (forall ((v_prenex_410 Int)) (or (< v_prenex_410 main_x) (<= (+ main_x 1) v_prenex_410) (<= 0 (* 2 (select main_a v_prenex_410)))))) (forall ((v_prenex_370 Int) (v_prenex_371 Int)) (or (<= 1000 (+ (select main_a v_prenex_371) (select main_a v_prenex_370))) (< v_prenex_371 main_x) (<= 0 (select main_a v_prenex_371)) (<= (+ main_y 1) v_prenex_370) (<= (+ main_x 1) v_prenex_371))) (or (forall ((v_prenex_524 Int)) (<= (select main_a v_prenex_524) 1000)) (forall ((v_prenex_525 Int)) (or (< v_prenex_525 main_x) (<= 0 (* 2 (select main_a v_prenex_525))) (<= 0 (select main_a v_prenex_525)) (<= (+ main_x 1) v_prenex_525)))) (forall ((v_prenex_550 Int) (v_prenex_551 Int)) (or (<= (+ main_y 1) v_prenex_550) (<= (* 2 (select main_a v_prenex_550)) 2000) (<= 0 (select main_a v_prenex_551)) (<= (+ (select main_a v_prenex_551) (select main_a v_prenex_550)) 1000) (< v_prenex_551 main_x) (<= (+ main_x 1) v_prenex_551))) (forall ((v_prenex_291 Int)) (or (<= (* 2 (select main_a v_prenex_291)) 2000) (< v_prenex_291 main_y) (<= (+ main_y 1) v_prenex_291))) (forall ((v_prenex_431 Int) (v_prenex_432 Int)) (or (<= (+ main_x 1) v_prenex_432) (<= 0 (* 2 (select main_a v_prenex_432))) (<= (+ (select main_a v_prenex_432) (select main_a v_prenex_431)) 1000) (< v_prenex_431 main_y) (< v_prenex_432 main_x) (<= (* 2 (select main_a v_prenex_431)) 2000))) (forall ((v_prenex_390 Int) (v_prenex_391 Int)) (or (<= (+ main_x 1) v_prenex_391) (<= (select main_a v_prenex_390) (+ (select main_a v_prenex_391) 1000)) (<= 0 (select main_a v_prenex_391)) (<= 0 (* 2 (select main_a v_prenex_391))) (< v_prenex_391 main_x) (<= (select main_a v_prenex_390) 1000))) (or (forall ((v_prenex_479 Int)) (or (<= (* 2 (select main_a v_prenex_479)) 2000) (<= (select main_a v_prenex_479) 1000))) (forall ((v_prenex_480 Int)) (or (<= 0 (* 2 (select main_a v_prenex_480))) (<= 0 (select main_a v_prenex_480)) (< v_prenex_480 main_x) (<= (+ main_x 1) v_prenex_480)))) (forall ((v_prenex_468 Int) (v_prenex_467 Int)) (or (< v_prenex_468 main_x) (<= (+ main_x 1) v_prenex_468) (<= 0 (* 2 (select main_a v_prenex_468))) (<= (select main_a v_prenex_467) 1000) (<= (select main_a v_prenex_467) (+ (select main_a v_prenex_468) 1000)) (<= 0 (select main_a v_prenex_468)))) (forall ((v_prenex_359 Int) (v_prenex_360 Int)) (or (<= (select main_a v_prenex_359) 1000) (<= (+ main_y 1) v_prenex_359) (<= (* 2 (select main_a v_prenex_359)) 2000) (< v_prenex_359 main_y) (<= (+ (select main_a v_prenex_360) (select main_a v_prenex_359)) 1000))) (forall ((v_prenex_444 Int) (v_prenex_445 Int)) (or (<= (* 2 (select main_a v_prenex_444)) 2000) (<= (select main_a v_prenex_444) (+ (select main_a v_prenex_445) 1000)) (<= (+ main_y 1) v_prenex_444) (<= 0 (select main_a v_prenex_445)) (<= (+ main_x 1) v_prenex_445) (< v_prenex_445 main_x))) (forall ((v_prenex_383 Int) (v_prenex_382 Int)) (or (< v_prenex_383 main_x) (<= (select main_a v_prenex_382) 1000) (< v_prenex_382 main_y) (<= (+ main_y 1) v_prenex_382) (<= (select main_a v_prenex_382) (+ (select main_a v_prenex_383) 1000)))) (forall ((v_prenex_482 Int) (v_prenex_481 Int)) (or (<= (* 2 (select main_a v_prenex_481)) 2000) (<= (+ main_y 1) v_prenex_481) (<= (+ (select main_a v_prenex_482) (select main_a v_prenex_481)) 1000) (<= (+ main_x 1) v_prenex_482) (<= 0 (select main_a v_prenex_482)) (< v_prenex_482 main_x))) (forall ((v_prenex_446 Int) (v_prenex_447 Int)) (or (<= (+ main_x 1) v_prenex_447) (<= (select main_a v_prenex_446) 1000) (<= 0 (* 2 (select main_a v_prenex_447))) (<= 0 (select main_a v_prenex_447)) (< v_prenex_447 main_x) (<= 1000 (+ (select main_a v_prenex_447) (select main_a v_prenex_446))))) (forall ((v_prenex_381 Int) (v_prenex_380 Int)) (or (<= (+ (select main_a v_prenex_381) (select main_a v_prenex_380)) 1000) (< v_prenex_381 main_x) (<= 0 (select main_a v_prenex_381)) (<= 0 (* 2 (select main_a v_prenex_381))) (<= (+ main_x 1) v_prenex_381))) (or (forall ((v_prenex_496 Int)) (or (<= (+ main_x 1) v_prenex_496) (<= 0 (select main_a v_prenex_496)) (< v_prenex_496 main_x) (<= 0 (* 2 (select main_a v_prenex_496))))) (forall ((v_prenex_495 Int)) (or (<= (* 2 (select main_a v_prenex_495)) 2000) (<= (+ main_y 1) v_prenex_495)))) (or (forall ((v_prenex_508 Int)) (or (< v_prenex_508 main_y) (<= (* 2 (select main_a v_prenex_508)) 2000))) (forall ((v_prenex_509 Int)) (or (< v_prenex_509 main_x) (<= 0 (* 2 (select main_a v_prenex_509))) (<= (+ main_x 1) v_prenex_509)))) (forall ((v_prenex_518 Int) (v_prenex_519 Int)) (or (< v_prenex_518 main_y) (< v_prenex_519 main_x) (<= (+ main_y 1) v_prenex_518) (<= 1000 (+ (select main_a v_prenex_519) (select main_a v_prenex_518))) (<= (select main_a v_prenex_518) 1000))) (or (forall ((v_prenex_316 Int)) (<= (* 2 (select main_a v_prenex_316)) 2000)) (forall ((v_prenex_245 Int)) (or (<= (+ main_x 1) v_prenex_245) (<= 0 (select main_a v_prenex_245)) (< v_prenex_245 main_x)))) (forall ((v_prenex_428 Int) (v_prenex_427 Int)) (or (< v_prenex_427 main_y) (<= (+ main_y 1) v_prenex_427) (< v_prenex_428 main_x) (<= (select main_a v_prenex_427) (+ (select main_a v_prenex_428) 1000)) (<= (+ main_x 1) v_prenex_428))) (or (forall ((v_prenex_462 Int)) (<= (* 2 (select main_a v_prenex_462)) 2000)) (forall ((v_prenex_463 Int)) (or (< v_prenex_463 main_x) (<= (+ main_x 1) v_prenex_463) (<= 0 (select main_a v_prenex_463)) (<= 0 (* 2 (select main_a v_prenex_463)))))) (forall ((v_prenex_512 Int) (v_prenex_513 Int)) (or (<= (+ main_y 1) v_prenex_512) (<= 0 (* 2 (select main_a v_prenex_513))) (<= (+ (select main_a v_prenex_513) (select main_a v_prenex_512)) 1000) (<= (select main_a v_prenex_512) 1000) (<= (* 2 (select main_a v_prenex_512)) 2000) (< v_prenex_513 main_x) (<= (+ main_x 1) v_prenex_513))) (forall ((v_prenex_473 Int) (v_prenex_474 Int)) (or (<= 1000 (+ (select main_a v_prenex_474) (select main_a v_prenex_473))) (< v_prenex_474 main_x) (<= (+ main_x 1) v_prenex_474) (<= (+ main_y 1) v_prenex_473) (< v_prenex_473 main_y))) (forall ((v_prenex_376 Int) (v_prenex_377 Int)) (or (<= 0 (* 2 (select main_a v_prenex_377))) (<= 1000 (+ (select main_a v_prenex_377) (select main_a v_prenex_376))) (<= (select main_a v_prenex_376) 1000) (< v_prenex_377 main_x) (<= (+ main_x 1) v_prenex_377))) (forall ((v_prenex_262 Int) (v_prenex_261 Int)) (or (<= (+ (select main_a v_prenex_262) (select main_a v_prenex_261)) 1000) (<= 0 (* 2 (select main_a v_prenex_262))) (< v_prenex_262 main_x) (<= (+ main_x 1) v_prenex_262))) (or (forall ((v_prenex_406 Int)) (or (<= (+ main_y 1) v_prenex_406) (<= (* 2 (select main_a v_prenex_406)) 2000))) (forall ((v_prenex_407 Int)) (or (<= 0 (select main_a v_prenex_407)) (< v_prenex_407 main_x) (<= (+ main_x 1) v_prenex_407) (<= 0 (* 2 (select main_a v_prenex_407)))))) (forall ((v_prenex_321 Int) (v_prenex_320 Int)) (or (<= (+ main_x 1) v_prenex_321) (< v_prenex_321 main_x) (<= 0 (select main_a v_prenex_321)) (<= 1000 (+ (select main_a v_prenex_321) (select main_a v_prenex_320))) (<= (+ main_y 1) v_prenex_320) (<= (* 2 (select main_a v_prenex_320)) 2000))) (forall ((v_prenex_350 Int) (v_prenex_349 Int)) (or (<= (select main_a v_prenex_349) 1000) (<= (+ main_x 1) v_prenex_350) (< v_prenex_349 main_y) (<= 1000 (+ (select main_a v_prenex_350) (select main_a v_prenex_349))) (<= (+ main_y 1) v_prenex_349))) (forall ((v_prenex_310 Int) (v_prenex_311 Int)) (or (<= 0 (select main_a v_prenex_311)) (<= (+ main_x 1) v_prenex_311) (<= 1000 (+ (select main_a v_prenex_311) (select main_a v_prenex_310))) (< v_prenex_311 main_x))) (forall ((v_prenex_269 Int) (v_prenex_270 Int)) (or (<= 1000 (+ (select main_a v_prenex_270) (select main_a v_prenex_269))) (<= (+ main_x 1) v_prenex_270) (<= 0 (select main_a v_prenex_270)) (<= 0 (* 2 (select main_a v_prenex_270))) (< v_prenex_270 main_x))) (forall ((v_prenex_289 Int) (v_prenex_290 Int)) (or (<= 0 (* 2 (select main_a v_prenex_290))) (<= (select main_a v_prenex_289) 1000) (<= 1000 (+ (select main_a v_prenex_290) (select main_a v_prenex_289))) (< v_prenex_290 main_x) (<= (+ main_x 1) v_prenex_290) (<= 0 (select main_a v_prenex_290)))) (forall ((v_prenex_352 Int) (v_prenex_351 Int)) (or (<= (select main_a v_prenex_351) (+ (select main_a v_prenex_352) 1000)) (<= (+ main_y 1) v_prenex_351) (< v_prenex_352 main_x) (<= (* 2 (select main_a v_prenex_351)) 2000) (<= (+ main_x 1) v_prenex_352) (<= 0 (* 2 (select main_a v_prenex_352))))) (forall ((v_prenex_396 Int) (v_prenex_397 Int)) (or (<= 0 (* 2 (select main_a v_prenex_397))) (<= (select main_a v_prenex_396) 1000) (<= 0 (select main_a v_prenex_397)) (<= (* 2 (select main_a v_prenex_396)) 2000) (<= (select main_a v_prenex_396) (+ (select main_a v_prenex_397) 1000)) (< v_prenex_397 main_x) (<= (+ main_x 1) v_prenex_397))) (or (forall ((v_prenex_524 Int)) (<= (select main_a v_prenex_524) 1000)) (forall ((v_prenex_526 Int)) (or (< v_prenex_526 main_x) (<= 0 (* 2 (select main_a v_prenex_526))) (<= (+ main_x 1) v_prenex_526)))) (forall ((v_prenex_523 Int) (v_prenex_522 Int)) (or (< v_prenex_522 main_y) (<= 0 (* 2 (select main_a v_prenex_523))) (<= (+ (select main_a v_prenex_523) (select main_a v_prenex_522)) 1000) (<= (+ main_x 1) v_prenex_523) (<= (select main_a v_prenex_522) 1000) (< v_prenex_523 main_x) (<= (* 2 (select main_a v_prenex_522)) 2000))) (forall ((v_prenex_303 Int) (v_prenex_302 Int)) (or (<= (+ main_y 1) v_prenex_302) (<= 0 (select main_a v_prenex_303)) (<= (* 2 (select main_a v_prenex_302)) 2000) (<= (select main_a v_prenex_302) 1000) (< v_prenex_303 main_x) (<= 1000 (+ (select main_a v_prenex_303) (select main_a v_prenex_302))) (<= (+ main_x 1) v_prenex_303))) (or (forall ((v_prenex_462 Int)) (<= (* 2 (select main_a v_prenex_462)) 2000)) (forall ((v_prenex_464 Int)) (or (<= (+ main_x 1) v_prenex_464) (<= 0 (* 2 (select main_a v_prenex_464))) (< v_prenex_464 main_x)))) (forall ((v_prenex_549 Int) (v_prenex_548 Int)) (or (<= (+ (select main_a v_prenex_549) (select main_a v_prenex_548)) 1000) (<= 0 (* 2 (select main_a v_prenex_549))) (< v_prenex_549 main_x) (<= (select main_a v_prenex_548) 1000) (<= (+ main_x 1) v_prenex_549) (<= (* 2 (select main_a v_prenex_548)) 2000))) (forall ((v_prenex_538 Int) (v_prenex_537 Int)) (or (< v_prenex_538 main_x) (<= (* 2 (select main_a v_prenex_537)) 2000) (<= (+ main_y 1) v_prenex_537) (< v_prenex_537 main_y) (<= (+ (select main_a v_prenex_538) (select main_a v_prenex_537)) 1000))) (or (forall ((v_prenex_294 Int)) (or (< v_prenex_294 main_y) (<= (select main_a v_prenex_294) 1000) (<= (* 2 (select main_a v_prenex_294)) 2000))) (forall ((v_prenex_244 Int)) (or (<= 0 (* 2 (select main_a v_prenex_244))) (< v_prenex_244 main_x) (<= (+ main_x 1) v_prenex_244)))) (forall ((v_prenex_264 Int) (v_prenex_263 Int)) (or (<= 0 (select main_a v_prenex_264)) (<= 1000 (+ (select main_a v_prenex_264) (select main_a v_prenex_263))) (<= (select main_a v_prenex_263) 1000) (< v_prenex_264 main_x) (<= (+ main_x 1) v_prenex_264))) (forall ((v_prenex_499 Int) (v_prenex_500 Int)) (or (<= 0 (* 2 (select main_a v_prenex_500))) (< v_prenex_500 main_x) (<= (select main_a v_prenex_499) (+ (select main_a v_prenex_500) 1000)) (<= (select main_a v_prenex_499) 1000) (<= (* 2 (select main_a v_prenex_499)) 2000) (<= (+ main_x 1) v_prenex_500) (< v_prenex_499 main_y))) (forall ((v_prenex_460 Int) (v_prenex_461 Int)) (or (<= (select main_a v_prenex_460) (+ (select main_a v_prenex_461) 1000)) (<= (+ main_x 1) v_prenex_461) (<= (* 2 (select main_a v_prenex_460)) 2000) (< v_prenex_461 main_x) (< v_prenex_460 main_y) (<= (select main_a v_prenex_460) 1000) (<= 0 (select main_a v_prenex_461)))) (forall ((v_prenex_259 Int) (v_prenex_260 Int)) (or (<= (+ main_x 1) v_prenex_260) (< v_prenex_259 main_y) (<= (+ (select main_a v_prenex_260) (select main_a v_prenex_259)) 1000) (<= (+ main_y 1) v_prenex_259) (<= (select main_a v_prenex_259) 1000))) (forall ((v_prenex_309 Int) (v_prenex_308 Int)) (or (<= (+ main_x 1) v_prenex_309) (<= (select main_a v_prenex_308) (+ (select main_a v_prenex_309) 1000)) (<= (select main_a v_prenex_308) 1000) (<= (* 2 (select main_a v_prenex_308)) 2000) (<= (+ main_y 1) v_prenex_308) (<= 0 (select main_a v_prenex_309)) (< v_prenex_309 main_x))) (forall ((v_prenex_455 Int) (v_prenex_454 Int)) (or (<= (select main_a v_prenex_454) (+ (select main_a v_prenex_455) 1000)) (< v_prenex_455 main_x) (<= (+ main_x 1) v_prenex_455) (<= 0 (select main_a v_prenex_455)))) (forall ((v_prenex_457 Int) (v_prenex_456 Int)) (or (< v_prenex_457 main_x) (<= 1000 (+ (select main_a v_prenex_457) (select main_a v_prenex_456))) (<= 0 (* 2 (select main_a v_prenex_457))) (<= (* 2 (select main_a v_prenex_456)) 2000) (<= (select main_a v_prenex_456) 1000) (<= (+ main_x 1) v_prenex_457) (< v_prenex_456 main_y))) (forall ((v_prenex_385 Int) (v_prenex_384 Int)) (or (<= (select main_a v_prenex_384) 1000) (<= (+ main_y 1) v_prenex_384) (<= (+ (select main_a v_prenex_385) (select main_a v_prenex_384)) 1000) (< v_prenex_385 main_x) (<= (+ main_x 1) v_prenex_385) (<= 0 (select main_a v_prenex_385)))) (forall ((v_prenex_420 Int) (v_prenex_419 Int)) (or (<= 1000 (+ (select main_a v_prenex_420) (select main_a v_prenex_419))) (<= (* 2 (select main_a v_prenex_419)) 2000) (<= (+ main_y 1) v_prenex_419) (<= 0 (select main_a v_prenex_420)) (<= (+ main_x 1) v_prenex_420) (< v_prenex_420 main_x))) (forall ((v_prenex_354 Int) (v_prenex_353 Int)) (or (<= (+ main_x 1) v_prenex_354) (<= (* 2 (select main_a v_prenex_353)) 2000) (<= 1000 (+ (select main_a v_prenex_354) (select main_a v_prenex_353))) (<= 0 (select main_a v_prenex_354)) (< v_prenex_354 main_x))) (forall ((v_prenex_297 Int) (v_prenex_296 Int)) (or (<= (* 2 (select main_a v_prenex_296)) 2000) (< v_prenex_297 main_x) (<= 0 (* 2 (select main_a v_prenex_297))) (<= (+ main_x 1) v_prenex_297) (<= 1000 (+ (select main_a v_prenex_297) (select main_a v_prenex_296))))) (forall ((v_prenex_288 Int) (v_prenex_287 Int)) (or (<= (+ main_x 1) v_prenex_288) (<= (* 2 (select main_a v_prenex_287)) 2000) (< v_prenex_288 main_x) (<= (+ (select main_a v_prenex_288) (select main_a v_prenex_287)) 1000) (<= 0 (* 2 (select main_a v_prenex_288))))) (forall ((v_prenex_293 Int) (v_prenex_292 Int)) (or (<= (select main_a v_prenex_292) 1000) (<= (+ (select main_a v_prenex_293) (select main_a v_prenex_292)) 1000) (< v_prenex_293 main_x) (< v_prenex_292 main_y) (<= (+ main_y 1) v_prenex_292))) (forall ((v_prenex_389 Int) (v_prenex_388 Int)) (or (<= (select main_a v_prenex_388) 1000) (<= 0 (select main_a v_prenex_389)) (<= (+ main_x 1) v_prenex_389) (< v_prenex_389 main_x) (<= 1000 (+ (select main_a v_prenex_389) (select main_a v_prenex_388))) (<= (* 2 (select main_a v_prenex_388)) 2000))) (or (forall ((v_prenex_475 Int)) (or (<= (+ main_y 1) v_prenex_475) (<= (* 2 (select main_a v_prenex_475)) 2000) (<= (select main_a v_prenex_475) 1000))) (forall ((v_prenex_476 Int)) (or (<= (+ main_x 1) v_prenex_476) (< v_prenex_476 main_x) (<= 0 (* 2 (select main_a v_prenex_476)))))) (forall ((v_prenex_400 Int) (v_prenex_401 Int)) (or (<= (+ main_x 1) v_prenex_401) (<= 0 (* 2 (select main_a v_prenex_401))) (< v_prenex_401 main_x) (<= (* 2 (select main_a v_prenex_400)) 2000) (<= 1000 (+ (select main_a v_prenex_401) (select main_a v_prenex_400))) (<= 0 (select main_a v_prenex_401)))) (forall ((v_prenex_392 Int) (v_prenex_393 Int)) (or (< v_prenex_392 main_y) (<= (select main_a v_prenex_392) 1000) (<= 1000 (+ (select main_a v_prenex_393) (select main_a v_prenex_392))) (<= (+ main_y 1) v_prenex_392))) (or (forall ((v_prenex_452 Int)) (or (<= (* 2 (select main_a v_prenex_452)) 2000) (<= (+ main_y 1) v_prenex_452) (< v_prenex_452 main_y) (<= (select main_a v_prenex_452) 1000))) (forall ((v_prenex_453 Int)) (<= 0 (* 2 (select main_a v_prenex_453))))) (forall ((v_prenex_318 Int) (v_prenex_319 Int)) (or (< v_prenex_319 main_x) (< v_prenex_318 main_y) (<= 0 (select main_a v_prenex_319)) (<= (+ main_x 1) v_prenex_319) (<= 1000 (+ (select main_a v_prenex_319) (select main_a v_prenex_318))))) (forall ((v_prenex_491 Int) (v_prenex_492 Int)) (or (<= (select main_a v_prenex_491) 1000) (<= (select main_a v_prenex_491) (+ (select main_a v_prenex_492) 1000)) (< v_prenex_491 main_y) (<= (+ main_y 1) v_prenex_491))) (forall ((v_prenex_514 Int) (v_prenex_515 Int)) (or (<= 1000 (+ (select main_a v_prenex_515) (select main_a v_prenex_514))) (<= (+ main_x 1) v_prenex_515) (< v_prenex_515 main_x) (<= 0 (* 2 (select main_a v_prenex_515))) (< v_prenex_514 main_y))) (or (forall ((v_prenex_451 Int)) (or (<= 0 (* 2 (select main_a v_prenex_451))) (<= (+ main_x 1) v_prenex_451))) (forall ((v_prenex_450 Int)) (or (<= (* 2 (select main_a v_prenex_450)) 2000) (< v_prenex_450 main_y) (<= (+ main_y 1) v_prenex_450)))) (forall ((v_prenex_543 Int) (v_prenex_544 Int)) (or (<= (+ (select main_a v_prenex_544) (select main_a v_prenex_543)) 1000) (<= (+ main_x 1) v_prenex_544) (< v_prenex_544 main_x) (<= (select main_a v_prenex_543) 1000) (< v_prenex_543 main_y) (<= 0 (select main_a v_prenex_544)))) (or (forall ((v_prenex_342 Int)) (or (<= 0 (* 2 (select main_a v_prenex_342))) (< v_prenex_342 main_x) (<= (+ main_x 1) v_prenex_342))) (forall ((v_prenex_340 Int)) (or (< v_prenex_340 main_y) (<= (* 2 (select main_a v_prenex_340)) 2000)))) (forall ((v_prenex_369 Int) (v_prenex_368 Int)) (or (<= 0 (* 2 (select main_a v_prenex_369))) (<= (+ main_x 1) v_prenex_369) (<= (+ (select main_a v_prenex_369) (select main_a v_prenex_368)) 1000) (<= (select main_a v_prenex_368) 1000) (< v_prenex_369 main_x))) (forall ((v_prenex_484 Int) (v_prenex_483 Int)) (or (<= 1000 (+ (select main_a v_prenex_484) (select main_a v_prenex_483))) (<= 0 (* 2 (select main_a v_prenex_484))) (< v_prenex_484 main_x) (<= (select main_a v_prenex_483) 1000) (<= 0 (select main_a v_prenex_484)) (<= (+ main_x 1) v_prenex_484) (<= (* 2 (select main_a v_prenex_483)) 2000))) (forall ((v_prenex_521 Int) (v_prenex_520 Int)) (or (<= (* 2 (select main_a v_prenex_520)) 2000) (<= (+ (select main_a v_prenex_521) (select main_a v_prenex_520)) 1000) (<= (+ main_x 1) v_prenex_521) (<= 0 (select main_a v_prenex_521)) (< v_prenex_521 main_x))) (or (forall ((v_prenex_316 Int)) (<= (* 2 (select main_a v_prenex_316)) 2000)) (forall ((v_prenex_317 Int)) (or (< v_prenex_317 main_x) (<= 0 (select main_a v_prenex_317)) (<= (+ main_x 1) v_prenex_317) (<= 0 (* 2 (select main_a v_prenex_317)))))) (forall ((v_prenex_398 Int) (v_prenex_399 Int)) (or (< v_prenex_398 main_y) (<= (* 2 (select main_a v_prenex_398)) 2000) (< v_prenex_399 main_x) (<= (select main_a v_prenex_398) (+ (select main_a v_prenex_399) 1000)) (<= (+ main_y 1) v_prenex_398))) (forall ((v_prenex_372 Int) (v_prenex_373 Int)) (or (<= 1000 (+ (select main_a v_prenex_373) (select main_a v_prenex_372))) (<= (+ main_x 1) v_prenex_373) (< v_prenex_373 main_x) (<= (+ main_y 1) v_prenex_372) (<= (* 2 (select main_a v_prenex_372)) 2000) (<= 0 (* 2 (select main_a v_prenex_373))))) (forall ((v_prenex_402 Int) (v_prenex_403 Int)) (or (<= (+ main_x 1) v_prenex_403) (<= (+ main_y 1) v_prenex_402) (< v_prenex_403 main_x) (<= (select main_a v_prenex_402) (+ (select main_a v_prenex_403) 1000)) (<= 0 (* 2 (select main_a v_prenex_403))))) (forall ((v_prenex_266 Int) (v_prenex_265 Int)) (or (<= (* 2 (select main_a v_prenex_265)) 2000) (<= 1000 (+ (select main_a v_prenex_266) (select main_a v_prenex_265))) (<= (select main_a v_prenex_265) 1000) (<= 0 (* 2 (select main_a v_prenex_266))) (< v_prenex_266 main_x) (<= (+ main_x 1) v_prenex_266))) (forall ((v_prenex_507 Int) (v_prenex_506 Int)) (or (<= 0 (* 2 (select main_a v_prenex_507))) (< v_prenex_507 main_x) (<= (select main_a v_prenex_506) (+ (select main_a v_prenex_507) 1000)) (<= (+ main_x 1) v_prenex_507))) (forall ((v_prenex_273 Int) (v_prenex_274 Int)) (or (<= (* 2 (select main_a v_prenex_273)) 2000) (< v_prenex_273 main_y) (<= 1000 (+ (select main_a v_prenex_274) (select main_a v_prenex_273))) (<= (select main_a v_prenex_273) 1000) (<= (+ main_y 1) v_prenex_273))) (forall ((v_prenex_469 Int) (v_prenex_470 Int)) (or (<= 0 (* 2 (select main_a v_prenex_470))) (< v_prenex_470 main_x) (<= (+ main_x 1) v_prenex_470) (<= 0 (select main_a v_prenex_470)) (<= 1000 (+ (select main_a v_prenex_470) (select main_a v_prenex_469))))) (forall ((v_prenex_338 Int) (v_prenex_339 Int)) (or (<= (+ main_y 1) v_prenex_338) (< v_prenex_339 main_x) (<= 1000 (+ (select main_a v_prenex_339) (select main_a v_prenex_338))) (<= (* 2 (select main_a v_prenex_338)) 2000) (< v_prenex_338 main_y))) (or (forall ((v_prenex_545 Int)) (<= (* 2 (select main_a v_prenex_545)) 2000)) (forall ((v_prenex_546 Int)) (or (< v_prenex_546 main_x) (<= (+ main_x 1) v_prenex_546) (<= 0 (select main_a v_prenex_546)) (<= 0 (* 2 (select main_a v_prenex_546)))))) (forall ((v_prenex_330 Int) (v_prenex_331 Int)) (or (<= (+ (select main_a v_prenex_331) (select main_a v_prenex_330)) 1000) (<= (select main_a v_prenex_330) 1000) (<= (+ main_x 1) v_prenex_331) (<= 0 (select main_a v_prenex_331)) (<= 0 (* 2 (select main_a v_prenex_331))) (< v_prenex_331 main_x))) (forall ((v_prenex_541 Int) (v_prenex_542 Int)) (or (<= (select main_a v_prenex_541) 1000) (< v_prenex_542 main_x) (< v_prenex_541 main_y) (<= 0 (* 2 (select main_a v_prenex_542))) (<= (+ main_x 1) v_prenex_542) (<= (+ (select main_a v_prenex_542) (select main_a v_prenex_541)) 1000))) (forall ((v_prenex_374 Int) (v_prenex_375 Int)) (or (<= (* 2 (select main_a v_prenex_374)) 2000) (< v_prenex_375 main_x) (<= (+ main_x 1) v_prenex_375) (<= 0 (select main_a v_prenex_375)) (<= (select main_a v_prenex_374) 1000) (<= (select main_a v_prenex_374) (+ (select main_a v_prenex_375) 1000)))) (forall ((v_prenex_336 Int) (v_prenex_337 Int)) (or (<= (select main_a v_prenex_336) (+ (select main_a v_prenex_337) 1000)) (< v_prenex_337 main_x) (<= 0 (* 2 (select main_a v_prenex_337))) (< v_prenex_336 main_y) (<= (+ main_x 1) v_prenex_337))) (forall ((v_prenex_486 Int) (v_prenex_485 Int)) (or (<= 0 (select main_a v_prenex_486)) (<= (select main_a v_prenex_485) (+ (select main_a v_prenex_486) 1000)) (<= (select main_a v_prenex_485) 1000) (< v_prenex_486 main_x) (<= (* 2 (select main_a v_prenex_485)) 2000) (<= 0 (* 2 (select main_a v_prenex_486))) (<= (+ main_x 1) v_prenex_486))) (or (forall ((v_prenex_326 Int)) (or (<= (+ main_y 1) v_prenex_326) (<= (* 2 (select main_a v_prenex_326)) 2000))) (forall ((v_prenex_327 Int)) (or (<= (+ main_x 1) v_prenex_327) (<= 0 (select main_a v_prenex_327)) (< v_prenex_327 main_x)))) (or (forall ((v_prenex_255 Int)) (or (<= (+ main_y 1) v_prenex_255) (< v_prenex_255 main_y) (<= (select main_a v_prenex_255) 1000))) (forall ((v_prenex_256 Int)) (<= 0 (* 2 (select main_a v_prenex_256))))) (forall ((v_prenex_282 Int) (v_prenex_281 Int)) (or (<= (+ main_y 1) v_prenex_281) (<= (* 2 (select main_a v_prenex_281)) 2000) (<= (select main_a v_prenex_281) (+ (select main_a v_prenex_282) 1000)) (< v_prenex_281 main_y) (<= (+ main_x 1) v_prenex_282))) (forall ((v_prenex_558 Int) (v_prenex_559 Int)) (or (< v_prenex_559 main_x) (<= (+ (select main_a v_prenex_559) (select main_a v_prenex_558)) 1000) (<= (select main_a v_prenex_558) 1000) (<= 0 (* 2 (select main_a v_prenex_559))) (<= 0 (select main_a v_prenex_559)) (<= (* 2 (select main_a v_prenex_558)) 2000) (<= (+ main_x 1) v_prenex_559))) (forall ((v_prenex_347 Int) (v_prenex_348 Int)) (or (< v_prenex_347 main_y) (< v_prenex_348 main_x) (<= 1000 (+ (select main_a v_prenex_348) (select main_a v_prenex_347))) (<= (select main_a v_prenex_347) 1000) (<= (+ main_x 1) v_prenex_348) (<= 0 (* 2 (select main_a v_prenex_348))))) (forall ((v_prenex_271 Int) (v_prenex_272 Int)) (or (<= (+ main_x 1) v_prenex_272) (<= 0 (select main_a v_prenex_272)) (<= (+ (select main_a v_prenex_272) (select main_a v_prenex_271)) 1000) (<= (+ main_y 1) v_prenex_271) (< v_prenex_272 main_x))) (forall ((v_prenex_394 Int) (v_prenex_395 Int)) (or (<= (+ main_x 1) v_prenex_395) (< v_prenex_395 main_x) (<= 0 (select main_a v_prenex_395)) (<= (+ (select main_a v_prenex_395) (select main_a v_prenex_394)) 1000) (<= (select main_a v_prenex_394) 1000))) (forall ((v_prenex_437 Int) (v_prenex_438 Int)) (or (<= (select main_a v_prenex_437) (+ (select main_a v_prenex_438) 1000)) (<= (* 2 (select main_a v_prenex_437)) 2000) (<= (+ main_y 1) v_prenex_437) (< v_prenex_437 main_y))) (forall ((v_prenex_378 Int) (v_prenex_379 Int)) (or (<= (select main_a v_prenex_378) 1000) (< v_prenex_379 main_x) (<= 0 (select main_a v_prenex_379)) (<= (+ main_x 1) v_prenex_379) (<= (select main_a v_prenex_378) (+ (select main_a v_prenex_379) 1000)) (<= (+ main_y 1) v_prenex_378))) (forall ((v_prenex_554 Int) (v_prenex_555 Int)) (or (< v_prenex_555 main_x) (<= (+ main_x 1) v_prenex_555) (<= 0 (* 2 (select main_a v_prenex_555))) (< v_prenex_554 main_y) (<= (+ (select main_a v_prenex_555) (select main_a v_prenex_554)) 1000))) (forall ((v_prenex_433 Int) (v_prenex_434 Int)) (or (<= (+ main_y 1) v_prenex_433) (< v_prenex_434 main_x) (<= 0 (select main_a v_prenex_434)) (<= (select main_a v_prenex_433) 1000) (<= 1000 (+ (select main_a v_prenex_434) (select main_a v_prenex_433))) (<= (+ main_x 1) v_prenex_434))) (or (forall ((v_prenex_275 Int)) (or (<= (select main_a v_prenex_275) 1000) (<= (+ main_y 1) v_prenex_275))) (forall ((v_prenex_276 Int)) (or (<= (+ main_x 1) v_prenex_276) (< v_prenex_276 main_x) (<= 0 (* 2 (select main_a v_prenex_276)))))) (or (forall ((v_prenex_430 Int)) (or (<= (+ main_x 1) v_prenex_430) (<= 0 (* 2 (select main_a v_prenex_430))))) (forall ((v_prenex_429 Int)) (or (< v_prenex_429 main_y) (<= (select main_a v_prenex_429) 1000) (<= (+ main_y 1) v_prenex_429)))) (forall ((v_prenex_547 Int)) (or (<= (+ main_x 1) v_prenex_547) (<= 0 (* 2 (select main_a v_prenex_547))) (<= 0 (select main_a v_prenex_547)) (< v_prenex_547 main_x))) (forall ((v_prenex_530 Int) (v_prenex_529 Int)) (or (< v_prenex_530 main_x) (<= 0 (* 2 (select main_a v_prenex_530))) (<= 0 (select main_a v_prenex_530)) (<= (+ (select main_a v_prenex_530) (select main_a v_prenex_529)) 1000) (<= (+ main_x 1) v_prenex_530))) (forall ((v_prenex_503 Int)) (or (<= 0 (* 2 (select main_a v_prenex_503))) (<= (+ main_x 1) v_prenex_503) (< v_prenex_503 main_x) (<= 0 (select main_a v_prenex_503)))) (forall ((v_prenex_253 Int) (v_prenex_254 Int)) (or (< v_prenex_254 main_x) (<= 1000 (+ (select main_a v_prenex_254) (select main_a v_prenex_253))) (<= 0 (select main_a v_prenex_254)) (<= (select main_a v_prenex_253) 1000) (<= (+ main_x 1) v_prenex_254) (<= (+ main_y 1) v_prenex_253))) (forall ((v_prenex_325 Int) (v_prenex_324 Int)) (or (<= (+ main_x 1) v_prenex_325) (<= 0 (* 2 (select main_a v_prenex_325))) (< v_prenex_325 main_x) (<= (+ (select main_a v_prenex_325) (select main_a v_prenex_324)) 1000) (<= (+ main_y 1) v_prenex_324))) (forall ((v_prenex_299 Int) (v_prenex_298 Int)) (or (<= (+ (select main_a v_prenex_299) (select main_a v_prenex_298)) 1000) (<= 0 (select main_a v_prenex_299)) (<= (+ main_x 1) v_prenex_299) (<= 0 (* 2 (select main_a v_prenex_299))) (<= (* 2 (select main_a v_prenex_298)) 2000) (< v_prenex_299 main_x) (<= (select main_a v_prenex_298) 1000))) (forall ((v_prenex_488 Int) (v_prenex_487 Int)) (or (<= (* 2 (select main_a v_prenex_487)) 2000) (<= (+ main_x 1) v_prenex_488) (<= (+ (select main_a v_prenex_488) (select main_a v_prenex_487)) 1000) (<= 0 (select main_a v_prenex_488)) (<= 0 (* 2 (select main_a v_prenex_488))) (< v_prenex_488 main_x))) (forall ((v_prenex_556 Int) (v_prenex_557 Int)) (or (< v_prenex_557 main_x) (<= (+ (select main_a v_prenex_557) (select main_a v_prenex_556)) 1000) (<= (+ main_x 1) v_prenex_557) (<= (* 2 (select main_a v_prenex_556)) 2000) (<= (select main_a v_prenex_556) 1000) (<= 0 (select main_a v_prenex_557)) (< v_prenex_556 main_y))) (forall ((v_prenex_323 Int) (v_prenex_322 Int)) (or (<= (* 2 (select main_a v_prenex_322)) 2000) (<= 1000 (+ (select main_a v_prenex_323) (select main_a v_prenex_322))) (< v_prenex_322 main_y) (<= (+ main_y 1) v_prenex_322))) (or (forall ((v_prenex_361 Int)) (or (<= (select main_a v_prenex_361) 1000) (< v_prenex_361 main_y))) (forall ((v_prenex_362 Int)) (or (<= (+ main_x 1) v_prenex_362) (<= 0 (select main_a v_prenex_362)) (<= 0 (* 2 (select main_a v_prenex_362))) (< v_prenex_362 main_x)))) (<= (+ main_y 1) main_x))} [2019-01-31 15:08:40,495 WARN L274 ngHoareTripleChecker]: Action: a := a[x := a[x] + 1];a := a[y := a[y] - 1]; [2019-01-31 15:08:40,495 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (store (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y (+ (select (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)) c_main_y) (- 1))) c_main_a_primed) [2019-01-31 15:08:40,617 WARN L276 ngHoareTripleChecker]: Post: {93#(forall ((v_idx_692 Int)) (or (= 0 (select main_a v_idx_692)) (<= (+ main_y 1) v_idx_692) (< v_idx_692 main_y)))} [2019-01-31 15:08:40,618 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:08:40,618 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:08:40,619 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[main_a] -> [-inf_0] v_1805 [b_236] v_1806 [b_237] v_1807 [b_238] v_1808 [b_239] v_1809 [inf_0], }, Substate: {ints: {v_1806 = [-inf; 1000]; v_1808 = [0; inf]}, 9 vars top, relations: {b_237 - b_238 = [-inf; 0]; b_236 - b_238 = [-inf; -1]; b_236 - b_237 = [-1; -1]; b_238 - b_239 = [-1; -1]; b_237 - b_239 = [-inf; -1]; b_236 - b_239 = [-inf; -2]; b_238 - main_y = [1; inf]; b_237 - main_y = [1; 1]; b_236 - main_y = [0; 0]; b_239 - main_y = [2; inf]; main_x - main_y = [1; inf]; b_238 - main_x = [0; 0]; b_237 - main_x = [-inf; 0]; b_236 - main_x = [-inf; -1]; b_239 - main_x = [1; 1]; v_1806 + v_1808 = [1000; 1000]; v_1806 - v_1808 = [-inf; 1000]}, }}} [2019-01-31 15:08:40,619 WARN L628 ntHoareTripleChecker]: (= (let ((.cse0 (store c_main_a c_main_x (+ (select c_main_a c_main_x) 1)))) (store .cse0 c_main_y (+ (select .cse0 c_main_y) (- 1)))) c_main_a_primed) (a := a[x := a[x] + 1];a := a[y := a[y] - 1];) [2019-01-31 15:08:40,620 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {[main_a] -> [-inf_0] v_1113 [b_154] v_1114 [b_155] v_1115 [b_182] v_1399 [b_157] v_1117 [inf_0], }, Substate: {ints: {v_1399 = [1000; 1000]; v_1114 = [0; 0]}, 8 vars top, relations: {b_155 - b_157 = [-inf; -1]; b_154 - b_157 = [-inf; -2]; b_154 - b_155 = [-1; -1]; b_157 - b_182 = [1; 1]; b_155 - b_182 = [-inf; 0]; b_154 - b_182 = [-inf; -1]; v_1114 + v_1399 = [1000; 1000]; v_1114 - v_1399 = [-1000; -1000]; b_157 - main_y = [2; inf]; b_155 - main_y = [1; 1]; b_182 - main_y = [1; inf]; b_154 - main_y = [0; 0]}, }}} [2019-01-31 15:08:40,620 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:08:41,732 WARN L214 ngHoareTripleChecker]: Soundness check failed for the following hoare triple [2019-01-31 15:08:41,732 WARN L217 ngHoareTripleChecker]: Expected: UNKNOWN Actual: INVALID [2019-01-31 15:08:41,732 WARN L219 ngHoareTripleChecker]: Solver was "Z3" in version "4.8.3" [2019-01-31 15:08:41,732 WARN L223 ngHoareTripleChecker]: -- [2019-01-31 15:08:41,733 WARN L224 ngHoareTripleChecker]: Pre: {96#(forall ((v_idx_699 Int) (v_idx_697 Int)) (and (or (and (<= 0 (* 2 (select c_main_a v_idx_699))) (or (and (<= (* 2 (select c_main_a v_idx_697)) 2000) (<= 1000 (+ (select c_main_a v_idx_697) (select c_main_a v_idx_699))) (<= (+ (select c_main_a v_idx_697) (select c_main_a v_idx_699)) 1000) (<= (select c_main_a v_idx_697) (+ (select c_main_a v_idx_699) 1000))) (and (<= 0 (* 2 (select c_main_a v_idx_699))) (< v_idx_697 c_main_y) (<= 0 (select c_main_a v_idx_699))) (and (<= 0 (* 2 (select c_main_a v_idx_699))) (<= (+ c_main_y 1) v_idx_697) (<= 0 (select c_main_a v_idx_699))))) (and (<= (+ c_main_x 1) v_idx_699) (or (and (<= (* 2 (select c_main_a v_idx_697)) 2000) (<= (select c_main_a v_idx_697) 1000)) (<= (+ c_main_y 1) v_idx_697) (< v_idx_697 c_main_y))) (and (< v_idx_699 c_main_x) (or (and (<= (* 2 (select c_main_a v_idx_697)) 2000) (<= (select c_main_a v_idx_697) 1000)) (<= (+ c_main_y 1) v_idx_697) (< v_idx_697 c_main_y)))) (<= (+ c_main_y 1) c_main_x) (<= (- (- c_main_x) (- c_main_y)) (- 1))))} [2019-01-31 15:08:41,733 WARN L228 ngHoareTripleChecker]: Action: assume a[x] == 1000; [2019-01-31 15:08:41,733 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (select c_main_a c_main_x) 1000) [2019-01-31 15:08:41,733 WARN L230 ngHoareTripleChecker]: Post: {97#false} [2019-01-31 15:08:41,733 WARN L263 ngHoareTripleChecker]: unsat core / model generation is disabled, enable it to get more details [2019-01-31 15:08:41,734 WARN L268 ngHoareTripleChecker]: -- [2019-01-31 15:08:41,734 WARN L269 ngHoareTripleChecker]: Simplified triple [2019-01-31 15:08:42,503 WARN L270 ngHoareTripleChecker]: Pre: {96#(and (or (forall ((v_prenex_799 Int)) (or (<= 0 (* 2 (select main_a v_prenex_799))) (< v_prenex_799 main_x) (<= 0 (select main_a v_prenex_799)))) (forall ((v_prenex_800 Int)) (or (<= (+ main_y 1) v_prenex_800) (< v_prenex_800 main_y) (<= (* 2 (select main_a v_prenex_800)) 2000)))) (forall ((v_prenex_664 Int) (v_prenex_665 Int)) (or (< v_prenex_664 main_x) (<= (* 2 (select main_a v_prenex_665)) 2000) (<= (select main_a v_prenex_665) (+ (select main_a v_prenex_664) 1000)) (<= 0 (* 2 (select main_a v_prenex_664))) (<= (+ main_y 1) v_prenex_665) (< v_prenex_665 main_y))) (forall ((v_idx_699 Int) (v_idx_697 Int)) (or (<= (* 2 (select main_a v_idx_697)) 2000) (<= 1000 (+ (select main_a v_idx_697) (select main_a v_idx_699))) (<= 0 (* 2 (select main_a v_idx_699))) (<= (+ main_x 1) v_idx_699) (<= (+ main_y 1) v_idx_697) (< v_idx_697 main_y) (<= 0 (select main_a v_idx_699)))) (forall ((v_prenex_820 Int) (v_prenex_819 Int)) (or (<= (* 2 (select main_a v_prenex_820)) 2000) (<= (+ main_y 1) v_prenex_820) (< v_prenex_820 main_y) (<= (+ (select main_a v_prenex_820) (select main_a v_prenex_819)) 1000))) (or (forall ((v_prenex_715 Int)) (or (< v_prenex_715 main_x) (<= 0 (select main_a v_prenex_715)))) (forall ((v_prenex_716 Int)) (or (<= (select main_a v_prenex_716) 1000) (< v_prenex_716 main_y) (<= (+ main_y 1) v_prenex_716) (<= (* 2 (select main_a v_prenex_716)) 2000)))) (forall ((v_prenex_587 Int) (v_prenex_588 Int)) (or (<= (+ (select main_a v_prenex_588) (select main_a v_prenex_587)) 1000) (< v_prenex_588 main_y) (<= 0 (* 2 (select main_a v_prenex_587))) (<= 0 (select main_a v_prenex_587)) (< v_prenex_587 main_x) (<= (* 2 (select main_a v_prenex_588)) 2000) (<= (+ main_y 1) v_prenex_588))) (forall ((v_prenex_642 Int) (v_prenex_643 Int)) (or (<= (+ main_y 1) v_prenex_643) (<= (select main_a v_prenex_643) 1000) (<= (* 2 (select main_a v_prenex_643)) 2000) (<= (+ (select main_a v_prenex_643) (select main_a v_prenex_642)) 1000) (< v_prenex_643 main_y))) (forall ((v_prenex_811 Int) (v_prenex_812 Int)) (or (<= 0 (* 2 (select main_a v_prenex_811))) (<= 1000 (+ (select main_a v_prenex_812) (select main_a v_prenex_811))) (< v_prenex_811 main_x) (<= (+ main_x 1) v_prenex_811))) (forall ((v_prenex_646 Int) (v_prenex_647 Int)) (or (< v_prenex_646 main_x) (<= (+ (select main_a v_prenex_647) (select main_a v_prenex_646)) 1000) (<= 0 (select main_a v_prenex_646)) (<= 0 (* 2 (select main_a v_prenex_646))) (<= (+ main_x 1) v_prenex_646))) (forall ((v_prenex_785 Int) (v_prenex_784 Int)) (or (<= (+ main_y 1) v_prenex_785) (<= (select main_a v_prenex_785) (+ (select main_a v_prenex_784) 1000)) (<= (+ main_x 1) v_prenex_784) (< v_prenex_784 main_x) (<= 0 (* 2 (select main_a v_prenex_784))))) (forall ((v_prenex_626 Int) (v_prenex_627 Int)) (or (<= (select main_a v_prenex_627) 1000) (< v_prenex_627 main_y) (<= (select main_a v_prenex_627) (+ (select main_a v_prenex_626) 1000)) (<= (+ main_y 1) v_prenex_627))) (forall ((v_prenex_770 Int) (v_prenex_769 Int)) (or (<= 0 (select main_a v_prenex_769)) (< v_prenex_770 main_y) (<= (+ main_y 1) v_prenex_770) (<= (* 2 (select main_a v_prenex_770)) 2000) (< v_prenex_769 main_x) (<= (+ (select main_a v_prenex_770) (select main_a v_prenex_769)) 1000))) (forall ((v_prenex_792 Int) (v_prenex_793 Int)) (or (<= (* 2 (select main_a v_prenex_793)) 2000) (<= (select main_a v_prenex_793) (+ (select main_a v_prenex_792) 1000)) (<= (+ main_y 1) v_prenex_793) (<= 0 (select main_a v_prenex_792)) (< v_prenex_793 main_y) (<= (+ main_x 1) v_prenex_792))) (or (forall ((v_prenex_795 Int)) (or (<= (select main_a v_prenex_795) 1000) (<= (* 2 (select main_a v_prenex_795)) 2000) (< v_prenex_795 main_y) (<= (+ main_y 1) v_prenex_795))) (forall ((v_prenex_794 Int)) (or (< v_prenex_794 main_x) (<= 0 (* 2 (select main_a v_prenex_794)))))) (forall ((v_prenex_579 Int) (v_prenex_580 Int)) (or (<= (* 2 (select main_a v_prenex_580)) 2000) (< v_prenex_580 main_y) (<= (select main_a v_prenex_580) 1000) (<= 1000 (+ (select main_a v_prenex_580) (select main_a v_prenex_579))) (<= 0 (* 2 (select main_a v_prenex_579))) (<= 0 (select main_a v_prenex_579)) (<= (+ main_y 1) v_prenex_580))) (forall ((v_prenex_662 Int) (v_prenex_663 Int)) (or (<= (+ main_y 1) v_prenex_663) (<= (select main_a v_prenex_663) 1000) (<= (+ (select main_a v_prenex_663) (select main_a v_prenex_662)) 1000) (<= 0 (* 2 (select main_a v_prenex_662))) (<= (+ main_x 1) v_prenex_662) (< v_prenex_663 main_y) (<= 0 (select main_a v_prenex_662)))) (forall ((v_prenex_615 Int) (v_prenex_614 Int)) (or (<= 1000 (+ (select main_a v_prenex_615) (select main_a v_prenex_614))) (< v_prenex_615 main_y) (<= 0 (* 2 (select main_a v_prenex_614))) (<= (+ main_x 1) v_prenex_614) (<= (* 2 (select main_a v_prenex_615)) 2000) (<= (+ main_y 1) v_prenex_615))) (forall ((v_prenex_788 Int) (v_prenex_789 Int)) (or (<= 0 (* 2 (select main_a v_prenex_788))) (<= (+ main_y 1) v_prenex_789) (< v_prenex_789 main_y) (<= (+ main_x 1) v_prenex_788) (<= (select main_a v_prenex_789) (+ (select main_a v_prenex_788) 1000)) (<= (* 2 (select main_a v_prenex_789)) 2000))) (forall ((v_prenex_824 Int) (v_prenex_823 Int)) (or (< v_prenex_824 main_y) (< v_prenex_823 main_x) (<= (+ main_y 1) v_prenex_824) (<= (select main_a v_prenex_824) 1000) (<= (select main_a v_prenex_824) (+ (select main_a v_prenex_823) 1000)))) (forall ((v_prenex_725 Int) (v_prenex_726 Int)) (or (< v_prenex_725 main_x) (<= (+ main_x 1) v_prenex_725) (<= 0 (select main_a v_prenex_725)) (< v_prenex_726 main_y) (<= 1000 (+ (select main_a v_prenex_726) (select main_a v_prenex_725))))) (forall ((v_prenex_787 Int) (v_prenex_786 Int)) (or (<= 0 (* 2 (select main_a v_prenex_786))) (< v_prenex_786 main_x) (<= (+ main_y 1) v_prenex_787) (< v_prenex_787 main_y) (<= (+ (select main_a v_prenex_787) (select main_a v_prenex_786)) 1000) (<= (select main_a v_prenex_787) 1000))) (or (forall ((v_prenex_583 Int)) (or (<= 0 (select main_a v_prenex_583)) (<= 0 (* 2 (select main_a v_prenex_583))) (< v_prenex_583 main_x))) (forall ((v_prenex_584 Int)) (or (<= (+ main_y 1) v_prenex_584) (<= (select main_a v_prenex_584) 1000) (<= (* 2 (select main_a v_prenex_584)) 2000) (< v_prenex_584 main_y)))) (forall ((v_prenex_760 Int) (v_prenex_759 Int)) (or (<= (+ main_y 1) v_prenex_760) (<= (select main_a v_prenex_760) (+ (select main_a v_prenex_759) 1000)) (<= (* 2 (select main_a v_prenex_760)) 2000) (<= (select main_a v_prenex_760) 1000) (<= 0 (* 2 (select main_a v_prenex_759))) (< v_prenex_760 main_y))) (forall ((v_prenex_755 Int) (v_prenex_756 Int)) (or (<= (+ (select main_a v_prenex_756) (select main_a v_prenex_755)) 1000) (<= (select main_a v_prenex_756) 1000) (<= 0 (select main_a v_prenex_755)) (<= 0 (* 2 (select main_a v_prenex_755))) (< v_prenex_755 main_x) (<= (+ main_y 1) v_prenex_756) (< v_prenex_756 main_y))) (forall ((v_prenex_666 Int) (v_prenex_667 Int)) (or (<= (* 2 (select main_a v_prenex_667)) 2000) (<= (select main_a v_prenex_667) (+ (select main_a v_prenex_666) 1000)) (< v_prenex_667 main_y) (<= 0 (* 2 (select main_a v_prenex_666))) (<= (+ main_y 1) v_prenex_667))) (forall ((v_prenex_831 Int) (v_prenex_832 Int)) (or (<= 1000 (+ (select main_a v_prenex_832) (select main_a v_prenex_831))) (<= 0 (select main_a v_prenex_831)) (<= (* 2 (select main_a v_prenex_832)) 2000) (< v_prenex_832 main_y) (<= (+ main_y 1) v_prenex_832) (<= 0 (* 2 (select main_a v_prenex_831))) (< v_prenex_831 main_x))) (or (forall ((v_prenex_561 Int)) (or (<= (select main_a v_prenex_561) 1000) (< v_prenex_561 main_y) (<= (+ main_y 1) v_prenex_561))) (forall ((v_prenex_696 Int)) (or (<= (+ main_x 1) v_prenex_696) (<= 0 (* 2 (select main_a v_prenex_696)))))) (or (forall ((v_prenex_818 Int)) (or (<= (+ main_y 1) v_prenex_818) (<= (* 2 (select main_a v_prenex_818)) 2000))) (forall ((v_prenex_817 Int)) (or (<= 0 (* 2 (select main_a v_prenex_817))) (<= (+ main_x 1) v_prenex_817) (< v_prenex_817 main_x)))) (forall ((v_prenex_783 Int) (v_prenex_782 Int)) (or (<= (select main_a v_prenex_783) 1000) (< v_prenex_782 main_x) (<= (+ main_y 1) v_prenex_783) (< v_prenex_783 main_y) (<= 1000 (+ (select main_a v_prenex_783) (select main_a v_prenex_782))))) (forall ((v_prenex_600 Int) (v_prenex_601 Int)) (or (<= (+ main_x 1) v_prenex_600) (<= 0 (select main_a v_prenex_600)) (<= (* 2 (select main_a v_prenex_601)) 2000) (<= (+ main_y 1) v_prenex_601) (<= (+ (select main_a v_prenex_601) (select main_a v_prenex_600)) 1000) (< v_prenex_601 main_y) (<= 0 (* 2 (select main_a v_prenex_600))))) (forall ((v_prenex_763 Int) (v_prenex_764 Int)) (or (<= 0 (select main_a v_prenex_763)) (< v_prenex_764 main_y) (< v_prenex_763 main_x) (<= (+ main_y 1) v_prenex_764) (<= (select main_a v_prenex_764) 1000) (<= (select main_a v_prenex_764) (+ (select main_a v_prenex_763) 1000)))) (forall ((v_prenex_680 Int) (v_prenex_681 Int)) (or (< v_prenex_680 main_x) (<= (select main_a v_prenex_681) (+ (select main_a v_prenex_680) 1000)) (<= (* 2 (select main_a v_prenex_681)) 2000) (< v_prenex_681 main_y) (<= (+ main_y 1) v_prenex_681))) (or (forall ((v_prenex_796 Int)) (or (<= 0 (* 2 (select main_a v_prenex_796))) (<= (+ main_x 1) v_prenex_796))) (forall ((v_prenex_797 Int)) (or (<= (+ main_y 1) v_prenex_797) (<= (* 2 (select main_a v_prenex_797)) 2000) (< v_prenex_797 main_y)))) (or (forall ((v_prenex_796 Int)) (or (<= 0 (* 2 (select main_a v_prenex_796))) (<= (+ main_x 1) v_prenex_796))) (forall ((v_prenex_798 Int)) (or (<= (* 2 (select main_a v_prenex_798)) 2000) (< v_prenex_798 main_y) (<= (select main_a v_prenex_798) 1000) (<= (+ main_y 1) v_prenex_798)))) (<= (- (- main_x) (- main_y)) (- 1)) (forall ((v_prenex_637 Int) (v_prenex_636 Int)) (or (<= 0 (* 2 (select main_a v_prenex_636))) (<= (+ main_x 1) v_prenex_636) (<= 1000 (+ (select main_a v_prenex_637) (select main_a v_prenex_636))) (< v_prenex_637 main_y) (<= (+ main_y 1) v_prenex_637) (<= (select main_a v_prenex_637) 1000))) (forall ((v_prenex_624 Int) (v_prenex_625 Int)) (or (<= 0 (* 2 (select main_a v_prenex_624))) (< v_prenex_625 main_y) (<= (select main_a v_prenex_625) 1000) (<= (+ main_y 1) v_prenex_625) (<= (select main_a v_prenex_625) (+ (select main_a v_prenex_624) 1000)))) (forall ((v_prenex_777 Int) (v_prenex_778 Int)) (or (<= (+ main_x 1) v_prenex_777) (< v_prenex_777 main_x) (<= (+ main_y 1) v_prenex_778) (<= 0 (* 2 (select main_a v_prenex_777))) (<= (+ (select main_a v_prenex_778) (select main_a v_prenex_777)) 1000))) (forall ((v_prenex_619 Int) (v_prenex_618 Int)) (or (<= (+ (select main_a v_prenex_619) (select main_a v_prenex_618)) 1000) (<= (+ main_y 1) v_prenex_619) (< v_prenex_619 main_y) (<= (* 2 (select main_a v_prenex_619)) 2000) (<= 0 (* 2 (select main_a v_prenex_618))))) (forall ((v_prenex_671 Int) (v_prenex_670 Int)) (or (<= 0 (* 2 (select main_a v_prenex_670))) (<= 0 (select main_a v_prenex_670)) (<= 1000 (+ (select main_a v_prenex_671) (select main_a v_prenex_670))) (< v_prenex_670 main_x) (< v_prenex_671 main_y) (<= (+ main_y 1) v_prenex_671) (<= (select main_a v_prenex_671) 1000))) (forall ((v_prenex_620 Int) (v_prenex_621 Int)) (or (<= 0 (* 2 (select main_a v_prenex_620))) (<= (* 2 (select main_a v_prenex_621)) 2000) (<= 0 (select main_a v_prenex_620)) (<= (+ (select main_a v_prenex_621) (select main_a v_prenex_620)) 1000) (<= (+ main_y 1) v_prenex_621) (< v_prenex_621 main_y))) (or (forall ((v_prenex_717 Int)) (<= 0 (* 2 (select main_a v_prenex_717)))) (forall ((v_prenex_718 Int)) (or (< v_prenex_718 main_y) (<= (* 2 (select main_a v_prenex_718)) 2000) (<= (+ main_y 1) v_prenex_718) (<= (select main_a v_prenex_718) 1000)))) (forall ((v_prenex_589 Int) (v_prenex_590 Int)) (or (<= (select main_a v_prenex_590) (+ (select main_a v_prenex_589) 1000)) (<= 0 (select main_a v_prenex_589)) (<= (+ main_y 1) v_prenex_590) (< v_prenex_590 main_y) (<= (+ main_x 1) v_prenex_589) (<= (select main_a v_prenex_590) 1000) (<= 0 (* 2 (select main_a v_prenex_589))))) (forall ((v_prenex_617 Int) (v_prenex_616 Int)) (or (<= 0 (* 2 (select main_a v_prenex_616))) (<= (+ main_y 1) v_prenex_617) (<= 1000 (+ (select main_a v_prenex_617) (select main_a v_prenex_616))) (<= (* 2 (select main_a v_prenex_617)) 2000) (<= 0 (select main_a v_prenex_616)) (< v_prenex_617 main_y))) (forall ((v_prenex_703 Int) (v_prenex_702 Int)) (or (<= 0 (* 2 (select main_a v_prenex_702))) (<= (+ main_x 1) v_prenex_702) (<= (select main_a v_prenex_703) (+ (select main_a v_prenex_702) 1000)) (< v_prenex_703 main_y) (<= (select main_a v_prenex_703) 1000) (<= (+ main_y 1) v_prenex_703))) (forall ((v_prenex_572 Int) (v_prenex_571 Int)) (or (<= (+ main_y 1) v_prenex_572) (<= (+ main_x 1) v_prenex_571) (< v_prenex_571 main_x) (< v_prenex_572 main_y) (<= 1000 (+ (select main_a v_prenex_572) (select main_a v_prenex_571))))) (or (forall ((v_prenex_712 Int)) (or (<= (+ main_x 1) v_prenex_712) (<= 0 (select main_a v_prenex_712)))) (forall ((v_prenex_714 Int)) (or (<= (select main_a v_prenex_714) 1000) (< v_prenex_714 main_y) (<= (* 2 (select main_a v_prenex_714)) 2000) (<= (+ main_y 1) v_prenex_714)))) (forall ((v_prenex_668 Int) (v_prenex_669 Int)) (or (< v_prenex_669 main_y) (<= (+ (select main_a v_prenex_669) (select main_a v_prenex_668)) 1000) (<= (select main_a v_prenex_669) 1000) (<= (+ main_y 1) v_prenex_669))) (forall ((v_prenex_720 Int) (v_prenex_719 Int)) (or (<= 1000 (+ (select main_a v_prenex_720) (select main_a v_prenex_719))) (<= (select main_a v_prenex_720) 1000) (<= (+ main_y 1) v_prenex_720) (< v_prenex_720 main_y))) (forall ((v_prenex_745 Int) (v_prenex_746 Int)) (or (< v_prenex_746 main_y) (<= (+ (select main_a v_prenex_746) (select main_a v_prenex_745)) 1000) (<= (+ main_y 1) v_prenex_746) (<= (+ main_x 1) v_prenex_745) (<= (* 2 (select main_a v_prenex_746)) 2000))) (forall ((v_prenex_578 Int) (v_prenex_577 Int)) (or (<= (+ main_y 1) v_prenex_578) (<= (select main_a v_prenex_578) (+ (select main_a v_prenex_577) 1000)) (<= (select main_a v_prenex_578) 1000) (<= 0 (select main_a v_prenex_577)) (< v_prenex_578 main_y))) (forall ((v_prenex_570 Int) (v_prenex_569 Int)) (or (< v_prenex_570 main_y) (< v_prenex_569 main_x) (<= (select main_a v_prenex_570) (+ (select main_a v_prenex_569) 1000)) (<= (+ main_x 1) v_prenex_569) (<= 0 (select main_a v_prenex_569)))) (or (forall ((v_prenex_830 Int)) (or (<= (select main_a v_prenex_830) 1000) (<= (+ main_y 1) v_prenex_830) (<= (* 2 (select main_a v_prenex_830)) 2000) (< v_prenex_830 main_y))) (forall ((v_prenex_829 Int)) (or (<= 0 (select main_a v_prenex_829)) (<= 0 (* 2 (select main_a v_prenex_829)))))) (forall ((v_prenex_752 Int) (v_prenex_751 Int)) (or (<= (+ main_x 1) v_prenex_751) (<= (+ main_y 1) v_prenex_752) (< v_prenex_752 main_y) (<= 1000 (+ (select main_a v_prenex_752) (select main_a v_prenex_751))) (<= (select main_a v_prenex_752) 1000))) (forall ((v_prenex_653 Int) (v_prenex_654 Int)) (or (<= (+ main_y 1) v_prenex_654) (<= (* 2 (select main_a v_prenex_654)) 2000) (<= (select main_a v_prenex_654) (+ (select main_a v_prenex_653) 1000)) (<= (+ main_x 1) v_prenex_653) (< v_prenex_654 main_y))) (forall ((v_prenex_565 Int) (v_prenex_566 Int)) (or (< v_prenex_565 main_x) (<= 0 (* 2 (select main_a v_prenex_565))) (<= (+ main_y 1) v_prenex_566) (<= 0 (select main_a v_prenex_565)) (< v_prenex_566 main_y) (<= (select main_a v_prenex_566) 1000) (<= (select main_a v_prenex_566) (+ (select main_a v_prenex_565) 1000)))) (forall ((v_prenex_732 Int) (v_prenex_731 Int)) (or (<= (* 2 (select main_a v_prenex_732)) 2000) (<= (+ (select main_a v_prenex_732) (select main_a v_prenex_731)) 1000) (<= (+ main_y 1) v_prenex_732) (<= (+ main_x 1) v_prenex_731) (<= 0 (* 2 (select main_a v_prenex_731))) (< v_prenex_732 main_y))) (or (forall ((v_prenex_728 Int)) (<= (* 2 (select main_a v_prenex_728)) 2000)) (forall ((v_prenex_727 Int)) (or (<= 0 (select main_a v_prenex_727)) (< v_prenex_727 main_x) (<= (+ main_x 1) v_prenex_727)))) (forall ((v_prenex_802 Int) (v_prenex_801 Int)) (or (<= (+ main_y 1) v_prenex_802) (<= 1000 (+ (select main_a v_prenex_802) (select main_a v_prenex_801))) (< v_prenex_802 main_y) (<= (* 2 (select main_a v_prenex_802)) 2000) (<= (+ main_x 1) v_prenex_801))) (or (forall ((v_prenex_779 Int)) (or (<= 0 (select main_a v_prenex_779)) (<= 0 (* 2 (select main_a v_prenex_779))))) (forall ((v_prenex_781 Int)) (or (<= (select main_a v_prenex_781) 1000) (<= (* 2 (select main_a v_prenex_781)) 2000) (<= (+ main_y 1) v_prenex_781) (< v_prenex_781 main_y)))) (forall ((v_prenex_723 Int) (v_prenex_724 Int)) (or (<= (+ main_x 1) v_prenex_723) (<= 0 (* 2 (select main_a v_prenex_723))) (<= (+ main_y 1) v_prenex_724) (< v_prenex_723 main_x) (<= 1000 (+ (select main_a v_prenex_724) (select main_a v_prenex_723))))) (forall ((v_prenex_695 Int) (v_prenex_694 Int)) (or (<= (* 2 (select main_a v_prenex_695)) 2000) (< v_prenex_695 main_y) (<= (select main_a v_prenex_695) 1000) (<= 1000 (+ (select main_a v_prenex_695) (select main_a v_prenex_694))) (<= (+ main_y 1) v_prenex_695))) (forall ((v_prenex_594 Int) (v_prenex_595 Int)) (or (< v_prenex_595 main_y) (<= (+ main_x 1) v_prenex_594) (<= (select main_a v_prenex_595) (+ (select main_a v_prenex_594) 1000)) (<= (+ main_y 1) v_prenex_595) (<= (select main_a v_prenex_595) 1000))) (forall ((v_prenex_707 Int)) (or (<= 0 (* 2 (select main_a v_prenex_707))) (< v_prenex_707 main_x) (<= (+ main_x 1) v_prenex_707))) (forall ((v_prenex_581 Int) (v_prenex_582 Int)) (or (<= 0 (select main_a v_prenex_581)) (<= 1000 (+ (select main_a v_prenex_582) (select main_a v_prenex_581))) (< v_prenex_581 main_x) (<= 0 (* 2 (select main_a v_prenex_581))) (<= (+ main_x 1) v_prenex_581))) (forall ((v_prenex_622 Int) (v_prenex_623 Int)) (or (< v_prenex_622 main_x) (<= (+ (select main_a v_prenex_623) (select main_a v_prenex_622)) 1000) (<= (+ main_x 1) v_prenex_622) (<= 0 (* 2 (select main_a v_prenex_622))))) (or (forall ((v_prenex_650 Int)) (or (<= (+ main_y 1) v_prenex_650) (< v_prenex_650 main_y) (<= (* 2 (select main_a v_prenex_650)) 2000) (<= (select main_a v_prenex_650) 1000))) (forall ((v_prenex_648 Int)) (<= 0 (select main_a v_prenex_648)))) (forall ((v_prenex_810 Int) (v_prenex_809 Int)) (or (<= (+ main_y 1) v_prenex_810) (<= 0 (select main_a v_prenex_809)) (< v_prenex_809 main_x) (< v_prenex_810 main_y) (<= (+ (select main_a v_prenex_810) (select main_a v_prenex_809)) 1000) (<= (select main_a v_prenex_810) 1000))) (forall ((v_prenex_700 Int) (v_prenex_701 Int)) (or (<= (select main_a v_prenex_701) 1000) (<= (+ main_y 1) v_prenex_701) (<= (* 2 (select main_a v_prenex_701)) 2000) (<= 0 (* 2 (select main_a v_prenex_700))) (< v_prenex_701 main_y) (<= 0 (select main_a v_prenex_700)) (<= (select main_a v_prenex_701) (+ (select main_a v_prenex_700) 1000)))) (or (forall ((v_prenex_599 Int)) (or (<= (* 2 (select main_a v_prenex_599)) 2000) (< v_prenex_599 main_y) (<= (+ main_y 1) v_prenex_599))) (forall ((v_prenex_598 Int)) (<= 0 (* 2 (select main_a v_prenex_598))))) (forall ((v_prenex_688 Int) (v_prenex_689 Int)) (or (<= 1000 (+ (select main_a v_prenex_689) (select main_a v_prenex_688))) (<= 0 (* 2 (select main_a v_prenex_688))) (<= 0 (select main_a v_prenex_688)) (<= (+ main_y 1) v_prenex_689) (< v_prenex_689 main_y) (<= (select main_a v_prenex_689) 1000))) (forall ((v_prenex_631 Int) (v_prenex_630 Int)) (or (<= (* 2 (select main_a v_prenex_631)) 2000) (< v_prenex_630 main_x) (<= 0 (select main_a v_prenex_630)) (< v_prenex_631 main_y) (<= 1000 (+ (select main_a v_prenex_631) (select main_a v_prenex_630))) (<= (+ main_y 1) v_prenex_631))) (forall ((v_prenex_693 Int) (v_prenex_692 Int)) (or (< v_prenex_693 main_y) (< v_prenex_692 main_x) (<= (+ main_x 1) v_prenex_692) (<= (+ (select main_a v_prenex_693) (select main_a v_prenex_692)) 1000) (<= 0 (select main_a v_prenex_692)))) (forall ((v_prenex_699 Int) (v_prenex_698 Int)) (or (< v_prenex_698 main_x) (<= (select main_a v_prenex_699) 1000) (< v_prenex_699 main_y) (<= 0 (* 2 (select main_a v_prenex_698))) (<= (select main_a v_prenex_699) (+ (select main_a v_prenex_698) 1000)) (<= (+ main_y 1) v_prenex_699))) (forall ((v_prenex_721 Int) (v_prenex_722 Int)) (or (< v_prenex_722 main_y) (<= 0 (select main_a v_prenex_721)) (<= (+ main_y 1) v_prenex_722) (<= (+ (select main_a v_prenex_722) (select main_a v_prenex_721)) 1000) (<= (select main_a v_prenex_722) 1000) (<= (+ main_x 1) v_prenex_721))) (forall ((v_prenex_651 Int) (v_prenex_652 Int)) (or (<= (+ main_y 1) v_prenex_652) (< v_prenex_652 main_y) (<= (select main_a v_prenex_652) (+ (select main_a v_prenex_651) 1000)) (<= (* 2 (select main_a v_prenex_652)) 2000))) (forall ((v_prenex_736 Int) (v_prenex_735 Int)) (or (<= (+ main_y 1) v_prenex_736) (<= 0 (select main_a v_prenex_735)) (<= (* 2 (select main_a v_prenex_736)) 2000) (<= (select main_a v_prenex_736) (+ (select main_a v_prenex_735) 1000)) (< v_prenex_736 main_y))) (forall ((v_prenex_754 Int) (v_prenex_753 Int)) (or (<= (+ main_x 1) v_prenex_753) (< v_prenex_753 main_x) (<= (+ main_y 1) v_prenex_754) (<= 0 (select main_a v_prenex_753)) (<= 1000 (+ (select main_a v_prenex_754) (select main_a v_prenex_753))))) (forall ((v_prenex_790 Int) (v_prenex_791 Int)) (or (<= (+ main_x 1) v_prenex_790) (< v_prenex_791 main_y) (<= (+ (select main_a v_prenex_791) (select main_a v_prenex_790)) 1000) (<= (+ main_y 1) v_prenex_791) (<= 0 (select main_a v_prenex_790)) (<= (* 2 (select main_a v_prenex_791)) 2000))) (or (forall ((v_prenex_645 Int)) (or (< v_prenex_645 main_y) (<= (* 2 (select main_a v_prenex_645)) 2000) (<= (+ main_y 1) v_prenex_645))) (forall ((v_prenex_644 Int)) (or (<= 0 (* 2 (select main_a v_prenex_644))) (< v_prenex_644 main_x)))) (forall ((v_prenex_628 Int) (v_prenex_629 Int)) (or (<= 0 (* 2 (select main_a v_prenex_628))) (<= (select main_a v_prenex_629) 1000) (< v_prenex_629 main_y) (<= 1000 (+ (select main_a v_prenex_629) (select main_a v_prenex_628))) (<= (+ main_y 1) v_prenex_629))) (or (forall ((v_prenex_598 Int)) (<= 0 (* 2 (select main_a v_prenex_598)))) (forall ((v_prenex_560 Int)) (or (<= (select main_a v_prenex_560) 1000) (<= (* 2 (select main_a v_prenex_560)) 2000) (<= (+ main_y 1) v_prenex_560) (< v_prenex_560 main_y)))) (forall ((v_prenex_684 Int) (v_prenex_685 Int)) (or (<= (+ main_x 1) v_prenex_684) (<= 0 (select main_a v_prenex_684)) (<= (+ (select main_a v_prenex_685) (select main_a v_prenex_684)) 1000) (< v_prenex_684 main_x))) (forall ((v_prenex_761 Int) (v_prenex_762 Int)) (or (<= (+ main_y 1) v_prenex_762) (<= (select main_a v_prenex_762) 1000) (<= (+ (select main_a v_prenex_762) (select main_a v_prenex_761)) 1000) (< v_prenex_762 main_y) (<= (* 2 (select main_a v_prenex_762)) 2000) (<= 0 (select main_a v_prenex_761)))) (forall ((v_prenex_660 Int) (v_prenex_659 Int)) (or (<= (+ main_y 1) v_prenex_660) (<= (* 2 (select main_a v_prenex_660)) 2000) (< v_prenex_660 main_y) (<= 1000 (+ (select main_a v_prenex_660) (select main_a v_prenex_659))) (<= (select main_a v_prenex_660) 1000) (<= 0 (* 2 (select main_a v_prenex_659))))) (forall ((v_prenex_826 Int) (v_prenex_825 Int)) (or (<= (+ main_y 1) v_prenex_826) (<= (select main_a v_prenex_826) 1000) (<= (+ (select main_a v_prenex_826) (select main_a v_prenex_825)) 1000) (< v_prenex_826 main_y) (<= 0 (select main_a v_prenex_825)))) (or (forall ((v_prenex_641 Int)) (or (<= (* 2 (select main_a v_prenex_641)) 2000) (< v_prenex_641 main_y))) (forall ((v_prenex_640 Int)) (or (<= 0 (* 2 (select main_a v_prenex_640))) (< v_prenex_640 main_x) (<= (+ main_x 1) v_prenex_640)))) (forall ((v_prenex_606 Int) (v_prenex_607 Int)) (or (<= (select main_a v_prenex_607) 1000) (<= (+ (select main_a v_prenex_607) (select main_a v_prenex_606)) 1000) (<= (+ main_y 1) v_prenex_607) (< v_prenex_606 main_x) (< v_prenex_607 main_y))) (forall ((v_prenex_661 Int)) (or (<= (* 2 (select main_a v_prenex_661)) 2000) (< v_prenex_661 main_y) (<= (+ main_y 1) v_prenex_661) (<= (select main_a v_prenex_661) 1000))) (forall ((v_prenex_639 Int) (v_prenex_638 Int)) (or (< v_prenex_638 main_x) (<= (+ main_x 1) v_prenex_638) (<= 0 (* 2 (select main_a v_prenex_638))) (<= (select main_a v_prenex_639) (+ (select main_a v_prenex_638) 1000)))) (forall ((v_prenex_765 Int) (v_prenex_766 Int)) (or (<= (* 2 (select main_a v_prenex_766)) 2000) (< v_prenex_766 main_y) (<= 0 (select main_a v_prenex_765)) (<= (select main_a v_prenex_766) (+ (select main_a v_prenex_765) 1000)) (<= (+ main_y 1) v_prenex_766) (<= 0 (* 2 (select main_a v_prenex_765))))) (forall ((v_prenex_677 Int) (v_prenex_676 Int)) (or (<= (select main_a v_prenex_677) 1000) (< v_prenex_677 main_y) (<= (select main_a v_prenex_677) (+ (select main_a v_prenex_676) 1000)) (<= (+ main_y 1) v_prenex_677) (<= (* 2 (select main_a v_prenex_677)) 2000))) (or (forall ((v_prenex_562 Int)) (or (<= (select main_a v_prenex_562) 1000) (<= (+ main_y 1) v_prenex_562) (< v_prenex_562 main_y) (<= (* 2 (select main_a v_prenex_562)) 2000))) (forall ((v_prenex_813 Int)) (<= 0 (* 2 (select main_a v_prenex_813))))) (or (forall ((v_prenex_704 Int)) (or (<= 0 (* 2 (select main_a v_prenex_704))) (<= (+ main_x 1) v_prenex_704) (<= 0 (select main_a v_prenex_704)))) (forall ((v_prenex_706 Int)) (or (<= (select main_a v_prenex_706) 1000) (<= (* 2 (select main_a v_prenex_706)) 2000) (<= (+ main_y 1) v_prenex_706) (< v_prenex_706 main_y)))) (forall ((v_prenex_815 Int) (v_prenex_816 Int)) (or (<= (+ main_y 1) v_prenex_816) (< v_prenex_816 main_y) (<= (select main_a v_prenex_816) (+ (select main_a v_prenex_815) 1000)) (<= 0 (select main_a v_prenex_815)) (<= (select main_a v_prenex_816) 1000) (<= 0 (* 2 (select main_a v_prenex_815))))) (forall ((v_prenex_675 Int) (v_prenex_674 Int)) (or (<= (+ (select main_a v_prenex_675) (select main_a v_prenex_674)) 1000) (<= (+ main_x 1) v_prenex_674) (<= (+ main_y 1) v_prenex_675) (<= (select main_a v_prenex_675) 1000) (< v_prenex_675 main_y))) (or (forall ((v_prenex_780 Int)) (or (< v_prenex_780 main_y) (<= (+ main_y 1) v_prenex_780) (<= (* 2 (select main_a v_prenex_780)) 2000))) (forall ((v_prenex_779 Int)) (or (<= 0 (select main_a v_prenex_779)) (<= 0 (* 2 (select main_a v_prenex_779)))))) (forall ((v_prenex_730 Int) (v_prenex_729 Int)) (or (<= (* 2 (select main_a v_prenex_730)) 2000) (<= 0 (* 2 (select main_a v_prenex_729))) (< v_prenex_729 main_x) (<= (+ main_y 1) v_prenex_730) (<= (+ (select main_a v_prenex_730) (select main_a v_prenex_729)) 1000) (< v_prenex_730 main_y))) (forall ((v_prenex_833 Int) (v_prenex_834 Int)) (or (<= (select main_a v_prenex_834) 1000) (<= 1000 (+ (select main_a v_prenex_834) (select main_a v_prenex_833))) (< v_prenex_834 main_y) (<= 0 (select main_a v_prenex_833)) (<= (+ main_y 1) v_prenex_834))) (forall ((v_prenex_655 Int) (v_prenex_656 Int)) (or (<= (+ main_y 1) v_prenex_656) (<= (select main_a v_prenex_656) 1000) (<= (+ main_x 1) v_prenex_655) (< v_prenex_656 main_y) (<= (+ (select main_a v_prenex_656) (select main_a v_prenex_655)) 1000) (<= 0 (* 2 (select main_a v_prenex_655))))) (forall ((v_prenex_733 Int) (v_prenex_734 Int)) (or (<= (+ main_x 1) v_prenex_733) (<= 1000 (+ (select main_a v_prenex_734) (select main_a v_prenex_733))) (<= (select main_a v_prenex_734) 1000) (<= (+ main_y 1) v_prenex_734) (< v_prenex_734 main_y) (<= 0 (select main_a v_prenex_733)))) (forall ((v_prenex_608 Int) (v_prenex_609 Int)) (or (<= (+ main_y 1) v_prenex_609) (<= (* 2 (select main_a v_prenex_609)) 2000) (< v_prenex_609 main_y) (<= 1000 (+ (select main_a v_prenex_609) (select main_a v_prenex_608))))) (forall ((v_prenex_740 Int) (v_prenex_739 Int)) (or (< v_prenex_740 main_y) (<= (+ main_y 1) v_prenex_740) (<= 0 (* 2 (select main_a v_prenex_739))) (<= (+ (select main_a v_prenex_740) (select main_a v_prenex_739)) 1000) (<= (select main_a v_prenex_740) 1000) (<= 0 (select main_a v_prenex_739)))) (forall ((v_prenex_738 Int) (v_prenex_737 Int)) (or (<= (select main_a v_prenex_738) (+ (select main_a v_prenex_737) 1000)) (< v_prenex_737 main_x) (<= (+ main_y 1) v_prenex_738) (<= (+ main_x 1) v_prenex_737) (< v_prenex_738 main_y))) (or (forall ((v_prenex_686 Int)) (or (< v_prenex_686 main_x) (<= (+ main_x 1) v_prenex_686) (<= 0 (* 2 (select main_a v_prenex_686))))) (forall ((v_prenex_687 Int)) (<= (* 2 (select main_a v_prenex_687)) 2000))) (forall ((v_prenex_828 Int) (v_prenex_827 Int)) (or (<= (select main_a v_prenex_828) (+ (select main_a v_prenex_827) 1000)) (<= 0 (* 2 (select main_a v_prenex_827))) (<= (+ main_x 1) v_prenex_827) (< v_prenex_827 main_x) (<= 0 (select main_a v_prenex_827)))) (or (forall ((v_prenex_697 Int)) (or (<= (* 2 (select main_a v_prenex_697)) 2000) (<= (+ main_y 1) v_prenex_697) (< v_prenex_697 main_y))) (forall ((v_prenex_696 Int)) (or (<= (+ main_x 1) v_prenex_696) (<= 0 (* 2 (select main_a v_prenex_696)))))) (forall ((v_prenex_634 Int) (v_prenex_635 Int)) (or (< v_prenex_634 main_x) (<= 0 (* 2 (select main_a v_prenex_634))) (<= (+ main_y 1) v_prenex_635) (<= 1000 (+ (select main_a v_prenex_635) (select main_a v_prenex_634))) (< v_prenex_635 main_y) (<= (* 2 (select main_a v_prenex_635)) 2000))) (forall ((v_prenex_747 Int) (v_prenex_748 Int)) (or (<= 1000 (+ (select main_a v_prenex_748) (select main_a v_prenex_747))) (<= 0 (* 2 (select main_a v_prenex_747))) (<= (+ main_x 1) v_prenex_747) (< v_prenex_748 main_y) (< v_prenex_747 main_x))) (or (forall ((v_prenex_767 Int)) (or (<= 0 (select main_a v_prenex_767)) (< v_prenex_767 main_x) (<= (+ main_x 1) v_prenex_767))) (forall ((v_prenex_768 Int)) (or (<= (* 2 (select main_a v_prenex_768)) 2000) (< v_prenex_768 main_y)))) (or (forall ((v_prenex_690 Int)) (<= 0 (select main_a v_prenex_690))) (forall ((v_prenex_691 Int)) (or (<= (select main_a v_prenex_691) 1000) (<= (+ main_y 1) v_prenex_691) (<= (* 2 (select main_a v_prenex_691)) 2000) (< v_prenex_691 main_y)))) (forall ((v_prenex_585 Int) (v_prenex_586 Int)) (or (<= (+ main_y 1) v_prenex_586) (<= (* 2 (select main_a v_prenex_586)) 2000) (< v_prenex_586 main_y) (< v_prenex_585 main_x) (<= (+ (select main_a v_prenex_586) (select main_a v_prenex_585)) 1000))) (forall ((v_prenex_574 Int) (v_prenex_573 Int)) (or (<= 0 (* 2 (select main_a v_prenex_573))) (<= (+ main_x 1) v_prenex_573) (<= 0 (select main_a v_prenex_573)) (<= 1000 (+ (select main_a v_prenex_574) (select main_a v_prenex_573))) (<= (+ main_y 1) v_prenex_574) (<= (select main_a v_prenex_574) 1000) (< v_prenex_574 main_y))) (forall ((v_prenex_682 Int) (v_prenex_683 Int)) (or (<= (* 2 (select main_a v_prenex_683)) 2000) (<= 1000 (+ (select main_a v_prenex_683) (select main_a v_prenex_682))) (< v_prenex_683 main_y) (<= 0 (select main_a v_prenex_682)) (<= (+ main_y 1) v_prenex_683))) (forall ((v_prenex_750 Int) (v_prenex_749 Int)) (or (<= (+ main_y 1) v_prenex_750) (< v_prenex_750 main_y) (<= 1000 (+ (select main_a v_prenex_750) (select main_a v_prenex_749))) (<= (* 2 (select main_a v_prenex_750)) 2000) (< v_prenex_749 main_x))) (or (forall ((v_prenex_658 Int)) (or (<= (+ main_y 1) v_prenex_658) (<= (* 2 (select main_a v_prenex_658)) 2000))) (forall ((v_prenex_657 Int)) (or (<= (+ main_x 1) v_prenex_657) (<= 0 (select main_a v_prenex_657)) (< v_prenex_657 main_x)))) (forall ((v_prenex_576 Int) (v_prenex_575 Int)) (or (< v_prenex_576 main_y) (< v_prenex_575 main_x) (<= 0 (select main_a v_prenex_575)) (<= 1000 (+ (select main_a v_prenex_576) (select main_a v_prenex_575))) (<= (+ main_y 1) v_prenex_576) (<= (select main_a v_prenex_576) 1000))) (or (forall ((v_prenex_814 Int)) (or (< v_prenex_814 main_y) (<= (select main_a v_prenex_814) 1000) (<= (+ main_y 1) v_prenex_814))) (forall ((v_prenex_813 Int)) (<= 0 (* 2 (select main_a v_prenex_813))))) (or (forall ((v_prenex_649 Int)) (or (<= (+ main_y 1) v_prenex_649) (<= (* 2 (select main_a v_prenex_649)) 2000) (< v_prenex_649 main_y))) (forall ((v_prenex_648 Int)) (<= 0 (select main_a v_prenex_648)))) (forall ((v_prenex_758 Int) (v_prenex_757 Int)) (or (<= (+ (select main_a v_prenex_758) (select main_a v_prenex_757)) 1000) (< v_prenex_758 main_y) (<= (+ main_y 1) v_prenex_758) (<= (select main_a v_prenex_758) 1000) (<= 0 (* 2 (select main_a v_prenex_757))))) (forall ((v_prenex_776 Int) (v_prenex_775 Int)) (or (< v_prenex_775 main_x) (<= 0 (* 2 (select main_a v_prenex_775))) (<= (+ main_x 1) v_prenex_775) (< v_prenex_776 main_y) (<= (select main_a v_prenex_776) (+ (select main_a v_prenex_775) 1000)))) (forall ((v_prenex_743 Int) (v_prenex_744 Int)) (or (<= 1000 (+ (select main_a v_prenex_744) (select main_a v_prenex_743))) (<= 0 (select main_a v_prenex_743)) (<= (+ main_x 1) v_prenex_743) (< v_prenex_743 main_x))) (forall ((v_prenex_612 Int) (v_prenex_613 Int)) (or (<= (+ main_y 1) v_prenex_613) (<= (select main_a v_prenex_613) (+ (select main_a v_prenex_612) 1000)) (<= 0 (select main_a v_prenex_612)) (< v_prenex_612 main_x) (<= (+ main_x 1) v_prenex_612))) (forall ((v_prenex_710 Int) (v_prenex_711 Int)) (or (<= 1000 (+ (select main_a v_prenex_711) (select main_a v_prenex_710))) (<= (* 2 (select main_a v_prenex_711)) 2000) (<= 0 (* 2 (select main_a v_prenex_710))) (<= (+ main_y 1) v_prenex_711) (< v_prenex_711 main_y))) (forall ((v_prenex_563 Int) (v_prenex_564 Int)) (or (<= (+ main_y 1) v_prenex_564) (<= (+ (select main_a v_prenex_564) (select main_a v_prenex_563)) 1000) (<= (+ main_x 1) v_prenex_563) (<= 0 (select main_a v_prenex_563)) (< v_prenex_563 main_x))) (forall ((v_prenex_633 Int) (v_prenex_632 Int)) (or (<= (select main_a v_prenex_633) (+ (select main_a v_prenex_632) 1000)) (<= (+ main_y 1) v_prenex_633) (< v_prenex_633 main_y) (<= 0 (select main_a v_prenex_632)) (<= (* 2 (select main_a v_prenex_633)) 2000) (< v_prenex_632 main_x))) (forall ((v_prenex_709 Int) (v_prenex_708 Int)) (or (< v_prenex_709 main_y) (<= 0 (* 2 (select main_a v_prenex_708))) (<= (+ (select main_a v_prenex_709) (select main_a v_prenex_708)) 1000) (<= (+ main_x 1) v_prenex_708) (< v_prenex_708 main_x))) (forall ((v_prenex_673 Int) (v_prenex_672 Int)) (or (<= (+ (select main_a v_prenex_673) (select main_a v_prenex_672)) 1000) (<= (* 2 (select main_a v_prenex_673)) 2000) (<= (+ main_y 1) v_prenex_673) (<= 0 (* 2 (select main_a v_prenex_672))) (<= (select main_a v_prenex_673) 1000) (<= 0 (select main_a v_prenex_672)) (< v_prenex_673 main_y))) (forall ((v_prenex_602 Int) (v_prenex_603 Int)) (or (<= (+ main_y 1) v_prenex_603) (< v_prenex_603 main_y) (<= 0 (select main_a v_prenex_602)) (<= (select main_a v_prenex_603) 1000) (<= (select main_a v_prenex_603) (+ (select main_a v_prenex_602) 1000)) (<= (* 2 (select main_a v_prenex_603)) 2000))) (forall ((v_prenex_774 Int) (v_prenex_773 Int)) (or (<= (+ (select main_a v_prenex_774) (select main_a v_prenex_773)) 1000) (< v_prenex_773 main_x) (< v_prenex_774 main_y) (<= (+ main_x 1) v_prenex_773) (<= (+ main_y 1) v_prenex_774))) (forall ((v_prenex_804 Int) (v_prenex_803 Int)) (or (<= (* 2 (select main_a v_prenex_804)) 2000) (<= 1000 (+ (select main_a v_prenex_804) (select main_a v_prenex_803))) (< v_prenex_804 main_y) (<= (select main_a v_prenex_804) 1000) (<= 0 (select main_a v_prenex_803)) (<= (+ main_y 1) v_prenex_804))) (forall ((v_prenex_806 Int) (v_prenex_805 Int)) (or (<= 0 (* 2 (select main_a v_prenex_805))) (<= (+ main_y 1) v_prenex_806) (<= 0 (select main_a v_prenex_805)) (< v_prenex_806 main_y) (<= (select main_a v_prenex_806) (+ (select main_a v_prenex_805) 1000)) (<= (+ main_x 1) v_prenex_805) (<= (* 2 (select main_a v_prenex_806)) 2000))) (or (forall ((v_prenex_568 Int)) (or (<= (+ main_y 1) v_prenex_568) (< v_prenex_568 main_y) (<= (select main_a v_prenex_568) 1000))) (forall ((v_prenex_567 Int)) (or (<= 0 (* 2 (select main_a v_prenex_567))) (< v_prenex_567 main_x)))) (forall ((v_prenex_808 Int) (v_prenex_807 Int)) (or (<= (select main_a v_prenex_808) (+ (select main_a v_prenex_807) 1000)) (<= (+ main_y 1) v_prenex_808) (<= 0 (select main_a v_prenex_807)) (< v_prenex_808 main_y) (<= (+ main_x 1) v_prenex_807) (<= (select main_a v_prenex_808) 1000))) (forall ((v_prenex_611 Int) (v_prenex_610 Int)) (or (<= (+ (select main_a v_prenex_611) (select main_a v_prenex_610)) 1000) (< v_prenex_611 main_y) (<= (+ main_y 1) v_prenex_611) (<= 0 (* 2 (select main_a v_prenex_610))) (<= (select main_a v_prenex_611) 1000) (<= (* 2 (select main_a v_prenex_611)) 2000))) (forall ((v_prenex_772 Int) (v_prenex_771 Int)) (or (<= (select main_a v_prenex_772) (+ (select main_a v_prenex_771) 1000)) (< v_prenex_772 main_y) (<= 0 (select main_a v_prenex_771)) (<= (* 2 (select main_a v_prenex_772)) 2000) (<= 0 (* 2 (select main_a v_prenex_771))) (< v_prenex_771 main_x) (<= (+ main_y 1) v_prenex_772))) (forall ((v_prenex_741 Int) (v_prenex_742 Int)) (or (< v_prenex_742 main_y) (<= 0 (select main_a v_prenex_741)) (<= (+ main_y 1) v_prenex_742) (<= (* 2 (select main_a v_prenex_742)) 2000) (<= (+ (select main_a v_prenex_742) (select main_a v_prenex_741)) 1000))) (forall ((v_prenex_596 Int) (v_prenex_597 Int)) (or (< v_prenex_597 main_y) (<= (* 2 (select main_a v_prenex_597)) 2000) (<= 1000 (+ (select main_a v_prenex_597) (select main_a v_prenex_596))) (<= (+ main_x 1) v_prenex_596) (<= 0 (select main_a v_prenex_596)) (<= (+ main_y 1) v_prenex_597))) (forall ((v_prenex_591 Int)) (or (<= (+ main_y 1) v_prenex_591) (<= (* 2 (select main_a v_prenex_591)) 2000) (< v_prenex_591 main_y))) (or (forall ((v_prenex_712 Int)) (or (<= (+ main_x 1) v_prenex_712) (<= 0 (select main_a v_prenex_712)))) (forall ((v_prenex_713 Int)) (or (<= (+ main_y 1) v_prenex_713) (< v_prenex_713 main_y) (<= (* 2 (select main_a v_prenex_713)) 2000)))) (forall ((v_prenex_821 Int) (v_prenex_822 Int)) (or (<= 0 (select main_a v_prenex_821)) (<= (select main_a v_prenex_822) (+ (select main_a v_prenex_821) 1000)) (< v_prenex_821 main_x) (<= (+ main_x 1) v_prenex_821))) (or (forall ((v_prenex_678 Int)) (or (<= (+ main_x 1) v_prenex_678) (<= 0 (* 2 (select main_a v_prenex_678))) (< v_prenex_678 main_x) (<= 0 (select main_a v_prenex_678)))) (forall ((v_prenex_679 Int)) (<= (* 2 (select main_a v_prenex_679)) 2000))) (or (forall ((v_prenex_592 Int)) (or (< v_prenex_592 main_x) (<= 0 (select main_a v_prenex_592)))) (forall ((v_prenex_593 Int)) (or (<= (* 2 (select main_a v_prenex_593)) 2000) (<= (+ main_y 1) v_prenex_593) (< v_prenex_593 main_y)))) (or (forall ((v_prenex_704 Int)) (or (<= 0 (* 2 (select main_a v_prenex_704))) (<= (+ main_x 1) v_prenex_704) (<= 0 (select main_a v_prenex_704)))) (forall ((v_prenex_705 Int)) (or (<= (* 2 (select main_a v_prenex_705)) 2000) (<= (+ main_y 1) v_prenex_705) (< v_prenex_705 main_y)))) (forall ((v_prenex_604 Int) (v_prenex_605 Int)) (or (<= 0 (* 2 (select main_a v_prenex_604))) (<= (select main_a v_prenex_605) 1000) (< v_prenex_605 main_y) (<= 1000 (+ (select main_a v_prenex_605) (select main_a v_prenex_604))) (<= (+ main_y 1) v_prenex_605) (< v_prenex_604 main_x))) (<= (+ main_y 1) main_x))} [2019-01-31 15:08:42,503 WARN L274 ngHoareTripleChecker]: Action: assume a[x] == 1000; [2019-01-31 15:08:42,503 WARN L184 hOps$ForEachOp$OfRef]: ActionStr: (= (select c_main_a c_main_x) 1000) [2019-01-31 15:08:42,506 WARN L276 ngHoareTripleChecker]: Post: {97#false} [2019-01-31 15:08:42,506 WARN L620 ntHoareTripleChecker]: -- [2019-01-31 15:08:42,506 WARN L621 ntHoareTripleChecker]: Abstract states [2019-01-31 15:08:42,507 WARN L623 ntHoareTripleChecker]: PreS: {#1{Arrays: {[main_a] -> [-inf_0] v_1805 [b_236] v_1806 [b_237] v_1807 [b_238] v_1808 [b_239] v_1809 [inf_0], }, Substate: {ints: {v_1806 = [-inf; 1000]; v_1808 = [0; inf]}, 9 vars top, relations: {b_237 - b_238 = [-inf; 0]; b_236 - b_238 = [-inf; -1]; b_236 - b_237 = [-1; -1]; b_238 - b_239 = [-1; -1]; b_237 - b_239 = [-inf; -1]; b_236 - b_239 = [-inf; -2]; b_238 - main_y = [1; inf]; b_237 - main_y = [1; 1]; b_236 - main_y = [0; 0]; b_239 - main_y = [2; inf]; main_x - main_y = [1; inf]; b_238 - main_x = [0; 0]; b_237 - main_x = [-inf; 0]; b_236 - main_x = [-inf; -1]; b_239 - main_x = [1; 1]; v_1806 + v_1808 = [1000; 1000]; v_1806 - v_1808 = [-inf; 1000]}, }}} [2019-01-31 15:08:42,507 WARN L628 ntHoareTripleChecker]: (= (select c_main_a c_main_x) 1000) (assume a[x] == 1000;) [2019-01-31 15:08:42,507 WARN L629 ntHoareTripleChecker]: Post: {#1{Arrays: {}, Substate: false}} [2019-01-31 15:08:42,507 WARN L630 ntHoareTripleChecker]: -- [2019-01-31 15:08:42,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:08:42,644 INFO L93 Difference]: Finished difference Result 5 states and 5 transitions. [2019-01-31 15:08:42,644 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-01-31 15:08:42,644 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-01-31 15:08:42,645 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-01-31 15:08:42,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:08:42,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 4 transitions. [2019-01-31 15:08:42,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2019-01-31 15:08:42,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 4 transitions. [2019-01-31 15:08:42,647 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 4 transitions. [2019-01-31 15:08:42,658 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 4 edges. 4 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-01-31 15:08:42,659 INFO L225 Difference]: With dead ends: 5 [2019-01-31 15:08:42,659 INFO L226 Difference]: Without dead ends: 0 [2019-01-31 15:08:42,661 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 0 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2019-01-31 15:08:42,661 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2019-01-31 15:08:42,661 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2019-01-31 15:08:42,661 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-01-31 15:08:42,661 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2019-01-31 15:08:42,662 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-31 15:08:42,662 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-31 15:08:42,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:08:42,662 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-31 15:08:42,662 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:08:42,662 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:08:42,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:08:42,663 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-01-31 15:08:42,663 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-01-31 15:08:42,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-01-31 15:08:42,663 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-01-31 15:08:42,663 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:08:42,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:08:42,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-01-31 15:08:42,663 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-01-31 15:08:42,664 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-01-31 15:08:42,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2019-01-31 15:08:42,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2019-01-31 15:08:42,664 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 4 [2019-01-31 15:08:42,664 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-01-31 15:08:42,664 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2019-01-31 15:08:42,665 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-01-31 15:08:42,665 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-01-31 15:08:42,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-01-31 15:08:42,669 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2019-01-31 15:08:42,700 INFO L448 ceAbstractionStarter]: For program point mainENTRY(lines 11 30) no Hoare annotation was computed. [2019-01-31 15:08:42,700 INFO L448 ceAbstractionStarter]: For program point L27(line 27) no Hoare annotation was computed. [2019-01-31 15:08:42,700 INFO L448 ceAbstractionStarter]: For program point L26-1(lines 11 30) no Hoare annotation was computed. [2019-01-31 15:08:42,700 INFO L448 ceAbstractionStarter]: For program point mainEXIT(lines 11 30) no Hoare annotation was computed. [2019-01-31 15:08:42,701 INFO L448 ceAbstractionStarter]: For program point mainErr0ASSERT_VIOLATIONASSERT(line 27) no Hoare annotation was computed. [2019-01-31 15:08:42,701 INFO L444 ceAbstractionStarter]: At program point L21-1(lines 21 28) the Hoare annotation is: (forall ((v_idx_552 Int) (v_idx_550 Int)) (let ((.cse0 (+ main_y 1))) (and (let ((.cse9 (select main_a v_idx_552))) (let ((.cse5 (<= (+ main_x 1) v_idx_552)) (.cse7 (<= 0 (* 2 .cse9))) (.cse4 (< v_idx_552 main_x))) (let ((.cse1 (or .cse5 (and .cse7 (<= 0 .cse9)) .cse4))) (or (and (<= .cse0 v_idx_550) .cse1) (let ((.cse8 (select main_a v_idx_550))) (let ((.cse2 (<= (* 2 .cse8) 2000))) (and .cse2 (let ((.cse3 (<= .cse8 1000))) (or (and .cse2 .cse3 .cse4) (and .cse5 .cse2 .cse3) (let ((.cse6 (+ .cse8 .cse9))) (and (<= .cse6 1000) .cse7 (<= 1000 .cse6) (<= .cse8 (+ .cse9 1000))))))))) (and .cse1 (< v_idx_550 main_y)))))) (<= .cse0 main_x)))) [2019-01-31 15:08:42,702 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2019-01-31 15:08:42,706 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2019-01-31 15:08:42,707 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2019-01-31 15:08:42,707 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2019-01-31 15:08:42,707 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2019-01-31 15:08:42,707 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2019-01-31 15:08:42,707 INFO L163 areAnnotationChecker]: CFG has 1 edges. 1 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2019-01-31 15:08:42,715 INFO L202 PluginConnector]: Adding new model Luxembourg-WithArrays.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 31.01 03:08:42 BoogieIcfgContainer [2019-01-31 15:08:42,715 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2019-01-31 15:08:42,716 INFO L168 Benchmark]: Toolchain (without parser) took 44857.67 ms. Allocated memory was 131.6 MB in the beginning and 709.4 MB in the end (delta: 577.8 MB). Free memory was 107.0 MB in the beginning and 371.1 MB in the end (delta: -264.1 MB). Peak memory consumption was 313.6 MB. Max. memory is 7.1 GB. [2019-01-31 15:08:42,718 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 131.6 MB. Free memory is still 108.2 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-01-31 15:08:42,718 INFO L168 Benchmark]: Boogie Procedure Inliner took 38.89 ms. Allocated memory is still 131.6 MB. Free memory was 106.8 MB in the beginning and 104.9 MB in the end (delta: 1.8 MB). Peak memory consumption was 1.8 MB. Max. memory is 7.1 GB. [2019-01-31 15:08:42,719 INFO L168 Benchmark]: Boogie Preprocessor took 31.28 ms. Allocated memory is still 131.6 MB. Free memory was 104.9 MB in the beginning and 103.8 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. [2019-01-31 15:08:42,720 INFO L168 Benchmark]: RCFGBuilder took 319.36 ms. Allocated memory is still 131.6 MB. Free memory was 103.8 MB in the beginning and 93.6 MB in the end (delta: 10.2 MB). Peak memory consumption was 10.2 MB. Max. memory is 7.1 GB. [2019-01-31 15:08:42,721 INFO L168 Benchmark]: TraceAbstraction took 44463.66 ms. Allocated memory was 131.6 MB in the beginning and 709.4 MB in the end (delta: 577.8 MB). Free memory was 93.4 MB in the beginning and 371.1 MB in the end (delta: -277.7 MB). Peak memory consumption was 300.1 MB. Max. memory is 7.1 GB. [2019-01-31 15:08:42,725 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 131.6 MB. Free memory is still 108.2 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 38.89 ms. Allocated memory is still 131.6 MB. Free memory was 106.8 MB in the beginning and 104.9 MB in the end (delta: 1.8 MB). Peak memory consumption was 1.8 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 31.28 ms. Allocated memory is still 131.6 MB. Free memory was 104.9 MB in the beginning and 103.8 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. * RCFGBuilder took 319.36 ms. Allocated memory is still 131.6 MB. Free memory was 103.8 MB in the beginning and 93.6 MB in the end (delta: 10.2 MB). Peak memory consumption was 10.2 MB. Max. memory is 7.1 GB. * TraceAbstraction took 44463.66 ms. Allocated memory was 131.6 MB in the beginning and 709.4 MB in the end (delta: 577.8 MB). Free memory was 93.4 MB in the beginning and 371.1 MB in the end (delta: -277.7 MB). Peak memory consumption was 300.1 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 27]: assertion always holds For all program executions holds that assertion always holds at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 21]: Loop Invariant Derived loop invariant: (forall v_idx_552 : int, v_idx_550 : int :: (((y + 1 <= v_idx_550 && ((x + 1 <= v_idx_552 || (0 <= 2 * a[v_idx_552] && 0 <= a[v_idx_552])) || v_idx_552 < x)) || (2 * a[v_idx_550] <= 2000 && ((((2 * a[v_idx_550] <= 2000 && a[v_idx_550] <= 1000) && v_idx_552 < x) || ((x + 1 <= v_idx_552 && 2 * a[v_idx_550] <= 2000) && a[v_idx_550] <= 1000)) || (((a[v_idx_550] + a[v_idx_552] <= 1000 && 0 <= 2 * a[v_idx_552]) && 1000 <= a[v_idx_550] + a[v_idx_552]) && a[v_idx_550] <= a[v_idx_552] + 1000)))) || (((x + 1 <= v_idx_552 || (0 <= 2 * a[v_idx_552] && 0 <= a[v_idx_552])) || v_idx_552 < x) && v_idx_550 < y)) && y + 1 <= x) - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 6 locations, 1 error locations. SAFE Result, 44.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 10.8s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 6 SDtfs, 3 SDslu, 1 SDs, 0 SdLazy, 8 SolverSat, 4 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 11.6s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=6occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 26.6s AbstIntTime, 1 AbstIntIterations, 1 AbstIntStrong, 1.0 AbsIntWeakeningRatio, 0.0 AbsIntAvgWeakeningVarsNumRemoved, 0.0 AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 2 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 1 LocationsWithAnnotation, 1 PreInvPairs, 2 NumberOfFragments, 140 HoareAnnotationTreeSize, 1 FomulaSimplifications, 151 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 1 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.7s InterpolantComputationTime, 7 NumberOfCodeBlocks, 7 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 5 ConstructedInterpolants, 0 QuantifiedInterpolants, 88 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 0/1 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...