/root/.sdkman/candidates/java/current/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../benchexec/../../../trunk/examples/settings/gemcutter/NewStatesSleep.epf --traceabstraction.dfs.order.used.in.por LOOP_LOCKSTEP --traceabstraction.additional.conditional.commutativity.checking IA --traceabstraction.criterion.for.conditional.commutativity.checking DEFAULT -tc ../benchexec/../../../trunk/examples/toolchains/AutomizerCInline.xml -i ../../../trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c -------------------------------------------------------------------------------- This is Ultimate 0.2.4-wip.dk.conditional-comm-3774817-m [2024-04-03 23:32:14,783 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-04-03 23:32:14,848 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../benchexec/../../../trunk/examples/settings/gemcutter/NewStatesSleep.epf [2024-04-03 23:32:14,852 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-04-03 23:32:14,853 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-04-03 23:32:14,874 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-04-03 23:32:14,875 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-04-03 23:32:14,875 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-04-03 23:32:14,875 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-04-03 23:32:14,878 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-04-03 23:32:14,879 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-04-03 23:32:14,879 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-04-03 23:32:14,879 INFO L153 SettingsManager]: * Use SBE=true [2024-04-03 23:32:14,880 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * sizeof long=4 [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-04-03 23:32:14,881 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * sizeof long double=12 [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * Use constant arrays=true [2024-04-03 23:32:14,882 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-04-03 23:32:14,882 INFO L153 SettingsManager]: * To the following directory=./dump/ [2024-04-03 23:32:14,883 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-04-03 23:32:14,883 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-04-03 23:32:14,884 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=SLEEP_NEW_STATES [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-04-03 23:32:14,884 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-04-03 23:32:14,885 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-04-03 23:32:14,885 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-04-03 23:32:14,885 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: DFS Order used in POR -> LOOP_LOCKSTEP Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Additional conditional commutativity checking -> IA Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Criterion for conditional commutativity checking -> DEFAULT [2024-04-03 23:32:15,093 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-04-03 23:32:15,124 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-04-03 23:32:15,126 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-04-03 23:32:15,127 INFO L270 PluginConnector]: Initializing CDTParser... [2024-04-03 23:32:15,128 INFO L274 PluginConnector]: CDTParser initialized [2024-04-03 23:32:15,128 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c [2024-04-03 23:32:16,173 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-04-03 23:32:16,348 INFO L384 CDTParser]: Found 1 translation units. [2024-04-03 23:32:16,348 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c [2024-04-03 23:32:16,354 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/9c255d755/ba93151b826f4556aafc960596edb269/FLAG2f50b750a [2024-04-03 23:32:16,364 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/9c255d755/ba93151b826f4556aafc960596edb269 [2024-04-03 23:32:16,366 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-04-03 23:32:16,367 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-04-03 23:32:16,368 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-04-03 23:32:16,368 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-04-03 23:32:16,372 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-04-03 23:32:16,372 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,373 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2c92edd0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16, skipping insertion in model container [2024-04-03 23:32:16,373 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,390 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-04-03 23:32:16,547 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c[2618,2631] [2024-04-03 23:32:16,559 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-04-03 23:32:16,571 INFO L202 MainTranslator]: Completed pre-run [2024-04-03 23:32:16,606 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c[2618,2631] [2024-04-03 23:32:16,608 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-04-03 23:32:16,622 INFO L206 MainTranslator]: Completed translation [2024-04-03 23:32:16,622 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16 WrapperNode [2024-04-03 23:32:16,622 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-04-03 23:32:16,624 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-04-03 23:32:16,624 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-04-03 23:32:16,624 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-04-03 23:32:16,629 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,647 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,678 INFO L138 Inliner]: procedures = 25, calls = 41, calls flagged for inlining = 13, calls inlined = 17, statements flattened = 196 [2024-04-03 23:32:16,679 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-04-03 23:32:16,680 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-04-03 23:32:16,680 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-04-03 23:32:16,680 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-04-03 23:32:16,687 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,688 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,700 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,700 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,754 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,757 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,758 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,759 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,767 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-04-03 23:32:16,768 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-04-03 23:32:16,768 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-04-03 23:32:16,768 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-04-03 23:32:16,768 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (1/1) ... [2024-04-03 23:32:16,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-04-03 23:32:16,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:16,826 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2024-04-03 23:32:16,886 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2024-04-03 23:32:16,908 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-04-03 23:32:16,908 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-04-03 23:32:16,909 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-04-03 23:32:16,909 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-04-03 23:32:16,909 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-04-03 23:32:16,910 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-04-03 23:32:16,910 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-04-03 23:32:16,911 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-04-03 23:32:16,911 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-04-03 23:32:16,913 WARN L213 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-04-03 23:32:17,001 INFO L241 CfgBuilder]: Building ICFG [2024-04-03 23:32:17,006 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2024-04-03 23:32:17,288 INFO L282 CfgBuilder]: Performing block encoding [2024-04-03 23:32:17,299 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-04-03 23:32:17,300 INFO L309 CfgBuilder]: Removed 7 assume(true) statements. [2024-04-03 23:32:17,301 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.04 11:32:17 BoogieIcfgContainer [2024-04-03 23:32:17,301 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-04-03 23:32:17,303 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-04-03 23:32:17,303 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-04-03 23:32:17,309 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-04-03 23:32:17,309 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 03.04 11:32:16" (1/3) ... [2024-04-03 23:32:17,310 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@740e25db and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.04 11:32:17, skipping insertion in model container [2024-04-03 23:32:17,310 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.04 11:32:16" (2/3) ... [2024-04-03 23:32:17,311 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@740e25db and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.04 11:32:17, skipping insertion in model container [2024-04-03 23:32:17,311 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.04 11:32:17" (3/3) ... [2024-04-03 23:32:17,312 INFO L112 eAbstractionObserver]: Analyzing ICFG loop-tiling-eq.wvr.c [2024-04-03 23:32:17,320 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-04-03 23:32:17,327 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-04-03 23:32:17,327 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-04-03 23:32:17,327 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-04-03 23:32:17,387 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-04-03 23:32:17,421 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-04-03 23:32:17,421 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-04-03 23:32:17,421 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:17,438 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-04-03 23:32:17,455 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2024-04-03 23:32:17,484 INFO L184 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-04-03 23:32:17,503 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:17,504 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-04-03 23:32:17,512 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@5f4dc01f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms], mConComChecker=IA, mConComCheckerCriterion=DEFAULT, mConComCheckerLimitedChecksCriterion=false, mConComCheckerCriterionLimit=1, mConComCheckerRandomProb=100, mConComCheckerRandomSeed=123 [2024-04-03 23:32:17,513 INFO L358 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2024-04-03 23:32:18,791 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:18,793 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:18,793 INFO L85 PathProgramCache]: Analyzing trace with hash -1610377654, now seen corresponding path program 1 times [2024-04-03 23:32:18,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:18,800 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1890974360] [2024-04-03 23:32:18,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:18,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:18,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:18,979 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:18,979 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1890974360] [2024-04-03 23:32:18,980 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2024-04-03 23:32:18,980 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [754748864] [2024-04-03 23:32:18,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:18,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:18,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:19,018 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:19,019 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-04-03 23:32:19,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:19,204 INFO L262 TraceCheckSpWp]: Trace formula consists of 487 conjuncts, 1 conjunts are in the unsatisfiable core [2024-04-03 23:32:19,214 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:19,244 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2024-04-03 23:32:19,244 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-03 23:32:19,245 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [754748864] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-03 23:32:19,245 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-03 23:32:19,245 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-04-03 23:32:19,246 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1019508282] [2024-04-03 23:32:19,247 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-03 23:32:19,280 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-04-03 23:32:19,280 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:19,479 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-04-03 23:32:19,480 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-04-03 23:32:19,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:19,482 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:19,483 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 100.5) internal successors, (201), 2 states have internal predecessors, (201), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:19,483 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:19,516 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:19,524 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-04-03 23:32:19,722 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2024-04-03 23:32:19,723 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:19,723 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:19,723 INFO L85 PathProgramCache]: Analyzing trace with hash 1426262776, now seen corresponding path program 1 times [2024-04-03 23:32:19,723 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:19,724 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1012639929] [2024-04-03 23:32:19,724 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:19,724 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:19,769 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:19,770 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1413636903] [2024-04-03 23:32:19,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:19,770 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:19,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:19,793 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:19,818 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-04-03 23:32:19,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:19,917 INFO L262 TraceCheckSpWp]: Trace formula consists of 467 conjuncts, 6 conjunts are in the unsatisfiable core [2024-04-03 23:32:19,931 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:20,102 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2024-04-03 23:32:20,103 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-03 23:32:20,103 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:20,103 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1012639929] [2024-04-03 23:32:20,103 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:20,104 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1413636903] [2024-04-03 23:32:20,104 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1413636903] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-03 23:32:20,104 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-03 23:32:20,104 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-04-03 23:32:20,104 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1854630273] [2024-04-03 23:32:20,104 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-03 23:32:20,107 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-04-03 23:32:20,107 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:20,154 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-04-03 23:32:20,154 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-04-03 23:32:20,154 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,155 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:20,155 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 27.428571428571427) internal successors, (192), 7 states have internal predecessors, (192), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:20,155 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,156 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,292 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:20,314 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2024-04-03 23:32:20,497 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,4 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:20,498 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:20,498 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:20,499 INFO L85 PathProgramCache]: Analyzing trace with hash -590941296, now seen corresponding path program 1 times [2024-04-03 23:32:20,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:20,500 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [777783477] [2024-04-03 23:32:20,500 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:20,503 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:20,539 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:20,539 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [747412586] [2024-04-03 23:32:20,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:20,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:20,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:20,541 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:20,564 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-04-03 23:32:20,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:20,769 INFO L262 TraceCheckSpWp]: Trace formula consists of 511 conjuncts, 4 conjunts are in the unsatisfiable core [2024-04-03 23:32:20,772 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:20,832 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 16 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-04-03 23:32:20,832 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-03 23:32:20,832 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:20,833 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [777783477] [2024-04-03 23:32:20,833 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:20,833 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [747412586] [2024-04-03 23:32:20,833 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [747412586] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-03 23:32:20,833 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-03 23:32:20,834 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-04-03 23:32:20,834 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [547146849] [2024-04-03 23:32:20,834 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-03 23:32:20,834 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-04-03 23:32:20,834 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:20,873 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-04-03 23:32:20,874 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-04-03 23:32:20,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,876 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:20,876 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 42.8) internal successors, (214), 5 states have internal predecessors, (214), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:20,877 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,881 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:20,882 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:20,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:20,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:20,942 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2024-04-03 23:32:21,142 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,5 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:21,142 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:21,143 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:21,143 INFO L85 PathProgramCache]: Analyzing trace with hash -65961908, now seen corresponding path program 1 times [2024-04-03 23:32:21,143 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:21,143 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1849241651] [2024-04-03 23:32:21,143 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:21,143 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:21,165 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:21,166 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1099896119] [2024-04-03 23:32:21,166 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:21,166 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:21,166 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:21,169 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:21,195 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-04-03 23:32:21,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:21,313 INFO L262 TraceCheckSpWp]: Trace formula consists of 583 conjuncts, 10 conjunts are in the unsatisfiable core [2024-04-03 23:32:21,316 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:21,519 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 18 proven. 1 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2024-04-03 23:32:21,519 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-03 23:32:21,797 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 18 proven. 1 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2024-04-03 23:32:21,798 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:21,798 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1849241651] [2024-04-03 23:32:21,798 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:21,798 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1099896119] [2024-04-03 23:32:21,798 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1099896119] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-03 23:32:21,798 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-03 23:32:21,798 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2024-04-03 23:32:21,798 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1167294146] [2024-04-03 23:32:21,798 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-03 23:32:21,799 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-04-03 23:32:21,799 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:21,855 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-04-03 23:32:21,855 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=264, Unknown=0, NotChecked=0, Total=342 [2024-04-03 23:32:21,855 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:21,855 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:21,856 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 15.631578947368421) internal successors, (297), 19 states have internal predecessors, (297), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:21,856 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:21,856 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:21,856 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:21,856 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:22,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:22,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:22,239 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2024-04-03 23:32:22,437 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,6 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:22,437 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:22,438 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:22,438 INFO L85 PathProgramCache]: Analyzing trace with hash -1840211228, now seen corresponding path program 2 times [2024-04-03 23:32:22,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:22,440 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [588639735] [2024-04-03 23:32:22,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:22,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:22,461 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:22,462 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [988835408] [2024-04-03 23:32:22,462 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-04-03 23:32:22,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:22,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:22,463 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:22,493 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2024-04-03 23:32:22,669 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-04-03 23:32:22,669 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-04-03 23:32:22,671 INFO L262 TraceCheckSpWp]: Trace formula consists of 627 conjuncts, 6 conjunts are in the unsatisfiable core [2024-04-03 23:32:22,674 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:22,769 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 26 proven. 0 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2024-04-03 23:32:22,769 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-03 23:32:22,769 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:22,769 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [588639735] [2024-04-03 23:32:22,769 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:22,769 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [988835408] [2024-04-03 23:32:22,769 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [988835408] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-03 23:32:22,769 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-03 23:32:22,769 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-04-03 23:32:22,770 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1084190711] [2024-04-03 23:32:22,770 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-03 23:32:22,770 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-04-03 23:32:22,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:22,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-04-03 23:32:22,801 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-04-03 23:32:22,801 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,802 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:22,802 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 36.142857142857146) internal successors, (253), 7 states have internal predecessors, (253), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:22,802 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,802 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:22,802 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:22,802 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:22,802 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:22,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:22,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:22,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:22,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-03 23:32:22,968 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2024-04-03 23:32:23,156 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,7 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:23,156 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:23,156 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:23,156 INFO L85 PathProgramCache]: Analyzing trace with hash 173938187, now seen corresponding path program 1 times [2024-04-03 23:32:23,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:23,157 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [956305779] [2024-04-03 23:32:23,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:23,157 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:23,177 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:23,177 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [695869461] [2024-04-03 23:32:23,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:23,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:23,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:23,179 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:23,217 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2024-04-03 23:32:23,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:23,355 INFO L262 TraceCheckSpWp]: Trace formula consists of 653 conjuncts, 8 conjunts are in the unsatisfiable core [2024-04-03 23:32:23,358 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:23,453 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 14 proven. 22 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2024-04-03 23:32:23,453 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-03 23:32:23,603 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 15 proven. 21 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2024-04-03 23:32:23,603 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:23,603 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [956305779] [2024-04-03 23:32:23,603 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:23,603 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [695869461] [2024-04-03 23:32:23,603 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [695869461] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-03 23:32:23,604 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-03 23:32:23,604 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2024-04-03 23:32:23,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [312416683] [2024-04-03 23:32:23,604 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-03 23:32:23,604 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-04-03 23:32:23,604 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:23,653 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-04-03 23:32:23,653 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2024-04-03 23:32:23,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:23,653 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:23,653 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 22.53846153846154) internal successors, (293), 13 states have internal predecessors, (293), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:23,653 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:23,653 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:23,654 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:23,654 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:23,654 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-04-03 23:32:23,654 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:23,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:23,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:23,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:23,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:23,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-03 23:32:23,912 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-03 23:32:23,933 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2024-04-03 23:32:24,112 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 8 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2024-04-03 23:32:24,113 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:24,113 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:24,113 INFO L85 PathProgramCache]: Analyzing trace with hash -771055893, now seen corresponding path program 1 times [2024-04-03 23:32:24,113 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:24,114 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1225511655] [2024-04-03 23:32:24,114 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:24,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:24,149 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:24,150 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [955071407] [2024-04-03 23:32:24,150 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:24,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:24,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:24,169 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:24,208 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2024-04-03 23:32:24,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-03 23:32:24,349 INFO L262 TraceCheckSpWp]: Trace formula consists of 649 conjuncts, 14 conjunts are in the unsatisfiable core [2024-04-03 23:32:24,352 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:24,659 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 26 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-04-03 23:32:24,660 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-03 23:32:25,004 INFO L134 CoverageAnalysis]: Checked inductivity of 48 backedges. 26 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-04-03 23:32:25,005 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:32:25,005 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1225511655] [2024-04-03 23:32:25,005 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:32:25,005 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [955071407] [2024-04-03 23:32:25,005 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [955071407] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-03 23:32:25,005 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-03 23:32:25,005 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 27 [2024-04-03 23:32:25,005 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [410153156] [2024-04-03 23:32:25,005 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-03 23:32:25,006 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2024-04-03 23:32:25,006 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-03 23:32:25,040 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-04-03 23:32:25,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=144, Invalid=558, Unknown=0, NotChecked=0, Total=702 [2024-04-03 23:32:25,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:25,041 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-03 23:32:25,041 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 12.481481481481481) internal successors, (337), 27 states have internal predecessors, (337), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 18 states. [2024-04-03 23:32:25,041 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:25,441 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-03 23:32:25,442 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-03 23:32:25,460 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2024-04-03 23:32:25,649 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,9 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:25,649 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-04-03 23:32:25,649 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-03 23:32:25,649 INFO L85 PathProgramCache]: Analyzing trace with hash 2134717315, now seen corresponding path program 2 times [2024-04-03 23:32:25,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-03 23:32:25,649 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1798390853] [2024-04-03 23:32:25,650 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-03 23:32:25,650 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-03 23:32:25,696 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-03 23:32:25,696 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [930136180] [2024-04-03 23:32:25,696 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-04-03 23:32:25,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:32:25,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-03 23:32:25,725 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-04-03 23:32:25,772 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2024-04-03 23:32:27,176 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-04-03 23:32:27,176 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-04-03 23:32:27,183 INFO L262 TraceCheckSpWp]: Trace formula consists of 693 conjuncts, 147 conjunts are in the unsatisfiable core [2024-04-03 23:32:27,189 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-03 23:32:27,209 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-04-03 23:32:27,225 INFO L349 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2024-04-03 23:32:27,225 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 12 treesize of output 14 [2024-04-03 23:32:27,343 INFO L349 Elim1Store]: treesize reduction 36, result has 23.4 percent of original size [2024-04-03 23:32:27,343 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 17 treesize of output 22 [2024-04-03 23:32:27,732 INFO L349 Elim1Store]: treesize reduction 78, result has 26.4 percent of original size [2024-04-03 23:32:27,733 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 9 case distinctions, treesize of input 27 treesize of output 45 [2024-04-03 23:32:28,574 INFO L349 Elim1Store]: treesize reduction 96, result has 27.8 percent of original size [2024-04-03 23:32:28,574 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 5 select indices, 5 select index equivalence classes, 3 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 11 case distinctions, treesize of input 32 treesize of output 57 [2024-04-03 23:32:29,273 INFO L349 Elim1Store]: treesize reduction 44, result has 32.3 percent of original size [2024-04-03 23:32:29,274 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 7 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 8 case distinctions, treesize of input 31 treesize of output 39 [2024-04-03 23:32:29,907 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 9 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-04-03 23:32:30,197 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 36 [2024-04-03 23:32:30,461 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 4 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 41 treesize of output 30 [2024-04-03 23:32:30,742 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 15 [2024-04-03 23:32:30,748 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 24 [2024-04-03 23:32:31,111 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 33 treesize of output 24 [2024-04-03 23:32:31,135 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 18 [2024-04-03 23:32:31,639 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-04-03 23:32:31,640 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 21 [2024-04-03 23:32:31,646 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 29 [2024-04-03 23:32:31,661 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 11 [2024-04-03 23:32:32,067 INFO L349 Elim1Store]: treesize reduction 19, result has 20.8 percent of original size [2024-04-03 23:32:32,067 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 84 treesize of output 73 [2024-04-03 23:32:32,073 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 39 treesize of output 33 [2024-04-03 23:32:32,079 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 40 [2024-04-03 23:32:33,633 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 46 [2024-04-03 23:32:33,639 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 26 [2024-04-03 23:32:33,722 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 13 [2024-04-03 23:32:33,830 INFO L134 CoverageAnalysis]: Checked inductivity of 82 backedges. 0 proven. 57 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2024-04-03 23:32:33,830 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-03 23:32:43,528 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-04-03 23:32:43,528 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 856 treesize of output 792 [2024-04-03 23:32:43,535 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 784 treesize of output 772 [2024-04-03 23:32:43,545 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 388 treesize of output 382 [2024-04-03 23:32:47,421 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse5 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse11 (= .cse5 c_~B~0.base)) (.cse26 (= c_~B~0.base c_~A~0.base))) (let ((.cse43 (not .cse26)) (.cse17 (not .cse11)) (.cse8 (select |c_#memory_int| c_~F~0.base)) (.cse7 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse9 (select |c_#memory_int| c_~A~0.base)) (.cse10 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse0 (+ c_thread2Thread1of1ForFork1_~j~0 1))) (and (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse4 (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse6 .cse5 (store (select .cse6 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse3 (* ~b~0 4))) (let ((.cse1 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse3))) (.cse2 (select .cse4 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_40))))))) .cse11) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse13 (* ~b~0 4)) (.cse15 (let ((.cse16 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse16 .cse5 (store (select .cse16 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse12 (select .cse15 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse14 (select (select .cse15 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (= (select .cse12 (+ .cse13 v_arrayElimCell_41)) .cse14) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse12 (+ .cse13 v_arrayElimCell_42)) .cse14) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse17) (or (and (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse21 (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse22 .cse5 (store (select .cse22 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse20 (* ~b~0 4))) (let ((.cse18 (select (select .cse21 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse20))) (.cse19 (select .cse21 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_41))) (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_40))))))))))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse23 (let ((.cse25 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse25 .cse5 (store (select .cse25 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse24 (* ~b~0 4))) (= (select (select .cse23 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse24)) (select (select .cse23 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse24 v_arrayElimCell_40)))))) .cse11)) .cse26) (or .cse26 (and (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse28 (* ~b~0 4)) (.cse30 (let ((.cse31 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse31 .cse5 (store (select .cse31 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse27 (select .cse30 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse29 (select (select .cse30 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse28)))) (or (= (select .cse27 (+ .cse28 v_arrayElimCell_41)) .cse29) (= (select .cse27 (+ .cse28 v_arrayElimCell_40)) .cse29))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse32 (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse34 .cse5 (store (select .cse34 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse33 (* ~b~0 4))) (= (select (select .cse32 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse33 v_arrayElimCell_40)) (select (select .cse32 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse33)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse11))) (or (and (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse36 (* ~b~0 4)) (.cse38 (let ((.cse39 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse39 .cse5 (store (select .cse39 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse35 (select .cse38 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse37 (select (select .cse38 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse36)))) (or (forall ((v_arrayElimCell_41 Int)) (= (select .cse35 (+ .cse36 v_arrayElimCell_41)) .cse37)) (= (select .cse35 (+ .cse36 v_arrayElimCell_42)) .cse37))))))) (< ~M~0 (+ ~b~0 1)))))) (or (forall ((~a~0 Int) (~b~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse40 (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse42 .cse5 (store (select .cse42 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse41 (* ~b~0 4))) (= (select (select .cse40 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse41 v_arrayElimCell_42)) (select (select .cse40 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse41)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse11)) .cse43) (or (and (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse44 (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse46 .cse5 (store (select .cse46 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse45 (* ~b~0 4))) (= (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)) (select (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)))) .cse11) (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (forall ((v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse50 (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse51 .cse5 (store (select .cse51 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse49 (* ~b~0 4))) (let ((.cse47 (select (select .cse50 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse49))) (.cse48 (select .cse50 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_41 Int)) (= .cse47 (select .cse48 (+ .cse49 v_arrayElimCell_41)))) (= .cse47 (select .cse48 (+ .cse49 v_arrayElimCell_42))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1))))))) .cse43) (or .cse17 (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (let ((.cse52 (let ((.cse54 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse54 .cse5 (store (select .cse54 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse53 (* ~b~0 4))) (= (select (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse53 v_arrayElimCell_41)) (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse55 (let ((.cse57 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse57 .cse5 (store (select .cse57 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse56 (* ~b~0 4))) (= (select (select .cse55 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse56)) (select (select .cse55 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse56 v_arrayElimCell_41)))) (< ~M~0 (+ ~b~0 1)))) .cse17) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse61 (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse62 .cse5 (store (select .cse62 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse60 (* ~b~0 4))) (let ((.cse58 (select (select .cse61 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse60))) (.cse59 (select .cse61 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse58 (select .cse59 (+ .cse60 v_arrayElimCell_41))) (= .cse58 (select .cse59 (+ .cse60 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)))))) .cse17) (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse66 (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse67 .cse5 (store (select .cse67 .cse5) (+ .cse7 v_arrayElimCell_40) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse65 (* ~b~0 4))) (let ((.cse63 (select (select .cse66 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse65))) (.cse64 (select .cse66 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (= .cse63 (select .cse64 (+ .cse65 v_arrayElimCell_41))) (= .cse63 (select .cse64 (+ .cse65 v_arrayElimCell_42))) (= .cse63 (select .cse64 (+ .cse65 v_arrayElimCell_40))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse69 (* ~b~0 4)) (.cse71 (let ((.cse72 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse72 .cse5 (store (select .cse72 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse68 (select .cse71 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse70 (select (select .cse71 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse68 (+ .cse69 v_arrayElimCell_40)) .cse70) (< ~M~0 (+ ~b~0 1)) (= (select .cse68 (+ .cse69 v_arrayElimCell_42)) .cse70) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse11) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse74 (* ~b~0 4)) (.cse76 (let ((.cse77 (store |c_#memory_int| c_~A~0.base (store .cse9 .cse10 |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse77 .cse5 (store (select .cse77 .cse5) (+ .cse7 v_arrayElimCell_39) (select .cse8 (+ .cse7 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse73 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse75 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse74)))) (or (= (select .cse73 (+ .cse74 v_arrayElimCell_41)) .cse75) (= (select .cse73 (+ .cse74 v_arrayElimCell_40)) .cse75) (= (select .cse73 (+ .cse74 v_arrayElimCell_42)) .cse75))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (< .cse0 ~M~0))))))) is different from true [2024-04-03 23:32:51,701 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse6 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse29 (= .cse6 c_~B~0.base)) (.cse20 (= c_~B~0.base c_~A~0.base))) (let ((.cse38 (not .cse20)) (.cse1 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse0 (+ |c_thread1Thread1of1ForFork0_#t~post1| 1)) (.cse9 (select |c_#memory_int| c_~F~0.base)) (.cse8 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse10 (select |c_#memory_int| c_~A~0.base)) (.cse16 (not .cse29))) (and (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (forall ((~M~0 Int)) (or (< .cse1 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse5 (let ((.cse7 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse7 .cse6 (store (select .cse7 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse4 (* ~b~0 4))) (let ((.cse2 (select (select .cse5 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse4))) (.cse3 (select .cse5 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (= .cse2 (select .cse3 (+ .cse4 v_arrayElimCell_40))) (= (select .cse3 (+ .cse4 v_arrayElimCell_42)) .cse2) (= .cse2 (select .cse3 (+ .cse4 v_arrayElimCell_41))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse12 (* ~b~0 4)) (.cse14 (let ((.cse15 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse15 .cse6 (store (select .cse15 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse11 (select .cse14 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse13 (select (select .cse14 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse12)))) (or (< ~b~0 0) (= (select .cse11 (+ .cse12 v_arrayElimCell_42)) .cse13) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse11 (+ .cse12 v_arrayElimCell_41)) .cse13))))) .cse16) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse17 (let ((.cse19 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse19 .cse6 (store (select .cse19 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse18 (* ~b~0 4))) (= (select (select .cse17 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)) (select (select .cse17 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse18 v_arrayElimCell_41)))))) .cse16) (or .cse20 (and (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse24 (let ((.cse25 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse25 .cse6 (store (select .cse25 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse23 (* ~b~0 4))) (let ((.cse21 (select (select .cse24 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse23))) (.cse22 (select .cse24 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (= .cse21 (select .cse22 (+ .cse23 v_arrayElimCell_40))) (= .cse21 (select .cse22 (+ .cse23 v_arrayElimCell_41))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< .cse1 ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse26 (let ((.cse28 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse28 .cse6 (store (select .cse28 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse27 (* ~b~0 4))) (= (select (select .cse26 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse27)) (select (select .cse26 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse27 v_arrayElimCell_40)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse29))) (or (and (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse31 (* ~b~0 4)) (.cse33 (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse34 .cse6 (store (select .cse34 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse30 (select .cse33 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse33 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse31)))) (or (forall ((v_arrayElimCell_41 Int)) (= (select .cse30 (+ .cse31 v_arrayElimCell_41)) .cse32)) (= (select .cse30 (+ .cse31 v_arrayElimCell_42)) .cse32))))))))) (< .cse1 ~M~0))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse35 (let ((.cse37 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse37 .cse6 (store (select .cse37 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse36 (* ~b~0 4))) (= (select (select .cse35 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse36 v_arrayElimCell_42)) (select (select .cse35 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse36)))) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)))) .cse29)) .cse38) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse40 (* ~b~0 4)) (.cse42 (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse43 .cse6 (store (select .cse43 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse39 (select .cse42 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse41 (select (select .cse42 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse40)))) (or (< ~b~0 0) (= (select .cse39 (+ .cse40 v_arrayElimCell_42)) .cse41) (< ~a~0 0) (< .cse1 ~M~0) (= (select .cse39 (+ .cse40 v_arrayElimCell_40)) .cse41) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)))))) .cse29) (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse45 (* ~b~0 4)) (.cse47 (let ((.cse48 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse48 .cse6 (store (select .cse48 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse44 (select .cse47 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse46 (select (select .cse47 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)))) (or (= (select .cse44 (+ .cse45 v_arrayElimCell_42)) .cse46) (= (select .cse44 (+ .cse45 v_arrayElimCell_40)) .cse46) (= (select .cse44 (+ .cse45 v_arrayElimCell_41)) .cse46))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (< .cse1 ~M~0))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse52 (let ((.cse53 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse53 .cse6 (store (select .cse53 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse50 (* ~b~0 4))) (let ((.cse51 (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50))) (.cse49 (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse49 (+ .cse50 v_arrayElimCell_42)) .cse51) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse51 (select .cse49 (+ .cse50 v_arrayElimCell_41))))))) .cse16) (or (and (or (forall ((~a~0 Int) (~b~0 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse54 (let ((.cse56 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse56 .cse6 (store (select .cse56 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse55 (* ~b~0 4))) (= (select (select .cse54 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse55 v_arrayElimCell_42)) (select (select .cse54 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse55)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse29) (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_39 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse59 (* ~b~0 4)) (.cse60 (let ((.cse61 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse61 .cse6 (store (select .cse61 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse58 (select .cse60 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse57 (select (select .cse60 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse59)))) (or (forall ((v_arrayElimCell_41 Int)) (= .cse57 (select .cse58 (+ .cse59 v_arrayElimCell_41)))) (= (select .cse58 (+ .cse59 v_arrayElimCell_42)) .cse57))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< .cse1 ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0)))) .cse38) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse64 (* ~b~0 4)) (.cse65 (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse66 .cse6 (store (select .cse66 .cse6) (+ .cse8 v_arrayElimCell_39) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse63 (select .cse65 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse62 (select (select .cse65 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse62 (select .cse63 (+ .cse64 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= (select .cse63 (+ .cse64 v_arrayElimCell_42)) .cse62) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse29) (or (and (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (let ((.cse67 (let ((.cse69 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse69 .cse6 (store (select .cse69 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse68 (* ~b~0 4))) (= (select (select .cse67 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse68 v_arrayElimCell_40)) (select (select .cse67 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse68)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)))) .cse29) (forall ((v_thread1Thread1of1ForFork0_~i~0_519 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (forall ((~M~0 Int)) (or (< .cse1 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse71 (* ~b~0 4)) (.cse73 (let ((.cse74 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse74 .cse6 (store (select .cse74 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse70 (select .cse73 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse72 (select (select .cse73 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse71)))) (or (= (select .cse70 (+ .cse71 v_arrayElimCell_40)) .cse72) (= (select .cse70 (+ .cse71 v_arrayElimCell_41)) .cse72)))))))))))))) .cse20) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse75 (let ((.cse77 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse77 .cse6 (store (select .cse77 .cse6) (+ .cse8 v_arrayElimCell_40) (select .cse9 (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse76 (* ~b~0 4))) (= (select (select .cse75 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse6 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse76 v_arrayElimCell_41)) (select (select .cse75 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse76)))))) .cse16))))) is different from true [2024-04-03 23:32:54,751 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse3 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse11 (= .cse3 c_~B~0.base)) (.cse9 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse10 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse7 (select |c_#memory_int| c_~F~0.base)) (.cse6 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse21 (= c_~B~0.base c_~A~0.base))) (let ((.cse0 (not .cse21)) (.cse15 (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse68 (let ((.cse69 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse69 .cse3 (store (select .cse69 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse66 (* ~b~0 4))) (let ((.cse67 (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse66))) (.cse65 (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (= (select .cse65 (+ .cse66 v_arrayElimCell_42)) .cse67) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse67 (select .cse65 (+ .cse66 v_arrayElimCell_41)))))))) (.cse1 (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse61 (* ~b~0 4)) (.cse63 (let ((.cse64 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse64 .cse3 (store (select .cse64 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse60 (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse62 (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse61)))) (or (< ~b~0 0) (= (select .cse60 (+ .cse61 v_arrayElimCell_42)) .cse62) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (= (select .cse60 (+ .cse61 v_arrayElimCell_41)) .cse62)))))) (.cse43 (not .cse11))) (and (or .cse0 (and .cse1 (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse2 (let ((.cse5 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse5 .cse3 (store (select .cse5 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse4 (* ~b~0 4))) (= (select (select .cse2 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse4 v_arrayElimCell_42)) (select (select .cse2 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse4)))) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)))) .cse11))) (or (and (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (let ((.cse12 (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse14 .cse3 (store (select .cse14 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse13 (* ~b~0 4))) (= (select (select .cse12 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_42)) (select (select .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse11) .cse15) .cse0) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse17 (* ~b~0 4)) (.cse19 (let ((.cse20 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse20 .cse3 (store (select .cse20 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse16 (select .cse19 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17)))) (or (< ~b~0 0) (= (select .cse16 (+ .cse17 v_arrayElimCell_42)) .cse18) (< ~a~0 0) (< .cse9 ~M~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)))))) .cse11) (or .cse21 (and (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (let ((.cse22 (let ((.cse24 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse24 .cse3 (store (select .cse24 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse23 (* ~b~0 4))) (= (select (select .cse22 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse23)) (select (select .cse22 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse23 v_arrayElimCell_40)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse11) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse28 (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse29 .cse3 (store (select .cse29 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse27 (* ~b~0 4))) (let ((.cse25 (select (select .cse28 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse27))) (.cse26 (select .cse28 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (= .cse25 (select .cse26 (+ .cse27 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse25 (select .cse26 (+ .cse27 v_arrayElimCell_41))))))))) (or .cse21 (and (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (let ((.cse30 (let ((.cse32 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse32 .cse3 (store (select .cse32 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse31 (* ~b~0 4))) (= (select (select .cse30 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse31 v_arrayElimCell_40)) (select (select .cse30 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse31)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)))) .cse11) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse34 (* ~b~0 4)) (.cse36 (let ((.cse37 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse37 .cse3 (store (select .cse37 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse33 (select .cse36 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse35 (select (select .cse36 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse34)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (= (select .cse33 (+ .cse34 v_arrayElimCell_40)) .cse35) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (= (select .cse33 (+ .cse34 v_arrayElimCell_41)) .cse35))))))) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse41 (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse42 .cse3 (store (select .cse42 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse40 (* ~b~0 4))) (let ((.cse38 (select (select .cse41 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse40))) (.cse39 (select .cse41 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= (select .cse39 (+ .cse40 v_arrayElimCell_42)) .cse38) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_41))))))) (or .cse43 .cse15) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse44 (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse46 .cse3 (store (select .cse46 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse45 (* ~b~0 4))) (= (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)) (select (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_41)))))) .cse43) (or .cse1 .cse43) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse49 (* ~b~0 4)) (.cse50 (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse51 .cse3 (store (select .cse51 .cse3) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse48 (select .cse50 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse47 (select (select .cse50 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse49)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (= .cse47 (select .cse48 (+ .cse49 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= (select .cse48 (+ .cse49 v_arrayElimCell_42)) .cse47) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse11) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse53 (* ~b~0 4)) (.cse55 (let ((.cse56 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse56 .cse3 (store (select .cse56 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse52 (select .cse55 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse54 (select (select .cse55 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)))) (or (< ~b~0 0) (= (select .cse52 (+ .cse53 v_arrayElimCell_42)) .cse54) (< ~a~0 0) (< .cse9 ~M~0) (= (select .cse52 (+ .cse53 v_arrayElimCell_40)) .cse54) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (= (select .cse52 (+ .cse53 v_arrayElimCell_41)) .cse54))))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse9 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse10) (< ~M~0 (+ ~b~0 1)) (let ((.cse57 (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse59 .cse3 (store (select .cse59 .cse3) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse58 (* ~b~0 4))) (= (select (select .cse57 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse58 v_arrayElimCell_41)) (select (select .cse57 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)))))) .cse43))))) is different from true [2024-04-03 23:32:59,096 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse37 (= c_~B~0.base c_~A~0.base))) (let ((.cse45 (not .cse37)) (.cse1 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse5 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse8 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse10 (select |c_#memory_int| c_~A~0.base)) (.cse11 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse12 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse0 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (not (= c_~B~0.base .cse0)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse6 (let ((.cse9 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse7 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse7 .cse0 (store (select .cse7 .cse0) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse9) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse4 (* ~b~0 4))) (let ((.cse2 (select (select .cse6 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse4))) (.cse3 (select .cse6 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse0 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (= .cse2 (select .cse3 (+ .cse4 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse2 (select .cse3 (+ .cse4 v_arrayElimCell_41))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse13 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (not (= c_~B~0.base .cse13)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse17 (let ((.cse19 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse18 (store |c_#memory_int| c_~A~0.base (store .cse19 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse18 .cse13 (store (select .cse18 .cse13) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse19) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse16 (* ~b~0 4))) (let ((.cse14 (select (select .cse17 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse16))) (.cse15 (select .cse17 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse13 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse14 (select .cse15 (+ .cse16 v_arrayElimCell_41))) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse14 (select .cse15 (+ .cse16 v_arrayElimCell_42)))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse21 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (let ((.cse20 (let ((.cse24 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse23 (store |c_#memory_int| c_~A~0.base (store .cse24 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse23 .cse21 (store (select .cse23 .cse21) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse24) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse22 (* ~b~0 4))) (= (select (select .cse20 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse21 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse22 v_arrayElimCell_41)) (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse22)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (not (= c_~B~0.base .cse21))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse29 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse28 (let ((.cse31 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse30 (store |c_#memory_int| c_~A~0.base (store .cse31 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse30 .cse29 (store (select .cse30 .cse29) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse31) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse27 (* ~b~0 4))) (let ((.cse25 (select (select .cse28 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse27))) (.cse26 (select .cse28 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse29 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse25 (select .cse26 (+ .cse27 v_arrayElimCell_40))) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (= .cse25 (select .cse26 (+ .cse27 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse34 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (let ((.cse32 (let ((.cse36 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse35 (store |c_#memory_int| c_~A~0.base (store .cse36 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse35 .cse34 (store (select .cse35 .cse34) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse36) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse33 (* ~b~0 4))) (= (select (select .cse32 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse33)) (select (select .cse32 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse34 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse33 v_arrayElimCell_40)))))) (= c_~B~0.base .cse34))))) .cse37) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse42 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse39 (* ~b~0 4)) (.cse41 (let ((.cse44 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse44 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse43 .cse42 (store (select .cse43 .cse42) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse44) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse38 (select .cse41 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse42 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse40 (select (select .cse41 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse39)))) (or (< ~b~0 0) (= (select .cse38 (+ .cse39 v_arrayElimCell_42)) .cse40) (= (select .cse38 (+ .cse39 v_arrayElimCell_41)) .cse40) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse38 (+ .cse39 v_arrayElimCell_40)) .cse40) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))) (or .cse45 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse50 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse49 (let ((.cse52 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse52 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse51 .cse50 (store (select .cse51 .cse50) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse52) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse48 (* ~b~0 4))) (let ((.cse46 (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse48))) (.cse47 (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse50 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse46 (select .cse47 (+ .cse48 v_arrayElimCell_41))) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse46 (select .cse47 (+ .cse48 v_arrayElimCell_42)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse55 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse53 (let ((.cse57 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse56 (store |c_#memory_int| c_~A~0.base (store .cse57 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse56 .cse55 (store (select .cse56 .cse55) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse57) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse54 (* ~b~0 4))) (= (select (select .cse53 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse54)) (select (select .cse53 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse55 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse54 v_arrayElimCell_42)))) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (= c_~B~0.base .cse55)))))) (or .cse37 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse62 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse59 (* ~b~0 4)) (.cse61 (let ((.cse64 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse63 (store |c_#memory_int| c_~A~0.base (store .cse64 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse63 .cse62 (store (select .cse63 .cse62) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse64) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse58 (select .cse61 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse62 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse60 (select (select .cse61 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse59)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (= (select .cse58 (+ .cse59 v_arrayElimCell_41)) .cse60) (< ~M~0 (+ ~b~0 1)) (= (select .cse58 (+ .cse59 v_arrayElimCell_40)) .cse60) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse67 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse65 (let ((.cse69 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse68 (store |c_#memory_int| c_~A~0.base (store .cse69 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse68 .cse67 (store (select .cse68 .cse67) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse69) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse66 (* ~b~0 4))) (= (select (select .cse65 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse66)) (select (select .cse65 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse67 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse66 v_arrayElimCell_40)))) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (= c_~B~0.base .cse67)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse74 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse72 (* ~b~0 4)) (.cse73 (let ((.cse76 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse75 (store |c_#memory_int| c_~A~0.base (store .cse76 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse75 .cse74 (store (select .cse75 .cse74) (+ .cse8 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse76) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse71 (select .cse73 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse74 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse70 (select (select .cse73 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse72)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (= .cse70 (select .cse71 (+ .cse72 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= (select .cse71 (+ .cse72 v_arrayElimCell_42)) .cse70) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (= c_~B~0.base .cse74)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse81 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse78 (* ~b~0 4)) (.cse80 (let ((.cse83 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse82 (store |c_#memory_int| c_~A~0.base (store .cse83 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse82 .cse81 (store (select .cse82 .cse81) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse83) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse77 (select .cse80 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse81 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse79 (select (select .cse80 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse78)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= (select .cse77 (+ .cse78 v_arrayElimCell_41)) .cse79) (= .cse79 (select .cse77 (+ .cse78 v_arrayElimCell_40))) (= (select .cse77 (+ .cse78 v_arrayElimCell_42)) .cse79)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse86 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse84 (let ((.cse88 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse87 (store |c_#memory_int| c_~A~0.base (store .cse88 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse87 .cse86 (store (select .cse87 .cse86) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse88) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse85 (* ~b~0 4))) (= (select (select .cse84 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse85)) (select (select .cse84 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse86 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse85 v_arrayElimCell_42)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)))) (= c_~B~0.base .cse86)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse93 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (let ((.cse92 (let ((.cse95 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse94 (store |c_#memory_int| c_~A~0.base (store .cse95 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse94 .cse93 (store (select .cse94 .cse93) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse95) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse91 (* ~b~0 4))) (let ((.cse89 (select (select .cse92 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse91))) (.cse90 (select .cse92 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse93 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (= .cse89 (select .cse90 (+ .cse91 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse89 (select .cse90 (+ .cse91 v_arrayElimCell_41))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)))))))) .cse45) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse100 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse97 (* ~b~0 4)) (.cse99 (let ((.cse102 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse101 (store |c_#memory_int| c_~A~0.base (store .cse102 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse101 .cse100 (store (select .cse101 .cse100) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse102) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse96 (select .cse99 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse100 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse98 (select (select .cse99 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse97)))) (or (< ~b~0 0) (= (select .cse96 (+ .cse97 v_arrayElimCell_42)) .cse98) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (= (select .cse96 (+ .cse97 v_arrayElimCell_40)) .cse98))))) (= c_~B~0.base .cse100)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse105 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse12))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse1 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse5) (< ~M~0 (+ ~b~0 1)) (let ((.cse103 (let ((.cse107 (store .cse10 .cse11 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse106 (store |c_#memory_int| c_~A~0.base (store .cse107 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse106 .cse105 (store (select .cse106 .cse105) (+ .cse8 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse107) c_~F~0.base) (+ .cse8 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse104 (* ~b~0 4))) (= (select (select .cse103 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse104)) (select (select .cse103 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse105 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse104 v_arrayElimCell_41)))))) (not (= c_~B~0.base .cse105)))))))) is different from true [2024-04-03 23:33:03,610 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse48 (= c_~B~0.base c_~A~0.base))) (let ((.cse30 (not .cse48)) (.cse6 (select |c_#memory_int| c_~A~0.base)) (.cse7 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse0 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse8 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse3 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse1 (let ((.cse5 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse4 (store |c_#memory_int| c_~A~0.base (store .cse5 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse4 .cse3 (store (select .cse4 .cse3) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse5) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (= (select (select .cse1 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2)) (select (select .cse1 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse2 v_arrayElimCell_41)))) (< 1 ~M~0))) (not (= c_~B~0.base .cse3))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse13 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse12 (let ((.cse15 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse15 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse14 .cse13 (store (select .cse14 .cse13) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse15) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse11 (* ~b~0 4))) (let ((.cse9 (select (select .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse11))) (.cse10 (select .cse12 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse13 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (= .cse9 (select .cse10 (+ .cse11 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= .cse9 (select .cse10 (+ .cse11 v_arrayElimCell_42))) (< 1 ~M~0))))) (= c_~B~0.base .cse13)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse20 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse19 (let ((.cse22 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse22 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse21 .cse20 (store (select .cse21 .cse20) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse22) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse17 (* ~b~0 4))) (let ((.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17))) (.cse16 (select .cse19 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse20 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= .cse18 (select .cse16 (+ .cse17 v_arrayElimCell_42))) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse27 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse24 (* ~b~0 4)) (.cse26 (let ((.cse29 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse28 (store |c_#memory_int| c_~A~0.base (store .cse29 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse28 .cse27 (store (select .cse28 .cse27) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse29) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse23 (select .cse26 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse27 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse25 (select (select .cse26 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse24)))) (or (< ~b~0 0) (= (select .cse23 (+ .cse24 v_arrayElimCell_42)) .cse25) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse23 (+ .cse24 v_arrayElimCell_41)) .cse25) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse27))))) (or .cse30 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse35 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse32 (* ~b~0 4)) (.cse34 (let ((.cse37 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse36 .cse35 (store (select .cse36 .cse35) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse37) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse31 (select .cse34 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse35 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse33 (select (select .cse34 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse31 (+ .cse32 v_arrayElimCell_42)) .cse33) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse31 (+ .cse32 v_arrayElimCell_41)) .cse33) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse39 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse38 (let ((.cse42 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse42 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse41 .cse39 (store (select .cse41 .cse39) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse42) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse40 (* ~b~0 4))) (= (select (select .cse38 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse39 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse40 v_arrayElimCell_42)) (select (select .cse38 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse40)))) (< 1 ~M~0))) (= c_~B~0.base .cse39)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse43 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (not (= c_~B~0.base .cse43)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse44 (let ((.cse47 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse47 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse46 .cse43 (store (select .cse46 .cse43) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse47) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse45 (* ~b~0 4))) (= (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)) (select (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse43 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_41)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (or .cse48 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse51 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse49 (let ((.cse53 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse52 (store |c_#memory_int| c_~A~0.base (store .cse53 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse52 .cse51 (store (select .cse52 .cse51) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse53) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse50 (* ~b~0 4))) (= (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50)) (select (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse51 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse50 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse51)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse58 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse57 (let ((.cse60 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse60 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse59 .cse58 (store (select .cse59 .cse58) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse60) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse56 (* ~b~0 4))) (let ((.cse54 (select (select .cse57 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse56))) (.cse55 (select .cse57 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse58 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse54 (select .cse55 (+ .cse56 v_arrayElimCell_41))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse54 (select .cse55 (+ .cse56 v_arrayElimCell_40)))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse65 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse62 (* ~b~0 4)) (.cse64 (let ((.cse67 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse67 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse66 .cse65 (store (select .cse66 .cse65) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse67) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse61 (select .cse64 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse65 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse63 (select (select .cse64 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse62)))) (or (< ~b~0 0) (= (select .cse61 (+ .cse62 v_arrayElimCell_42)) .cse63) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse61 (+ .cse62 v_arrayElimCell_40)) .cse63) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse65)))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse70 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse68 (let ((.cse72 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse72 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse71 .cse70 (store (select .cse71 .cse70) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse72) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)) (select (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse70 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_42)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse74 (* ~b~0 4)) (.cse76 (let ((.cse79 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse78 (store |c_#memory_int| c_~A~0.base (store .cse79 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse78 .cse77 (store (select .cse78 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse79) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse73 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse77 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse75 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse74)))) (or (< ~b~0 0) (= (select .cse73 (+ .cse74 v_arrayElimCell_42)) .cse75) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse73 (+ .cse74 v_arrayElimCell_41)) .cse75) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))) .cse30) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse81 (* ~b~0 4)) (.cse83 (let ((.cse86 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse80 (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse81)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (= (select .cse80 (+ .cse81 v_arrayElimCell_41)) .cse82) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse80 (+ .cse81 v_arrayElimCell_42)) .cse82) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse87 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (not (= c_~B~0.base .cse87)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse89 (* ~b~0 4)) (.cse91 (let ((.cse93 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse93 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse92 .cse87 (store (select .cse92 .cse87) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse93) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse88 (select .cse91 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse87 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse90 (select (select .cse91 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse88 (+ .cse89 v_arrayElimCell_42)) .cse90) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse88 (+ .cse89 v_arrayElimCell_41)) .cse90) (< 1 ~M~0)))))))) (or .cse48 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse98 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse95 (* ~b~0 4)) (.cse97 (let ((.cse100 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse99 (store |c_#memory_int| c_~A~0.base (store .cse100 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse99 .cse98 (store (select .cse99 .cse98) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse100) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse94 (select .cse97 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse98 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse96 (select (select .cse97 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)))) (or (< ~b~0 0) (= (select .cse94 (+ .cse95 v_arrayElimCell_41)) .cse96) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (= (select .cse94 (+ .cse95 v_arrayElimCell_40)) .cse96) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse101 (let ((.cse105 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse102 (* ~b~0 4))) (= (select (select .cse101 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse102)) (select (select .cse101 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse102 v_arrayElimCell_40)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse103))))))))) is different from false [2024-04-03 23:33:05,627 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse48 (= c_~B~0.base c_~A~0.base))) (let ((.cse30 (not .cse48)) (.cse6 (select |c_#memory_int| c_~A~0.base)) (.cse7 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse0 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse8 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse3 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse1 (let ((.cse5 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse4 (store |c_#memory_int| c_~A~0.base (store .cse5 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse4 .cse3 (store (select .cse4 .cse3) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse5) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (= (select (select .cse1 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2)) (select (select .cse1 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse2 v_arrayElimCell_41)))) (< 1 ~M~0))) (not (= c_~B~0.base .cse3))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse13 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse12 (let ((.cse15 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse15 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse14 .cse13 (store (select .cse14 .cse13) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse15) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse11 (* ~b~0 4))) (let ((.cse9 (select (select .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse11))) (.cse10 (select .cse12 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse13 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (= .cse9 (select .cse10 (+ .cse11 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (= .cse9 (select .cse10 (+ .cse11 v_arrayElimCell_42))) (< 1 ~M~0))))) (= c_~B~0.base .cse13)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse20 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse19 (let ((.cse22 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse22 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse21 .cse20 (store (select .cse21 .cse20) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse22) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse17 (* ~b~0 4))) (let ((.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17))) (.cse16 (select .cse19 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse20 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= .cse18 (select .cse16 (+ .cse17 v_arrayElimCell_42))) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse27 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse24 (* ~b~0 4)) (.cse26 (let ((.cse29 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse28 (store |c_#memory_int| c_~A~0.base (store .cse29 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse28 .cse27 (store (select .cse28 .cse27) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse29) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse23 (select .cse26 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse27 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse25 (select (select .cse26 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse24)))) (or (< ~b~0 0) (= (select .cse23 (+ .cse24 v_arrayElimCell_42)) .cse25) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse23 (+ .cse24 v_arrayElimCell_41)) .cse25) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse27))))) (or .cse30 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse35 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse32 (* ~b~0 4)) (.cse34 (let ((.cse37 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse36 .cse35 (store (select .cse36 .cse35) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse37) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse31 (select .cse34 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse35 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse33 (select (select .cse34 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse31 (+ .cse32 v_arrayElimCell_42)) .cse33) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse31 (+ .cse32 v_arrayElimCell_41)) .cse33) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse39 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse38 (let ((.cse42 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse42 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse41 .cse39 (store (select .cse41 .cse39) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse42) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse40 (* ~b~0 4))) (= (select (select .cse38 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse39 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse40 v_arrayElimCell_42)) (select (select .cse38 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse40)))) (< 1 ~M~0))) (= c_~B~0.base .cse39)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse43 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (not (= c_~B~0.base .cse43)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (let ((.cse44 (let ((.cse47 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse47 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse46 .cse43 (store (select .cse46 .cse43) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse47) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse45 (* ~b~0 4))) (= (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)) (select (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse43 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_41)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (or .cse48 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse51 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse49 (let ((.cse53 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse52 (store |c_#memory_int| c_~A~0.base (store .cse53 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse52 .cse51 (store (select .cse52 .cse51) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse53) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse50 (* ~b~0 4))) (= (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50)) (select (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse51 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse50 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse51)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse58 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse57 (let ((.cse60 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse60 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse59 .cse58 (store (select .cse59 .cse58) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse60) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse56 (* ~b~0 4))) (let ((.cse54 (select (select .cse57 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse56))) (.cse55 (select .cse57 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse58 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse54 (select .cse55 (+ .cse56 v_arrayElimCell_41))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse54 (select .cse55 (+ .cse56 v_arrayElimCell_40)))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse65 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse62 (* ~b~0 4)) (.cse64 (let ((.cse67 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse67 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse66 .cse65 (store (select .cse66 .cse65) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse67) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse61 (select .cse64 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse65 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse63 (select (select .cse64 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse62)))) (or (< ~b~0 0) (= (select .cse61 (+ .cse62 v_arrayElimCell_42)) .cse63) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse61 (+ .cse62 v_arrayElimCell_40)) .cse63) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse65)))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse70 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse68 (let ((.cse72 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse72 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse71 .cse70 (store (select .cse71 .cse70) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse72) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)) (select (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse70 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_42)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse74 (* ~b~0 4)) (.cse76 (let ((.cse79 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse78 (store |c_#memory_int| c_~A~0.base (store .cse79 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse78 .cse77 (store (select .cse78 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse79) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse73 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse77 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse75 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse74)))) (or (< ~b~0 0) (= (select .cse73 (+ .cse74 v_arrayElimCell_42)) .cse75) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse73 (+ .cse74 v_arrayElimCell_41)) .cse75) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))) .cse30) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse81 (* ~b~0 4)) (.cse83 (let ((.cse86 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse80 (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse81)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (= (select .cse80 (+ .cse81 v_arrayElimCell_41)) .cse82) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse80 (+ .cse81 v_arrayElimCell_42)) .cse82) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse87 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (not (= c_~B~0.base .cse87)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse89 (* ~b~0 4)) (.cse91 (let ((.cse93 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse93 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse92 .cse87 (store (select .cse92 .cse87) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse93) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse88 (select .cse91 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse87 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse90 (select (select .cse91 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse88 (+ .cse89 v_arrayElimCell_42)) .cse90) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (= (select .cse88 (+ .cse89 v_arrayElimCell_41)) .cse90) (< 1 ~M~0)))))))) (or .cse48 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse98 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (let ((.cse95 (* ~b~0 4)) (.cse97 (let ((.cse100 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse99 (store |c_#memory_int| c_~A~0.base (store .cse100 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse99 .cse98 (store (select .cse99 .cse98) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse100) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse94 (select .cse97 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse98 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse96 (select (select .cse97 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)))) (or (< ~b~0 0) (= (select .cse94 (+ .cse95 v_arrayElimCell_41)) .cse96) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (= (select .cse94 (+ .cse95 v_arrayElimCell_40)) .cse96) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse8))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse101 (let ((.cse105 (store .cse6 .cse7 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse102 (* ~b~0 4))) (= (select (select .cse101 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse102)) (select (select .cse101 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse102 v_arrayElimCell_40)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse103))))))))) is different from true [2024-04-03 23:33:09,610 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse38 (= c_~B~0.base c_~A~0.base))) (let ((.cse37 (not .cse38)) (.cse3 (+ |c_thread1Thread1of1ForFork0_#t~post1| 2)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset 4 (* |c_thread1Thread1of1ForFork0_#t~post1| 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse5 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse4 (let ((.cse7 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse6 .cse5 (store (select .cse6 .cse5) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse7) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (let ((.cse0 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2))) (.cse1 (select .cse4 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse5)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse15 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse13 (* ~b~0 4)) (.cse14 (let ((.cse17 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse16 (store |c_#memory_int| c_~A~0.base (store .cse17 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse16 .cse15 (store (select .cse16 .cse15) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse17) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse12 (select .cse14 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse15 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse11 (select (select .cse14 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (or (< ~b~0 0) (< ~a~0 0) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse12 (+ .cse13 v_arrayElimCell_42)) .cse11) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse15))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse22 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse20 (* ~b~0 4)) (.cse21 (let ((.cse24 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse23 (store |c_#memory_int| c_~A~0.base (store .cse24 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse23 .cse22 (store (select .cse23 .cse22) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse24) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse19 (select .cse21 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse22 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse18 (select (select .cse21 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse20)))) (or (< ~b~0 0) (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_42))) (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse19 (+ .cse20 v_arrayElimCell_41)) .cse18) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse26 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse25 (let ((.cse29 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse28 (store |c_#memory_int| c_~A~0.base (store .cse29 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse28 .cse26 (store (select .cse28 .cse26) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse29) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse27 (* ~b~0 4))) (= (select (select .cse25 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse26 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse27 v_arrayElimCell_42)) (select (select .cse25 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse27)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse26)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse34 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse31 (* ~b~0 4)) (.cse33 (let ((.cse36 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse35 (store |c_#memory_int| c_~A~0.base (store .cse36 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse35 .cse34 (store (select .cse35 .cse34) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse36) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse30 (select .cse33 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse34 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse33 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse31)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse30 (+ .cse31 v_arrayElimCell_41)) .cse32) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (= (select .cse30 (+ .cse31 v_arrayElimCell_42)) .cse32))))))) .cse37) (or .cse38 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse40 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (let ((.cse39 (let ((.cse43 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse43 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse42 .cse40 (store (select .cse42 .cse40) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse43) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse41 (* ~b~0 4))) (= (select (select .cse39 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse40 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse41 v_arrayElimCell_40)) (select (select .cse39 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse41)))))) (= c_~B~0.base .cse40)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse48 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse47 (let ((.cse50 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse49 (store |c_#memory_int| c_~A~0.base (store .cse50 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse49 .cse48 (store (select .cse49 .cse48) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse50) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse46 (* ~b~0 4))) (let ((.cse44 (select (select .cse47 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse46))) (.cse45 (select .cse47 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse48 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= .cse44 (select .cse45 (+ .cse46 v_arrayElimCell_41))) (= .cse44 (select .cse45 (+ .cse46 v_arrayElimCell_40))) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse52 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse51 (let ((.cse55 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse54 (store |c_#memory_int| c_~A~0.base (store .cse55 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse54 .cse52 (store (select .cse54 .cse52) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse55) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse53 (* ~b~0 4))) (= (select (select .cse51 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse52 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse53 v_arrayElimCell_41)) (select (select .cse51 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))) (not (= c_~B~0.base .cse52))))) (or .cse37 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse60 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse58 (* ~b~0 4)) (.cse59 (let ((.cse62 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse61 (store |c_#memory_int| c_~A~0.base (store .cse62 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse61 .cse60 (store (select .cse61 .cse60) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse62) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse57 (select .cse59 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse60 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse56 (select (select .cse59 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)))) (or (< ~b~0 0) (< ~a~0 0) (= .cse56 (select .cse57 (+ .cse58 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse57 (+ .cse58 v_arrayElimCell_42)) .cse56) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse65 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse63 (let ((.cse67 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse67 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse66 .cse65 (store (select .cse66 .cse65) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse67) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse64 (* ~b~0 4))) (= (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64)) (select (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse65 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse64 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse65)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse72 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse69 (* ~b~0 4)) (.cse71 (let ((.cse74 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse73 (store |c_#memory_int| c_~A~0.base (store .cse74 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse73 .cse72 (store (select .cse73 .cse72) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse74) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse68 (select .cse71 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse72 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse70 (select (select .cse71 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse68 (+ .cse69 v_arrayElimCell_42)) .cse70) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse70 (select .cse68 (+ .cse69 v_arrayElimCell_41))) (= (select .cse68 (+ .cse69 v_arrayElimCell_40)) .cse70) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse79 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse76 (* ~b~0 4)) (.cse78 (let ((.cse81 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse80 (store |c_#memory_int| c_~A~0.base (store .cse81 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse80 .cse79 (store (select .cse80 .cse79) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse81) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse75 (select .cse78 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse79 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse77 (select (select .cse78 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse76)))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse75 (+ .cse76 v_arrayElimCell_42)) .cse77) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse75 (+ .cse76 v_arrayElimCell_40)) .cse77) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))))) (= c_~B~0.base .cse79)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (let ((.cse82 (let ((.cse86 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse83 (* ~b~0 4))) (= (select (select .cse82 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse83)) (select (select .cse82 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse83 v_arrayElimCell_41)))))) (not (= c_~B~0.base .cse84))))) (or .cse38 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse88 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse87 (let ((.cse91 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse90 (store |c_#memory_int| c_~A~0.base (store .cse91 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse90 .cse88 (store (select .cse90 .cse88) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse91) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse89 (* ~b~0 4))) (= (select (select .cse87 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse88 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse89 v_arrayElimCell_40)) (select (select .cse87 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse88)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse95 (let ((.cse98 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse97 .cse96 (store (select .cse97 .cse96) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse98) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse94 (* ~b~0 4))) (let ((.cse92 (select (select .cse95 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse94))) (.cse93 (select .cse95 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse96 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= .cse92 (select .cse93 (+ .cse94 v_arrayElimCell_40))) (= .cse92 (select .cse93 (+ .cse94 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse100 (* ~b~0 4)) (.cse102 (let ((.cse105 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse99 (select .cse102 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse101 (select (select .cse102 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse100)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse99 (+ .cse100 v_arrayElimCell_41)) .cse101) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (= (select .cse99 (+ .cse100 v_arrayElimCell_42)) .cse101))))) (not (= c_~B~0.base .cse103)))))))) is different from false [2024-04-03 23:33:11,623 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse38 (= c_~B~0.base c_~A~0.base))) (let ((.cse37 (not .cse38)) (.cse3 (+ |c_thread1Thread1of1ForFork0_#t~post1| 2)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset 4 (* |c_thread1Thread1of1ForFork0_#t~post1| 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse5 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse4 (let ((.cse7 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse6 .cse5 (store (select .cse6 .cse5) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse7) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (let ((.cse0 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2))) (.cse1 (select .cse4 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_40))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse5)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse15 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse13 (* ~b~0 4)) (.cse14 (let ((.cse17 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse16 (store |c_#memory_int| c_~A~0.base (store .cse17 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse16 .cse15 (store (select .cse16 .cse15) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse17) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse12 (select .cse14 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse15 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse11 (select (select .cse14 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (or (< ~b~0 0) (< ~a~0 0) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse12 (+ .cse13 v_arrayElimCell_42)) .cse11) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse15))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse22 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse20 (* ~b~0 4)) (.cse21 (let ((.cse24 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse23 (store |c_#memory_int| c_~A~0.base (store .cse24 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse23 .cse22 (store (select .cse23 .cse22) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse24) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse19 (select .cse21 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse22 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse18 (select (select .cse21 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse20)))) (or (< ~b~0 0) (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_42))) (= .cse18 (select .cse19 (+ .cse20 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse19 (+ .cse20 v_arrayElimCell_41)) .cse18) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse26 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse25 (let ((.cse29 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse28 (store |c_#memory_int| c_~A~0.base (store .cse29 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse28 .cse26 (store (select .cse28 .cse26) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse29) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse27 (* ~b~0 4))) (= (select (select .cse25 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse26 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse27 v_arrayElimCell_42)) (select (select .cse25 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse27)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse26)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse34 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse31 (* ~b~0 4)) (.cse33 (let ((.cse36 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse35 (store |c_#memory_int| c_~A~0.base (store .cse36 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse35 .cse34 (store (select .cse35 .cse34) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse36) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse30 (select .cse33 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse34 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse33 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse31)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse30 (+ .cse31 v_arrayElimCell_41)) .cse32) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (= (select .cse30 (+ .cse31 v_arrayElimCell_42)) .cse32))))))) .cse37) (or .cse38 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse40 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (let ((.cse39 (let ((.cse43 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse43 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse42 .cse40 (store (select .cse42 .cse40) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse43) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse41 (* ~b~0 4))) (= (select (select .cse39 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse40 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse41 v_arrayElimCell_40)) (select (select .cse39 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse41)))))) (= c_~B~0.base .cse40)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse48 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse47 (let ((.cse50 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse49 (store |c_#memory_int| c_~A~0.base (store .cse50 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse49 .cse48 (store (select .cse49 .cse48) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse50) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse46 (* ~b~0 4))) (let ((.cse44 (select (select .cse47 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse46))) (.cse45 (select .cse47 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse48 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= .cse44 (select .cse45 (+ .cse46 v_arrayElimCell_41))) (= .cse44 (select .cse45 (+ .cse46 v_arrayElimCell_40))) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse52 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse51 (let ((.cse55 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse54 (store |c_#memory_int| c_~A~0.base (store .cse55 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse54 .cse52 (store (select .cse54 .cse52) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse55) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse53 (* ~b~0 4))) (= (select (select .cse51 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse52 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse53 v_arrayElimCell_41)) (select (select .cse51 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))) (not (= c_~B~0.base .cse52))))) (or .cse37 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse60 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse58 (* ~b~0 4)) (.cse59 (let ((.cse62 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse61 (store |c_#memory_int| c_~A~0.base (store .cse62 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse61 .cse60 (store (select .cse61 .cse60) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse62) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse57 (select .cse59 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse60 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse56 (select (select .cse59 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)))) (or (< ~b~0 0) (< ~a~0 0) (= .cse56 (select .cse57 (+ .cse58 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse57 (+ .cse58 v_arrayElimCell_42)) .cse56) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse65 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse63 (let ((.cse67 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse67 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse66 .cse65 (store (select .cse66 .cse65) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse67) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse64 (* ~b~0 4))) (= (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64)) (select (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse65 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse64 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse65)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse72 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse69 (* ~b~0 4)) (.cse71 (let ((.cse74 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse73 (store |c_#memory_int| c_~A~0.base (store .cse74 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse73 .cse72 (store (select .cse73 .cse72) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse74) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse68 (select .cse71 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse72 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse70 (select (select .cse71 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse68 (+ .cse69 v_arrayElimCell_42)) .cse70) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse70 (select .cse68 (+ .cse69 v_arrayElimCell_41))) (= (select .cse68 (+ .cse69 v_arrayElimCell_40)) .cse70) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse79 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse76 (* ~b~0 4)) (.cse78 (let ((.cse81 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse80 (store |c_#memory_int| c_~A~0.base (store .cse81 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse80 .cse79 (store (select .cse80 .cse79) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse81) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse75 (select .cse78 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse79 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse77 (select (select .cse78 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse76)))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse75 (+ .cse76 v_arrayElimCell_42)) .cse77) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse75 (+ .cse76 v_arrayElimCell_40)) .cse77) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0))))) (= c_~B~0.base .cse79)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (let ((.cse82 (let ((.cse86 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse83 (* ~b~0 4))) (= (select (select .cse82 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse83)) (select (select .cse82 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse83 v_arrayElimCell_41)))))) (not (= c_~B~0.base .cse84))))) (or .cse38 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse88 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse87 (let ((.cse91 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse90 (store |c_#memory_int| c_~A~0.base (store .cse91 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse90 .cse88 (store (select .cse90 .cse88) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse91) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse89 (* ~b~0 4))) (= (select (select .cse87 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse88 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse89 v_arrayElimCell_40)) (select (select .cse87 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse88)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse95 (let ((.cse98 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse97 .cse96 (store (select .cse97 .cse96) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse98) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse94 (* ~b~0 4))) (let ((.cse92 (select (select .cse95 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse94))) (.cse93 (select .cse95 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse96 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= .cse92 (select .cse93 (+ .cse94 v_arrayElimCell_40))) (= .cse92 (select .cse93 (+ .cse94 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse100 (* ~b~0 4)) (.cse102 (let ((.cse105 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse99 (select .cse102 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse101 (select (select .cse102 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse100)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse99 (+ .cse100 v_arrayElimCell_41)) .cse101) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< 1 ~M~0) (= (select .cse99 (+ .cse100 v_arrayElimCell_42)) .cse101))))) (not (= c_~B~0.base .cse103)))))))) is different from true [2024-04-03 23:33:15,005 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse67 (= c_~B~0.base c_~A~0.base))) (let ((.cse16 (not .cse67)) (.cse3 (+ 2 c_thread1Thread1of1ForFork0_~i~0)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset 4 (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse5 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse4 (let ((.cse7 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse6 .cse5 (store (select .cse6 .cse5) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse7) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (let ((.cse0 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2))) (.cse1 (select .cse4 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse12 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (let ((.cse11 (let ((.cse15 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse15 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse14 .cse12 (store (select .cse14 .cse12) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse15) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse13 (* ~b~0 4))) (= (select (select .cse11 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse12 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_42)) (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse12))))) .cse16) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse19 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (let ((.cse17 (let ((.cse21 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse20 (store |c_#memory_int| c_~A~0.base (store .cse21 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse20 .cse19 (store (select .cse20 .cse19) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse21) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse18 (* ~b~0 4))) (= (select (select .cse17 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)) (select (select .cse17 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse19 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse18 v_arrayElimCell_42)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse19)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse26 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse25 (let ((.cse28 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse27 (store |c_#memory_int| c_~A~0.base (store .cse28 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse27 .cse26 (store (select .cse27 .cse26) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse28) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse24 (* ~b~0 4))) (let ((.cse22 (select (select .cse25 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse24))) (.cse23 (select .cse25 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse26 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse22 (select .cse23 (+ .cse24 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse22 (select .cse23 (+ .cse24 v_arrayElimCell_41))) (< 1 ~M~0))))))) .cse16) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse33 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse30 (* ~b~0 4)) (.cse32 (let ((.cse35 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse35 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse34 .cse33 (store (select .cse34 .cse33) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse35) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse29 (select .cse32 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse33 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse31 (select (select .cse32 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse30)))) (or (< ~b~0 0) (= (select .cse29 (+ .cse30 v_arrayElimCell_42)) .cse31) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse29 (+ .cse30 v_arrayElimCell_40)) .cse31) (< 1 ~M~0))))) (= c_~B~0.base .cse33)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse36 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (not (= c_~B~0.base .cse36)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (let ((.cse37 (let ((.cse40 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse39 (store |c_#memory_int| c_~A~0.base (store .cse40 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse39 .cse36 (store (select .cse39 .cse36) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse40) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse38 (* ~b~0 4))) (= (select (select .cse37 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse38)) (select (select .cse37 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse36 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse38 v_arrayElimCell_41)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse43 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse41 (let ((.cse45 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse44 (store |c_#memory_int| c_~A~0.base (store .cse45 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse44 .cse43 (store (select .cse44 .cse43) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse45) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse42 (* ~b~0 4))) (= (select (select .cse41 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse42)) (select (select .cse41 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse43 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse42 v_arrayElimCell_41)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (not (= c_~B~0.base .cse43))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse50 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse47 (* ~b~0 4)) (.cse49 (let ((.cse52 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse52 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse51 .cse50 (store (select .cse51 .cse50) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse52) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse46 (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse50 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse48 (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse47)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse46 (+ .cse47 v_arrayElimCell_42)) .cse48) (< ~M~0 (+ ~b~0 1)) (= (select .cse46 (+ .cse47 v_arrayElimCell_40)) .cse48) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse50)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse57 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse56 (let ((.cse59 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse58 (store |c_#memory_int| c_~A~0.base (store .cse59 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse58 .cse57 (store (select .cse58 .cse57) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse59) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse55 (* ~b~0 4))) (let ((.cse53 (select (select .cse56 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse55))) (.cse54 (select .cse56 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse57 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_40))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_42))) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse64 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse63 (let ((.cse66 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse65 (store |c_#memory_int| c_~A~0.base (store .cse66 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse65 .cse64 (store (select .cse65 .cse64) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse66) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse62 (* ~b~0 4))) (let ((.cse60 (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse62))) (.cse61 (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse64 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse60 (select .cse61 (+ .cse62 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse60 (select .cse61 (+ .cse62 v_arrayElimCell_41))) (< 1 ~M~0))))) (not (= c_~B~0.base .cse64))))) (or .cse67 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse70 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse68 (let ((.cse72 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse72 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse71 .cse70 (store (select .cse71 .cse70) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse72) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)) (select (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse70 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_40)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse76 (let ((.cse79 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse78 (store |c_#memory_int| c_~A~0.base (store .cse79 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse78 .cse77 (store (select .cse78 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse79) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse75 (* ~b~0 4))) (let ((.cse73 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse75))) (.cse74 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse77 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_40))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_41)))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse81 (* ~b~0 4)) (.cse83 (let ((.cse86 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse80 (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse81)))) (or (< ~b~0 0) (= (select .cse80 (+ .cse81 v_arrayElimCell_41)) .cse82) (< ~a~0 0) (= .cse82 (select .cse80 (+ .cse81 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse87 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (not (= c_~B~0.base .cse87)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse91 (let ((.cse93 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse93 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse92 .cse87 (store (select .cse92 .cse87) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse93) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse90 (* ~b~0 4))) (let ((.cse88 (select (select .cse91 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse90))) (.cse89 (select .cse91 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse87 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse88 (select .cse89 (+ .cse90 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse88 (select .cse89 (+ .cse90 v_arrayElimCell_41))) (< 1 ~M~0)))))))) (or .cse67 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse95 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse94 (let ((.cse98 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse97 .cse95 (store (select .cse97 .cse95) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse98) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse96 (* ~b~0 4))) (= (select (select .cse94 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse95 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse96 v_arrayElimCell_40)) (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse96)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse95)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse102 (let ((.cse105 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse101 (* ~b~0 4))) (let ((.cse99 (select (select .cse102 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse101))) (.cse100 (select .cse102 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_41))) (< 1 ~M~0) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))))))))))))) is different from false [2024-04-03 23:33:17,020 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse67 (= c_~B~0.base c_~A~0.base))) (let ((.cse16 (not .cse67)) (.cse3 (+ 2 c_thread1Thread1of1ForFork0_~i~0)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset 4 (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse5 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse4 (let ((.cse7 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse6 .cse5 (store (select .cse6 .cse5) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse7) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (let ((.cse0 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2))) (.cse1 (select .cse4 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse5 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse12 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (let ((.cse11 (let ((.cse15 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse15 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse14 .cse12 (store (select .cse14 .cse12) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse15) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse13 (* ~b~0 4))) (= (select (select .cse11 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse12 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_42)) (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse12))))) .cse16) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse19 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (let ((.cse17 (let ((.cse21 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse20 (store |c_#memory_int| c_~A~0.base (store .cse21 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse20 .cse19 (store (select .cse20 .cse19) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse21) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse18 (* ~b~0 4))) (= (select (select .cse17 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)) (select (select .cse17 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse19 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse18 v_arrayElimCell_42)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse19)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse26 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse25 (let ((.cse28 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse27 (store |c_#memory_int| c_~A~0.base (store .cse28 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse27 .cse26 (store (select .cse27 .cse26) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse28) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse24 (* ~b~0 4))) (let ((.cse22 (select (select .cse25 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse24))) (.cse23 (select .cse25 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse26 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse22 (select .cse23 (+ .cse24 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse22 (select .cse23 (+ .cse24 v_arrayElimCell_41))) (< 1 ~M~0))))))) .cse16) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse33 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse30 (* ~b~0 4)) (.cse32 (let ((.cse35 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse35 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse34 .cse33 (store (select .cse34 .cse33) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse35) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse29 (select .cse32 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse33 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse31 (select (select .cse32 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse30)))) (or (< ~b~0 0) (= (select .cse29 (+ .cse30 v_arrayElimCell_42)) .cse31) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse29 (+ .cse30 v_arrayElimCell_40)) .cse31) (< 1 ~M~0))))) (= c_~B~0.base .cse33)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse36 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (not (= c_~B~0.base .cse36)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (let ((.cse37 (let ((.cse40 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse39 (store |c_#memory_int| c_~A~0.base (store .cse40 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse39 .cse36 (store (select .cse39 .cse36) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse40) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse38 (* ~b~0 4))) (= (select (select .cse37 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse38)) (select (select .cse37 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse36 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse38 v_arrayElimCell_41)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse43 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse41 (let ((.cse45 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse44 (store |c_#memory_int| c_~A~0.base (store .cse45 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse44 .cse43 (store (select .cse44 .cse43) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse45) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse42 (* ~b~0 4))) (= (select (select .cse41 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse42)) (select (select .cse41 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse43 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse42 v_arrayElimCell_41)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (not (= c_~B~0.base .cse43))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse50 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse47 (* ~b~0 4)) (.cse49 (let ((.cse52 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse52 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse51 .cse50 (store (select .cse51 .cse50) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse52) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse46 (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse50 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse48 (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse47)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse46 (+ .cse47 v_arrayElimCell_42)) .cse48) (< ~M~0 (+ ~b~0 1)) (= (select .cse46 (+ .cse47 v_arrayElimCell_40)) .cse48) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse50)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse57 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse56 (let ((.cse59 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse58 (store |c_#memory_int| c_~A~0.base (store .cse59 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse58 .cse57 (store (select .cse58 .cse57) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse59) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse55 (* ~b~0 4))) (let ((.cse53 (select (select .cse56 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse55))) (.cse54 (select .cse56 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse57 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_40))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_42))) (= .cse53 (select .cse54 (+ .cse55 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse64 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse63 (let ((.cse66 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse65 (store |c_#memory_int| c_~A~0.base (store .cse66 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse65 .cse64 (store (select .cse65 .cse64) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse66) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse62 (* ~b~0 4))) (let ((.cse60 (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse62))) (.cse61 (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse64 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse60 (select .cse61 (+ .cse62 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse60 (select .cse61 (+ .cse62 v_arrayElimCell_41))) (< 1 ~M~0))))) (not (= c_~B~0.base .cse64))))) (or .cse67 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse70 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse68 (let ((.cse72 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse72 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse71 .cse70 (store (select .cse71 .cse70) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse72) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)) (select (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse70 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_40)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse76 (let ((.cse79 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse78 (store |c_#memory_int| c_~A~0.base (store .cse79 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse78 .cse77 (store (select .cse78 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse79) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse75 (* ~b~0 4))) (let ((.cse73 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse75))) (.cse74 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse77 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_40))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_41)))))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse84 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse81 (* ~b~0 4)) (.cse83 (let ((.cse86 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse85 (store |c_#memory_int| c_~A~0.base (store .cse86 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse85 .cse84 (store (select .cse85 .cse84) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse80 (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse84 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse81)))) (or (< ~b~0 0) (= (select .cse80 (+ .cse81 v_arrayElimCell_41)) .cse82) (< ~a~0 0) (= .cse82 (select .cse80 (+ .cse81 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse87 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (not (= c_~B~0.base .cse87)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse91 (let ((.cse93 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse93 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse92 .cse87 (store (select .cse92 .cse87) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse93) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse90 (* ~b~0 4))) (let ((.cse88 (select (select .cse91 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse90))) (.cse89 (select .cse91 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse87 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse88 (select .cse89 (+ .cse90 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse88 (select .cse89 (+ .cse90 v_arrayElimCell_41))) (< 1 ~M~0)))))))) (or .cse67 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse95 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse94 (let ((.cse98 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse97 .cse95 (store (select .cse97 .cse95) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse98) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse96 (* ~b~0 4))) (= (select (select .cse94 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse95 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse96 v_arrayElimCell_40)) (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse96)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse95)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse102 (let ((.cse105 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse101 (* ~b~0 4))) (let ((.cse99 (select (select .cse102 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse101))) (.cse100 (select .cse102 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse3) (< ~M~0 (+ ~b~0 1)) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_41))) (< 1 ~M~0) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))))))))))))) is different from true [2024-04-03 23:33:21,904 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse106 (* c_thread1Thread1of1ForFork0_~i~0 4)) (.cse0 (= c_~B~0.base c_~A~0.base))) (let ((.cse29 (not .cse0)) (.cse8 (+ 2 c_thread1Thread1of1ForFork0_~i~0)) (.cse6 (store (select |c_#memory_int| c_~A~0.base) (+ c_~A~0.offset .cse106) |c_thread1Thread1of1ForFork0_#t~mem2|)) (.cse7 (+ c_~A~0.offset 4 .cse106)) (.cse9 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (or .cse0 (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_30 Int)) (let ((.cse3 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (let ((.cse1 (let ((.cse5 (store .cse6 .cse7 v_subst_30))) (let ((.cse4 (store |c_#memory_int| c_~A~0.base (store .cse5 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_8)))) (store .cse4 .cse3 (store (select .cse4 .cse3) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse5) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse2 (* ~b~0 4))) (= (select (select .cse1 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2)) (select (select .cse1 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse3 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse2 v_arrayElimCell_40)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse3)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_subst_29 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_7 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse14 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse11 (* ~b~0 4)) (.cse13 (let ((.cse16 (store .cse6 .cse7 v_subst_29))) (let ((.cse15 (store |c_#memory_int| c_~A~0.base (store .cse16 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_7)))) (store .cse15 .cse14 (store (select .cse15 .cse14) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse16) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse10 (select .cse13 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse14 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse12 (select (select .cse13 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse11)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= (select .cse10 (+ .cse11 v_arrayElimCell_40)) .cse12) (= (select .cse10 (+ .cse11 v_arrayElimCell_41)) .cse12) (< 1 ~M~0)))))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_17 Int) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse21 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse19 (* ~b~0 4)) (.cse20 (let ((.cse23 (store .cse6 .cse7 v_subst_17))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse22 .cse21 (store (select .cse22 .cse21) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse23) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse18 (select .cse20 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse21 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse17 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse19)))) (or (< ~b~0 0) (= .cse17 (select .cse18 (+ .cse19 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= (select .cse18 (+ .cse19 v_arrayElimCell_41)) .cse17) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_18 Int)) (let ((.cse26 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_4 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (let ((.cse24 (let ((.cse28 (store .cse6 .cse7 v_subst_18))) (let ((.cse27 (store |c_#memory_int| c_~A~0.base (store .cse28 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_4)))) (store .cse27 .cse26 (store (select .cse27 .cse26) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse28) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse25 (* ~b~0 4))) (= (select (select .cse24 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse25)) (select (select .cse24 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse26 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse25 v_arrayElimCell_42)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse26))))) .cse29) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_subst_23 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse34 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse31 (* ~b~0 4)) (.cse33 (let ((.cse36 (store .cse6 .cse7 v_subst_23))) (let ((.cse35 (store |c_#memory_int| c_~A~0.base (store .cse36 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_1)))) (store .cse35 .cse34 (store (select .cse35 .cse34) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse36) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse30 (select .cse33 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse34 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse33 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse31)))) (or (< ~b~0 0) (= (select .cse30 (+ .cse31 v_arrayElimCell_41)) .cse32) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (= (select .cse30 (+ .cse31 v_arrayElimCell_40)) .cse32) (< ~M~0 (+ ~b~0 1)) (= (select .cse30 (+ .cse31 v_arrayElimCell_42)) .cse32) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_21 Int)) (let ((.cse38 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (let ((.cse37 (let ((.cse41 (store .cse6 .cse7 v_subst_21))) (let ((.cse40 (store |c_#memory_int| c_~A~0.base (store .cse41 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_12)))) (store .cse40 .cse38 (store (select .cse40 .cse38) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse41) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse39 (* ~b~0 4))) (= (select (select .cse37 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse38 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse39 v_arrayElimCell_40)) (select (select .cse37 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse39)))))) (= c_~B~0.base .cse38)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_subst_20 Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse46 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse45 (let ((.cse48 (store .cse6 .cse7 v_subst_20))) (let ((.cse47 (store |c_#memory_int| c_~A~0.base (store .cse48 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_11)))) (store .cse47 .cse46 (store (select .cse47 .cse46) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse48) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse43 (* ~b~0 4))) (let ((.cse44 (select (select .cse45 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse43))) (.cse42 (select .cse45 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse46 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= (select .cse42 (+ .cse43 v_arrayElimCell_41)) .cse44) (< ~a~0 0) (= .cse44 (select .cse42 (+ .cse43 v_arrayElimCell_40))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))) .cse0) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_19 Int)) (let ((.cse51 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse49 (let ((.cse53 (store .cse6 .cse7 v_subst_19))) (let ((.cse52 (store |c_#memory_int| c_~A~0.base (store .cse53 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_13)))) (store .cse52 .cse51 (store (select .cse52 .cse51) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse53) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse50 (* ~b~0 4))) (= (select (select .cse49 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50)) (select (select .cse49 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse51 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse50 v_arrayElimCell_41)))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse51))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_28 Int)) (let ((.cse54 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (not (= c_~B~0.base .cse54)) (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse58 (let ((.cse60 (store .cse6 .cse7 v_subst_28))) (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse60 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_5)))) (store .cse59 .cse54 (store (select .cse59 .cse54) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse60) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse56 (* ~b~0 4))) (let ((.cse57 (select (select .cse58 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse56))) (.cse55 (select .cse58 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse54 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= (select .cse55 (+ .cse56 v_arrayElimCell_42)) .cse57) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse57 (select .cse55 (+ .cse56 v_arrayElimCell_41))) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_16 Int) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse65 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse63 (* ~b~0 4)) (.cse64 (let ((.cse67 (store .cse6 .cse7 v_subst_16))) (let ((.cse66 (store |c_#memory_int| c_~A~0.base (store .cse67 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_3)))) (store .cse66 .cse65 (store (select .cse66 .cse65) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse67) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse62 (select .cse64 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse65 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse61 (select (select .cse64 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse63)))) (or (< ~b~0 0) (= .cse61 (select .cse62 (+ .cse63 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (= (select .cse62 (+ .cse63 v_arrayElimCell_40)) .cse61) (< ~M~0 (+ ~b~0 1)) (= (select .cse62 (+ .cse63 v_arrayElimCell_41)) .cse61) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_24 Int)) (let ((.cse70 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (let ((.cse68 (let ((.cse72 (store .cse6 .cse7 v_subst_24))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse72 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_10)))) (store .cse71 .cse70 (store (select .cse71 .cse70) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse72) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)) (select (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse70 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_42)))) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (v_subst_25 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_9 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (let ((.cse76 (let ((.cse79 (store .cse6 .cse7 v_subst_25))) (let ((.cse78 (store |c_#memory_int| c_~A~0.base (store .cse79 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse78 .cse77 (store (select .cse78 .cse77) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse79) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse74 (* ~b~0 4))) (let ((.cse75 (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse74))) (.cse73 (select .cse76 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse77 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse73 (+ .cse74 v_arrayElimCell_42)) .cse75) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= .cse75 (select .cse73 (+ .cse74 v_arrayElimCell_41))) (< 1 ~M~0))))))) .cse29) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_26 Int)) (let ((.cse81 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (let ((.cse80 (let ((.cse84 (store .cse6 .cse7 v_subst_26))) (let ((.cse83 (store |c_#memory_int| c_~A~0.base (store .cse84 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_14)))) (store .cse83 .cse81 (store (select .cse83 .cse81) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse84) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse82 (* ~b~0 4))) (= (select (select .cse80 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse81 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse82 v_arrayElimCell_41)) (select (select .cse80 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse82)))) (< 1 ~M~0))) (not (= c_~B~0.base .cse81))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_27 Int)) (let ((.cse89 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse86 (* ~b~0 4)) (.cse88 (let ((.cse91 (store .cse6 .cse7 v_subst_27))) (let ((.cse90 (store |c_#memory_int| c_~A~0.base (store .cse91 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_9)))) (store .cse90 .cse89 (store (select .cse90 .cse89) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse91) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse85 (select .cse88 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse89 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse87 (select (select .cse88 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse86)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= (select .cse85 (+ .cse86 v_arrayElimCell_42)) .cse87) (= (select .cse85 (+ .cse86 v_arrayElimCell_41)) .cse87) (< 1 ~M~0))))) (not (= c_~B~0.base .cse89))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_22 Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_arrayElimCell_42 Int)) (let ((.cse95 (let ((.cse98 (store .cse6 .cse7 v_subst_22))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_2)))) (store .cse97 .cse96 (store (select .cse97 .cse96) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse98) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse93 (* ~b~0 4))) (let ((.cse94 (select (select .cse95 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse93))) (.cse92 (select .cse95 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse96 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= (select .cse92 (+ .cse93 v_arrayElimCell_40)) .cse94) (= .cse94 (select .cse92 (+ .cse93 v_arrayElimCell_42))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_15 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse9))) (or (forall ((~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_thread1Thread1of1ForFork0_~i~0_519 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse101 (* ~b~0 4)) (.cse102 (let ((.cse105 (store .cse6 .cse7 v_subst_15))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_519 4)) v_subst_6)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse105) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse100 (select .cse102 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse103 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse99 (select (select .cse102 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse101)))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_519 .cse8) (< ~M~0 (+ ~b~0 1)) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))) (< 1 ~M~0) (= (select .cse100 (+ .cse101 v_arrayElimCell_42)) .cse99))))) (= c_~B~0.base .cse103))))))) is different from true [2024-04-03 23:33:22,492 INFO L349 Elim1Store]: treesize reduction 4, result has 97.9 percent of original size [2024-04-03 23:33:22,495 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 17576126 treesize of output 16302458 [2024-04-03 23:34:04,194 WARN L293 SmtUtils]: Spent 41.69s on a formula simplification. DAG size of input: 1627 DAG size of output: 762 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-04-03 23:42:28,454 INFO L349 Elim1Store]: treesize reduction 8, result has 97.6 percent of original size [2024-04-03 23:42:28,456 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 5 select indices, 5 select index equivalence classes, 0 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 10 case distinctions, treesize of input 5032263 treesize of output 4116715 [2024-04-03 23:43:37,446 WARN L293 SmtUtils]: Spent 1.15m on a formula simplification. DAG size of input: 1763 DAG size of output: 1163 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-04-03 23:43:49,964 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 101 [2024-04-03 23:43:49,965 WARN L249 Executor]: External (MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1) with exit command (exit)) stderr output: (error "out of memory") [2024-04-03 23:43:49,965 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-03 23:43:49,966 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1798390853] [2024-04-03 23:43:49,966 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-03 23:43:49,966 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [930136180] [2024-04-03 23:43:49,966 WARN L320 FreeRefinementEngine]: Global settings require throwing the following exception [2024-04-03 23:43:49,976 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2024-04-03 23:43:50,176 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,10 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-03 23:43:50,177 FATAL L? ?]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1) with exit command (exit)) Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:262) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseSuccess(Executor.java:277) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.push(Scriptor.java:133) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.arrays.DiffWrapperScript.push(DiffWrapperScript.java:90) at de.uni_freiburg.informatik.ultimate.logic.WrapperScript.push(WrapperScript.java:148) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.scripttransfer.HistoryRecordingScript.push(HistoryRecordingScript.java:107) at de.uni_freiburg.informatik.ultimate.logic.Util.checkSat(Util.java:48) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.checkRedundancy(SimplifyDDA2.java:268) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.convertForPreprocessedInputTerms(SimplifyDDA2.java:410) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.convert(SimplifyDDA2.java:394) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.convert(SimplifyDDA2.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:88) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.simplify(SimplifyDDA2.java:500) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SmtUtils.simplify(SmtUtils.java:252) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SmtUtils.simplifyWithStatistics(SmtUtils.java:324) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify(QuantifierPusher.java:731) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:133) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine$ApplicationTermTask.doStep(TermContextTransformationEngine.java:209) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:100) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:297) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushUtilsForSubsetPush.pushMinionEliminatees(QuantifierPushUtilsForSubsetPush.java:255) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushUtilsForSubsetPush.sequentialSubsetPush(QuantifierPushUtilsForSubsetPush.java:151) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:338) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:189) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:1) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine$ApplicationTermTask.doStep(TermContextTransformationEngine.java:209) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:100) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:297) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.eliminate(QuantifierPushTermWalker.java:283) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.PartialQuantifierElimination.eliminate(PartialQuantifierElimination.java:51) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:238) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:420) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeBackwardSequence(IterativePredicateTransformer.java:399) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.predicates.IterativePredicateTransformer.computeWeakestPreconditionSequence(IterativePredicateTransformer.java:271) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:341) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:184) at de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:110) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleSpWp.construct(IpTcStrategyModuleSpWp.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.getOrConstruct(IpTcStrategyModuleBase.java:101) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.IpTcStrategyModuleBase.isCorrect(IpTcStrategyModuleBase.java:57) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.checkFeasibility(AutomatonFreeRefinementEngine.java:210) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:121) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.(AutomatonFreeRefinementEngine.java:85) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:82) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:337) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:431) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:366) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:348) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:415) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:302) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseConcurrentProgram(TraceAbstractionStarter.java:225) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:173) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:154) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:124) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1518) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:701) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:383) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:258) ... 68 more [2024-04-03 23:43:50,180 INFO L158 Benchmark]: Toolchain (without parser) took 693813.24ms. Allocated memory was 153.1MB in the beginning and 1.1GB in the end (delta: 956.3MB). Free memory was 85.3MB in the beginning and 815.8MB in the end (delta: -730.6MB). Peak memory consumption was 657.2MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,180 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 153.1MB. Free memory is still 90.7MB. There was no memory consumed. Max. memory is 8.0GB. [2024-04-03 23:43:50,180 INFO L158 Benchmark]: CACSL2BoogieTranslator took 254.86ms. Allocated memory is still 153.1MB. Free memory was 85.0MB in the beginning and 72.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,181 INFO L158 Benchmark]: Boogie Procedure Inliner took 55.34ms. Allocated memory is still 153.1MB. Free memory was 72.9MB in the beginning and 70.7MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,181 INFO L158 Benchmark]: Boogie Preprocessor took 87.48ms. Allocated memory was 153.1MB in the beginning and 229.6MB in the end (delta: 76.5MB). Free memory was 70.7MB in the beginning and 199.9MB in the end (delta: -129.2MB). Peak memory consumption was 8.6MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,181 INFO L158 Benchmark]: RCFGBuilder took 533.49ms. Allocated memory is still 229.6MB. Free memory was 199.9MB in the beginning and 175.2MB in the end (delta: 24.6MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,181 INFO L158 Benchmark]: TraceAbstraction took 692876.84ms. Allocated memory was 229.6MB in the beginning and 1.1GB in the end (delta: 879.8MB). Free memory was 174.2MB in the beginning and 815.8MB in the end (delta: -641.6MB). Peak memory consumption was 669.6MB. Max. memory is 8.0GB. [2024-04-03 23:43:50,182 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 153.1MB. Free memory is still 90.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 254.86ms. Allocated memory is still 153.1MB. Free memory was 85.0MB in the beginning and 72.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 55.34ms. Allocated memory is still 153.1MB. Free memory was 72.9MB in the beginning and 70.7MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 87.48ms. Allocated memory was 153.1MB in the beginning and 229.6MB in the end (delta: 76.5MB). Free memory was 70.7MB in the beginning and 199.9MB in the end (delta: -129.2MB). Peak memory consumption was 8.6MB. Max. memory is 8.0GB. * RCFGBuilder took 533.49ms. Allocated memory is still 229.6MB. Free memory was 199.9MB in the beginning and 175.2MB in the end (delta: 24.6MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. * TraceAbstraction took 692876.84ms. Allocated memory was 229.6MB in the beginning and 1.1GB in the end (delta: 879.8MB). Free memory was 174.2MB in the beginning and 815.8MB in the end (delta: -641.6MB). Peak memory consumption was 669.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: SMTLIBException: External (MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1) with exit command (exit)) Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: External (MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1) with exit command (exit)) Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:262) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-04-03 23:43:50,207 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 Received shutdown request...