/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 RANDOM --traceabstraction.probability.for.random.criterion 50 --traceabstraction.seed.for.random.criterion 213 -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-04 19:45:24,904 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-04-04 19:45:24,968 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../benchexec/../../../trunk/examples/settings/gemcutter/NewStatesSleep.epf [2024-04-04 19:45:24,972 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-04-04 19:45:24,972 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-04-04 19:45:24,993 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-04-04 19:45:24,993 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-04-04 19:45:24,994 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-04-04 19:45:24,994 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-04-04 19:45:24,997 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-04-04 19:45:24,998 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-04-04 19:45:24,998 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-04-04 19:45:24,998 INFO L153 SettingsManager]: * Use SBE=true [2024-04-04 19:45:24,999 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-04-04 19:45:24,999 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * sizeof long=4 [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-04-04 19:45:25,000 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * sizeof long double=12 [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * Use constant arrays=true [2024-04-04 19:45:25,001 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-04-04 19:45:25,001 INFO L153 SettingsManager]: * To the following directory=./dump/ [2024-04-04 19:45:25,002 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-04-04 19:45:25,002 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-04-04 19:45:25,003 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=SLEEP_NEW_STATES [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-04-04 19:45:25,003 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-04-04 19:45:25,004 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-04-04 19:45:25,004 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-04-04 19:45:25,024 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 -> RANDOM Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: probability for random criterion as percentage -> 50 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: seed for random criterion -> 213 [2024-04-04 19:45:25,219 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-04-04 19:45:25,238 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-04-04 19:45:25,240 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-04-04 19:45:25,241 INFO L270 PluginConnector]: Initializing CDTParser... [2024-04-04 19:45:25,242 INFO L274 PluginConnector]: CDTParser initialized [2024-04-04 19:45:25,243 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-04 19:45:26,426 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-04-04 19:45:26,630 INFO L384 CDTParser]: Found 1 translation units. [2024-04-04 19:45:26,631 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c [2024-04-04 19:45:26,638 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/73448efec/db593c3633a242f2960f6fe6b3bc0f42/FLAG54d641388 [2024-04-04 19:45:26,654 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/73448efec/db593c3633a242f2960f6fe6b3bc0f42 [2024-04-04 19:45:26,657 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-04-04 19:45:26,659 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-04-04 19:45:26,661 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-04-04 19:45:26,661 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-04-04 19:45:26,665 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-04-04 19:45:26,666 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,666 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@391afb58 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26, skipping insertion in model container [2024-04-04 19:45:26,666 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,691 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-04-04 19:45:26,841 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-04 19:45:26,847 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-04-04 19:45:26,854 INFO L202 MainTranslator]: Completed pre-run [2024-04-04 19:45:26,870 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-04 19:45:26,873 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-04-04 19:45:26,885 INFO L206 MainTranslator]: Completed translation [2024-04-04 19:45:26,885 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26 WrapperNode [2024-04-04 19:45:26,885 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-04-04 19:45:26,886 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-04-04 19:45:26,886 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-04-04 19:45:26,886 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-04-04 19:45:26,891 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,898 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,923 INFO L138 Inliner]: procedures = 25, calls = 41, calls flagged for inlining = 13, calls inlined = 17, statements flattened = 196 [2024-04-04 19:45:26,923 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-04-04 19:45:26,924 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-04-04 19:45:26,924 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-04-04 19:45:26,924 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-04-04 19:45:26,931 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,931 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,936 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,936 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,943 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,946 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,948 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,949 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,951 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-04-04 19:45:26,952 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-04-04 19:45:26,952 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-04-04 19:45:26,952 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-04-04 19:45:26,953 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (1/1) ... [2024-04-04 19:45:26,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-04-04 19:45:26,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:26,999 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-04 19:45:27,018 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-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2024-04-04 19:45:27,046 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-04-04 19:45:27,047 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-04-04 19:45:27,047 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-04-04 19:45:27,047 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-04-04 19:45:27,047 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-04-04 19:45:27,047 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-04-04 19:45:27,047 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-04-04 19:45:27,047 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-04-04 19:45:27,049 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-04-04 19:45:27,050 WARN L213 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-04-04 19:45:27,163 INFO L241 CfgBuilder]: Building ICFG [2024-04-04 19:45:27,165 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2024-04-04 19:45:27,467 INFO L282 CfgBuilder]: Performing block encoding [2024-04-04 19:45:27,478 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-04-04 19:45:27,478 INFO L309 CfgBuilder]: Removed 7 assume(true) statements. [2024-04-04 19:45:27,479 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.04 07:45:27 BoogieIcfgContainer [2024-04-04 19:45:27,480 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-04-04 19:45:27,481 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-04-04 19:45:27,481 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-04-04 19:45:27,484 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-04-04 19:45:27,484 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.04 07:45:26" (1/3) ... [2024-04-04 19:45:27,485 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b8e5218 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.04 07:45:27, skipping insertion in model container [2024-04-04 19:45:27,485 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.04 07:45:26" (2/3) ... [2024-04-04 19:45:27,485 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b8e5218 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.04 07:45:27, skipping insertion in model container [2024-04-04 19:45:27,485 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.04 07:45:27" (3/3) ... [2024-04-04 19:45:27,486 INFO L112 eAbstractionObserver]: Analyzing ICFG loop-tiling-eq.wvr.c [2024-04-04 19:45:27,492 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-04-04 19:45:27,500 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-04-04 19:45:27,500 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-04-04 19:45:27,500 INFO L514 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-04-04 19:45:27,555 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-04-04 19:45:27,597 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-04-04 19:45:27,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-04-04 19:45:27,597 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:27,600 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-04 19:45:27,601 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-04 19:45:27,626 INFO L184 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-04-04 19:45:27,635 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:27,637 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-04-04 19:45:27,642 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;@2c5baba4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms], mConComChecker=IA, mConComCheckerCriterion=RANDOM, mConComCheckerLimitedChecksCriterion=false, mConComCheckerCriterionLimit=1, mConComCheckerRandomProb=50, mConComCheckerRandomSeed=213 [2024-04-04 19:45:27,643 INFO L358 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2024-04-04 19:45:28,860 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-04 19:45:28,861 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:28,862 INFO L85 PathProgramCache]: Analyzing trace with hash -1610377654, now seen corresponding path program 1 times [2024-04-04 19:45:28,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:28,869 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1454396848] [2024-04-04 19:45:28,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:28,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:28,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:29,030 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:29,030 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1454396848] [2024-04-04 19:45:29,030 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2024-04-04 19:45:29,031 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1616695514] [2024-04-04 19:45:29,031 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:29,031 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:29,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:29,034 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-04 19:45:29,052 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-04 19:45:29,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:29,278 INFO L262 TraceCheckSpWp]: Trace formula consists of 487 conjuncts, 1 conjunts are in the unsatisfiable core [2024-04-04 19:45:29,290 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:29,355 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-04 19:45:29,355 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-04 19:45:29,356 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1616695514] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-04 19:45:29,356 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-04 19:45:29,356 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-04-04 19:45:29,358 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1230523234] [2024-04-04 19:45:29,358 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-04 19:45:29,363 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-04-04 19:45:29,363 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:29,453 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-04-04 19:45:29,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-04-04 19:45:29,455 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:29,456 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:29,457 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-04 19:45:29,457 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:29,487 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:29,496 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-04 19:45:29,693 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-04 19:45:29,694 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-04 19:45:29,694 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:29,694 INFO L85 PathProgramCache]: Analyzing trace with hash 1426262776, now seen corresponding path program 1 times [2024-04-04 19:45:29,694 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:29,695 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1111167002] [2024-04-04 19:45:29,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:29,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:29,716 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:29,717 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [546934522] [2024-04-04 19:45:29,717 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:29,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:29,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:29,737 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-04 19:45:29,738 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-04 19:45:29,873 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:29,875 INFO L262 TraceCheckSpWp]: Trace formula consists of 467 conjuncts, 6 conjunts are in the unsatisfiable core [2024-04-04 19:45:29,879 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:30,020 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-04 19:45:30,021 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-04 19:45:30,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:30,021 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1111167002] [2024-04-04 19:45:30,021 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:30,022 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [546934522] [2024-04-04 19:45:30,022 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [546934522] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-04 19:45:30,022 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-04 19:45:30,022 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-04-04 19:45:30,022 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1037698511] [2024-04-04 19:45:30,023 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-04 19:45:30,024 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-04-04 19:45:30,024 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:30,051 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-04-04 19:45:30,051 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-04-04 19:45:30,052 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,052 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:30,052 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-04 19:45:30,052 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,053 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,163 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:30,169 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2024-04-04 19:45:30,369 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-04 19:45:30,369 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-04 19:45:30,370 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:30,370 INFO L85 PathProgramCache]: Analyzing trace with hash -590941296, now seen corresponding path program 1 times [2024-04-04 19:45:30,370 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:30,370 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1137505404] [2024-04-04 19:45:30,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:30,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:30,394 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:30,394 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1156387128] [2024-04-04 19:45:30,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:30,394 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:30,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:30,395 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-04 19:45:30,422 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-04 19:45:30,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:30,554 INFO L262 TraceCheckSpWp]: Trace formula consists of 511 conjuncts, 4 conjunts are in the unsatisfiable core [2024-04-04 19:45:30,557 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:30,611 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-04 19:45:30,611 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-04 19:45:30,645 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:30,645 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1137505404] [2024-04-04 19:45:30,645 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:30,646 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1156387128] [2024-04-04 19:45:30,646 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1156387128] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-04 19:45:30,646 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-04 19:45:30,646 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-04-04 19:45:30,647 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1575543783] [2024-04-04 19:45:30,647 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-04 19:45:30,648 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-04-04 19:45:30,648 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:30,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-04-04 19:45:30,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-04-04 19:45:30,689 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,690 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:30,690 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-04 19:45:30,690 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,694 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:30,694 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:30,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:30,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:30,764 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-04 19:45:30,953 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-04 19:45:30,953 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-04 19:45:30,953 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:30,953 INFO L85 PathProgramCache]: Analyzing trace with hash -65961908, now seen corresponding path program 1 times [2024-04-04 19:45:30,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:30,954 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1357337533] [2024-04-04 19:45:30,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:30,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:30,976 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:30,977 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1399088160] [2024-04-04 19:45:30,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:30,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:30,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:30,993 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-04 19:45:31,001 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-04 19:45:31,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:31,140 INFO L262 TraceCheckSpWp]: Trace formula consists of 583 conjuncts, 10 conjunts are in the unsatisfiable core [2024-04-04 19:45:31,143 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:31,348 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-04 19:45:31,349 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-04 19:45:31,584 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-04 19:45:31,584 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:31,584 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1357337533] [2024-04-04 19:45:31,584 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:31,584 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1399088160] [2024-04-04 19:45:31,584 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1399088160] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-04 19:45:31,585 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-04 19:45:31,585 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2024-04-04 19:45:31,585 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2073945608] [2024-04-04 19:45:31,585 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-04 19:45:31,585 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-04-04 19:45:31,585 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:31,633 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-04-04 19:45:31,633 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=264, Unknown=0, NotChecked=0, Total=342 [2024-04-04 19:45:31,633 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:31,633 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:31,634 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-04 19:45:31,634 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:31,634 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:31,634 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:31,634 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:31,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:31,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:31,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:31,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:31,951 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2024-04-04 19:45:32,145 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-04 19:45:32,145 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-04 19:45:32,146 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:32,146 INFO L85 PathProgramCache]: Analyzing trace with hash -1840211228, now seen corresponding path program 2 times [2024-04-04 19:45:32,146 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:32,146 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1696191422] [2024-04-04 19:45:32,146 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:32,146 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:32,169 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:32,169 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1705215441] [2024-04-04 19:45:32,169 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-04-04 19:45:32,169 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:32,169 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:32,170 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-04 19:45:32,196 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-04 19:45:32,352 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-04-04 19:45:32,352 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-04-04 19:45:32,355 INFO L262 TraceCheckSpWp]: Trace formula consists of 627 conjuncts, 6 conjunts are in the unsatisfiable core [2024-04-04 19:45:32,358 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:32,454 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-04 19:45:32,454 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-04-04 19:45:32,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:32,455 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1696191422] [2024-04-04 19:45:32,455 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:32,455 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1705215441] [2024-04-04 19:45:32,455 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1705215441] provided 1 perfect and 0 imperfect interpolant sequences [2024-04-04 19:45:32,455 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-04-04 19:45:32,455 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-04-04 19:45:32,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [37287736] [2024-04-04 19:45:32,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-04-04 19:45:32,455 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-04-04 19:45:32,456 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:32,478 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-04-04 19:45:32,478 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-04-04 19:45:32,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:32,478 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:32,478 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-04 19:45:32,478 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:32,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:32,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:32,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:32,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:32,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:32,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:32,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:32,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:32,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-04 19:45:32,603 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-04 19:45:32,802 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-04 19:45:32,803 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-04 19:45:32,803 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:32,803 INFO L85 PathProgramCache]: Analyzing trace with hash 173938187, now seen corresponding path program 1 times [2024-04-04 19:45:32,803 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:32,803 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [353339608] [2024-04-04 19:45:32,804 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:32,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:32,824 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:32,825 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1704223325] [2024-04-04 19:45:32,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:32,825 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:32,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:32,842 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-04 19:45:32,865 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-04 19:45:33,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:33,003 INFO L262 TraceCheckSpWp]: Trace formula consists of 653 conjuncts, 8 conjunts are in the unsatisfiable core [2024-04-04 19:45:33,006 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:33,088 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-04 19:45:33,088 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-04 19:45:33,236 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-04 19:45:33,236 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:33,237 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [353339608] [2024-04-04 19:45:33,237 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:33,237 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1704223325] [2024-04-04 19:45:33,237 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1704223325] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-04 19:45:33,237 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-04 19:45:33,237 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2024-04-04 19:45:33,237 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2045235015] [2024-04-04 19:45:33,237 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-04 19:45:33,238 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-04-04 19:45:33,238 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:33,253 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-04-04 19:45:33,253 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2024-04-04 19:45:33,254 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:33,254 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:33,254 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-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-04-04 19:45:33,254 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-04 19:45:33,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-04 19:45:33,539 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-04 19:45:33,739 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-04 19:45:33,740 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-04 19:45:33,740 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:33,740 INFO L85 PathProgramCache]: Analyzing trace with hash -771055893, now seen corresponding path program 1 times [2024-04-04 19:45:33,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:33,740 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1186505103] [2024-04-04 19:45:33,740 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:33,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:33,761 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:33,761 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1246554681] [2024-04-04 19:45:33,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:33,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:33,762 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:33,785 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-04 19:45:33,786 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-04 19:45:33,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-04-04 19:45:33,954 INFO L262 TraceCheckSpWp]: Trace formula consists of 649 conjuncts, 14 conjunts are in the unsatisfiable core [2024-04-04 19:45:33,958 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:34,252 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-04 19:45:34,252 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-04 19:45:34,578 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-04 19:45:34,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:45:34,578 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1186505103] [2024-04-04 19:45:34,578 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:45:34,578 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1246554681] [2024-04-04 19:45:34,578 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1246554681] provided 0 perfect and 2 imperfect interpolant sequences [2024-04-04 19:45:34,578 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-04-04 19:45:34,578 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 27 [2024-04-04 19:45:34,578 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25518882] [2024-04-04 19:45:34,579 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-04-04 19:45:34,579 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2024-04-04 19:45:34,579 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-04-04 19:45:34,619 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-04-04 19:45:34,619 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=144, Invalid=558, Unknown=0, NotChecked=0, Total=702 [2024-04-04 19:45:34,619 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:34,619 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-04-04 19:45:34,620 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-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 18 states. [2024-04-04 19:45:34,620 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-04-04 19:45:35,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-04 19:45:35,053 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-04-04 19:45:35,070 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-04 19:45:35,259 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-04 19:45:35,260 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-04 19:45:35,260 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-04-04 19:45:35,260 INFO L85 PathProgramCache]: Analyzing trace with hash 2134717315, now seen corresponding path program 2 times [2024-04-04 19:45:35,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-04-04 19:45:35,260 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [738135724] [2024-04-04 19:45:35,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-04-04 19:45:35,260 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-04-04 19:45:35,282 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-04-04 19:45:35,282 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [289416174] [2024-04-04 19:45:35,283 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-04-04 19:45:35,283 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-04-04 19:45:35,283 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-04-04 19:45:35,284 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-04 19:45:35,305 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-04 19:45:36,834 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-04-04 19:45:36,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-04-04 19:45:36,840 INFO L262 TraceCheckSpWp]: Trace formula consists of 693 conjuncts, 147 conjunts are in the unsatisfiable core [2024-04-04 19:45:36,848 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-04-04 19:45:36,873 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-04 19:45:36,898 INFO L349 Elim1Store]: treesize reduction 15, result has 25.0 percent of original size [2024-04-04 19:45:36,899 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-04 19:45:37,018 INFO L349 Elim1Store]: treesize reduction 36, result has 23.4 percent of original size [2024-04-04 19:45:37,018 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-04 19:45:37,436 INFO L349 Elim1Store]: treesize reduction 78, result has 26.4 percent of original size [2024-04-04 19:45:37,437 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-04 19:45:38,322 INFO L349 Elim1Store]: treesize reduction 96, result has 27.8 percent of original size [2024-04-04 19:45:38,322 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-04 19:45:39,137 INFO L349 Elim1Store]: treesize reduction 44, result has 32.3 percent of original size [2024-04-04 19:45:39,138 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-04 19:45:39,864 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-04 19:45:40,196 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-04 19:45:40,436 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-04 19:45:40,704 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-04 19:45:40,711 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-04 19:45:41,147 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-04 19:45:41,172 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-04 19:45:41,674 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-04-04 19:45:41,674 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-04 19:45:41,681 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-04 19:45:41,698 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-04 19:45:42,150 INFO L349 Elim1Store]: treesize reduction 19, result has 20.8 percent of original size [2024-04-04 19:45:42,150 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-04 19:45:42,167 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-04 19:45:42,172 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-04 19:45:43,839 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-04 19:45:43,843 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-04 19:45:43,918 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-04 19:45:44,036 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-04 19:45:44,037 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-04-04 19:45:51,360 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-04-04 19:45:51,360 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-04 19:45:51,367 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-04 19:45:51,376 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-04 19:45:55,249 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-04 19:45:59,581 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse1 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse9 (= .cse1 c_~B~0.base)) (.cse15 (= c_~B~0.base c_~A~0.base))) (let ((.cse38 (not .cse15)) (.cse24 (not .cse9)) (.cse7 (+ |c_thread1Thread1of1ForFork0_#t~post1| 1)) (.cse5 (select |c_#memory_int| c_~F~0.base)) (.cse4 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse6 (select |c_#memory_int| c_~A~0.base)) (.cse8 (+ c_thread2Thread1of1ForFork1_~j~0 1))) (and (or (and (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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 (let ((.cse0 (let ((.cse3 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse3 .cse1 (store (select .cse3 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse2 (* ~b~0 4))) (= (select (select .cse0 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse2 v_arrayElimCell_40)) (select (select .cse0 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse2)))) (< ~b~0 0) (< ~a~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse9) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (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) (= 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 ((.cse11 (* ~b~0 4)) (.cse13 (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse14 .cse1 (store (select .cse14 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 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) .cse1 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 (= (select .cse10 (+ .cse11 v_arrayElimCell_40)) .cse12) (= (select .cse10 (+ .cse11 v_arrayElimCell_41)) .cse12))))))) (< ~M~0 (+ ~b~0 1)))) (< .cse8 ~M~0)))))) .cse15) (or .cse9 (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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)) (v_arrayElimCell_42 Int)) (let ((.cse17 (* ~b~0 4)) (.cse19 (let ((.cse20 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse20 .cse1 (store (select .cse20 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 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) .cse1 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 (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< ~b~0 0) (< ~a~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_42)) .cse18) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse21 (let ((.cse23 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse23 .cse1 (store (select .cse23 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse22 (* ~b~0 4))) (= (select (select .cse21 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse22 v_arrayElimCell_41)) (select (select .cse21 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse22)))) (< ~M~0 (+ ~b~0 1)))) .cse24) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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 ((.cse26 (* ~b~0 4)) (.cse28 (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse29 .cse1 (store (select .cse29 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse25 (select .cse28 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse27 (select (select .cse28 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (< ~b~0 0) (< ~a~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (= (select .cse25 (+ .cse26 v_arrayElimCell_41)) .cse27) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse25 (+ .cse26 v_arrayElimCell_42)) .cse27) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse24) (or (and (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 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 ((.cse32 (* ~b~0 4)) (.cse33 (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse34 .cse1 (store (select .cse34 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse31 (select .cse33 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse30 (select (select .cse33 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)))) (or (= .cse30 (select .cse31 (+ .cse32 v_arrayElimCell_42))) (forall ((v_arrayElimCell_41 Int)) (= (select .cse31 (+ .cse32 v_arrayElimCell_41)) .cse30)))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< .cse8 ~M~0))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse35 (let ((.cse37 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse37 .cse1 (store (select .cse37 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse36 (* ~b~0 4))) (= (select (select .cse35 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse36)) (select (select .cse35 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse36 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)))) .cse9)) .cse38) (or (and (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (forall ((~M~0 Int)) (or (< .cse8 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 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 ((.cse40 (* ~b~0 4)) (.cse42 (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse43 .cse1 (store (select .cse43 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 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) .cse1 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 (forall ((v_arrayElimCell_41 Int)) (= (select .cse39 (+ .cse40 v_arrayElimCell_41)) .cse41)) (= (select .cse39 (+ .cse40 v_arrayElimCell_42)) .cse41))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (~M~0 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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse44 (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse46 .cse1 (store (select .cse46 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse45 (* ~b~0 4))) (= (select (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_42)) (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse9)) .cse38) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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)) (let ((.cse49 (* ~b~0 4)) (.cse50 (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse51 .cse1 (store (select .cse51 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 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) .cse1 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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse47 (select .cse48 (+ .cse49 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= (select .cse48 (+ .cse49 v_arrayElimCell_40)) .cse47))))) .cse9) (or .cse15 (and (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse52 (let ((.cse54 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse54 .cse1 (store (select .cse54 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 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) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse53 v_arrayElimCell_40)) (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)))))) .cse9) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (forall ((~M~0 Int)) (or (< .cse8 ~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 ((.cse56 (* ~b~0 4)) (.cse58 (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse59 .cse1 (store (select .cse59 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse55 (select .cse58 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse57 (select (select .cse58 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse56)))) (or (= (select .cse55 (+ .cse56 v_arrayElimCell_41)) .cse57) (= (select .cse55 (+ .cse56 v_arrayElimCell_40)) .cse57))))))))))))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (let ((.cse60 (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse62 .cse1 (store (select .cse62 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse61 (* ~b~0 4))) (= (select (select .cse60 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse61 v_arrayElimCell_41)) (select (select .cse60 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse61)))) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse24) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (forall ((~M~0 Int)) (or (< .cse8 ~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)) (v_arrayElimCell_42 Int)) (let ((.cse64 (* ~b~0 4)) (.cse66 (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse67 .cse1 (store (select .cse67 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse63 (select .cse66 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse65 (select (select .cse66 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64)))) (or (= (select .cse63 (+ .cse64 v_arrayElimCell_41)) .cse65) (= .cse65 (select .cse63 (+ .cse64 v_arrayElimCell_42))) (= (select .cse63 (+ .cse64 v_arrayElimCell_40)) .cse65))))))))))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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)) (let ((.cse71 (let ((.cse72 (store |c_#memory_int| c_~A~0.base (store .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse72 .cse1 (store (select .cse72 .cse1) (+ .cse4 v_arrayElimCell_40) (select .cse5 (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse69 (* ~b~0 4))) (let ((.cse70 (select (select .cse71 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69))) (.cse68 (select .cse71 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse1 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< ~a~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (< .cse8 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse68 (+ .cse69 v_arrayElimCell_41)) .cse70) (= .cse70 (select .cse68 (+ .cse69 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)))))) .cse24) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_291 .cse7) (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 .cse6 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse77 .cse1 (store (select .cse77 .cse1) (+ .cse4 v_arrayElimCell_39) (select .cse5 (+ .cse4 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) .cse1 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_40)) .cse75) (= (select .cse73 (+ .cse74 v_arrayElimCell_41)) .cse75) (= (select .cse73 (+ .cse74 v_arrayElimCell_42)) .cse75))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (< .cse8 ~M~0))))))))) is different from true [2024-04-04 19:46:02,590 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse4 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse9 (= .cse4 c_~B~0.base)) (.cse0 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse1 (+ 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)) (.cse33 (= c_~B~0.base c_~A~0.base))) (let ((.cse11 (not .cse33)) (.cse21 (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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 ((.cse66 (* ~b~0 4)) (.cse68 (let ((.cse69 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse69 .cse4 (store (select .cse69 .cse4) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse65 (select .cse68 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse67 (select (select .cse68 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse66)))) (or (< ~b~0 0) (< ~a~0 0) (= (select .cse65 (+ .cse66 v_arrayElimCell_41)) .cse67) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse65 (+ .cse66 v_arrayElimCell_42)) .cse67) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))) (.cse10 (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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)) (let ((.cse63 (let ((.cse64 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse64 .cse4 (store (select .cse64 .cse4) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse61 (* ~b~0 4))) (let ((.cse62 (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse61))) (.cse60 (select .cse63 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 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) (= (select .cse60 (+ .cse61 v_arrayElimCell_41)) .cse62) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= .cse62 (select .cse60 (+ .cse61 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1))))))) (.cse15 (not .cse9))) (and (or (and (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (let ((.cse2 (let ((.cse5 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse5 .cse4 (store (select .cse5 .cse4) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse3 (* ~b~0 4))) (= (select (select .cse2 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse3)) (select (select .cse2 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse3 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)))) .cse9) .cse10) .cse11) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 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) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse12 (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse14 .cse4 (store (select .cse14 .cse4) (+ .cse6 v_arrayElimCell_40) (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) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_41)) (select (select .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)))) .cse15) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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)) (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_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse20 .cse4 (store (select .cse20 .cse4) (+ .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) .cse4 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) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= .cse18 (select .cse16 (+ .cse17 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18))))) (or .cse11 (and .cse21 (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (let ((.cse22 (let ((.cse24 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse24 .cse4 (store (select .cse24 .cse4) (+ .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 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse23 v_arrayElimCell_42)) (select (select .cse22 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse23)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse9))) (or (and (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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))) (let ((.cse26 (* ~b~0 4)) (.cse28 (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse29 .cse4 (store (select .cse29 .cse4) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse25 (select .cse28 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse27 (select (select .cse28 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (= (select .cse25 (+ .cse26 v_arrayElimCell_40)) .cse27) (< ~b~0 0) (< ~a~0 0) (= (select .cse25 (+ .cse26 v_arrayElimCell_41)) .cse27) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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))) (or (let ((.cse30 (let ((.cse32 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse32 .cse4 (store (select .cse32 .cse4) (+ .cse6 v_arrayElimCell_39) (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) .cse4 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)))) (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse9)) .cse33) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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 ((.cse35 (* ~b~0 4)) (.cse37 (let ((.cse38 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse38 .cse4 (store (select .cse38 .cse4) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse34 (select .cse37 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse36 (select (select .cse37 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse35)))) (or (= (select .cse34 (+ .cse35 v_arrayElimCell_40)) .cse36) (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse34 (+ .cse35 v_arrayElimCell_42)) .cse36) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse9) (or .cse33 (and (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (let ((.cse39 (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse41 .cse4 (store (select .cse41 .cse4) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (.cse40 (* ~b~0 4))) (= (select (select .cse39 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse40 v_arrayElimCell_40)) (select (select .cse39 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse40)))))) .cse9) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse43 (* ~b~0 4)) (.cse45 (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse46 .cse4 (store (select .cse46 .cse4) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse42 (select .cse45 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse44 (select (select .cse45 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse43)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse42 (+ .cse43 v_arrayElimCell_41)) .cse44) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= (select .cse42 (+ .cse43 v_arrayElimCell_40)) .cse44))))))) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse48 (* ~b~0 4)) (.cse50 (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse51 .cse4 (store (select .cse51 .cse4) (+ .cse6 v_arrayElimCell_39) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse47 (select .cse50 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse49 (select (select .cse50 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse48)))) (or (= (select .cse47 (+ .cse48 v_arrayElimCell_40)) .cse49) (< ~b~0 0) (< ~a~0 0) (= (select .cse47 (+ .cse48 v_arrayElimCell_41)) .cse49) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse47 (+ .cse48 v_arrayElimCell_42)) .cse49) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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)) (let ((.cse54 (* ~b~0 4)) (.cse55 (let ((.cse56 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse56 .cse4 (store (select .cse56 .cse4) (+ .cse6 v_arrayElimCell_40) (select .cse7 (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse53 (select .cse55 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse52 (select (select .cse55 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse54)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= .cse52 (select .cse53 (+ .cse54 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= (select .cse53 (+ .cse54 v_arrayElimCell_40)) .cse52))))) .cse9) (or .cse21 .cse15) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~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) (let ((.cse57 (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) |thread1Thread1of1ForFork0_#t~mem2|)))) (store .cse59 .cse4 (store (select .cse59 .cse4) (+ .cse6 v_arrayElimCell_39) (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) .cse4 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)))) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse15) (or .cse10 .cse15))))) is different from true [2024-04-04 19:46:07,582 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse11 (= c_~B~0.base c_~A~0.base))) (let ((.cse62 (not .cse11)) (.cse0 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse1 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse6 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse4 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (let ((.cse2 (let ((.cse7 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse5 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_5)))) (store .cse5 .cse4 (store (select .cse5 .cse4) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse7) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse3 (* ~b~0 4))) (= (select (select .cse2 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse3)) (select (select .cse2 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse4 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse3 v_arrayElimCell_41)))) (< ~M~0 (+ ~b~0 1)))) (not (= c_~B~0.base .cse4))))) (or .cse11 (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse14 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (let ((.cse12 (let ((.cse16 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse15 (store |c_#memory_int| c_~A~0.base (store .cse16 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_10)))) (store .cse15 .cse14 (store (select .cse15 .cse14) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse16) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse13 (* ~b~0 4))) (= (select (select .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)) (select (select .cse12 (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))) (+ .cse13 v_arrayElimCell_40)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (= c_~B~0.base .cse14)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse21 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse18 (* ~b~0 4)) (.cse20 (let ((.cse23 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse22 .cse21 (store (select .cse22 .cse21) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse23) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse17 (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)))) (.cse19 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (= (select .cse17 (+ .cse18 v_arrayElimCell_41)) .cse19) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= (select .cse17 (+ .cse18 v_arrayElimCell_40)) .cse19) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_13)))) (store .cse29 .cse28 (store (select .cse29 .cse28) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse26 (* ~b~0 4))) (let ((.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26))) (.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_41))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_40)))))))) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse31 (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_291 4)) v_subst_12)))) (store .cse34 .cse33 (store (select .cse34 .cse33) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse35) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse32 (* ~b~0 4))) (= (select (select .cse31 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)) (select (select .cse31 (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))) (+ .cse32 v_arrayElimCell_40)))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)))) (= c_~B~0.base .cse33))))) .cse11) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse37 (* ~b~0 4)) (.cse39 (let ((.cse42 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse42 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse41 .cse40 (store (select .cse41 .cse40) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse42) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse36 (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)))) (.cse38 (select (select .cse39 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse37)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse36 (+ .cse37 v_arrayElimCell_42)) .cse38) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= (select .cse36 (+ .cse37 v_arrayElimCell_41)) .cse38))))) (not (= c_~B~0.base .cse40))))) (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 (not (= c_~B~0.base .cse43)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse44 (let ((.cse47 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse47 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse46 .cse43 (store (select .cse46 .cse43) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse47) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse45 (* ~b~0 4))) (= (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)) (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse45)))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse49 (* ~b~0 4)) (.cse51 (let ((.cse54 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse53 (store |c_#memory_int| c_~A~0.base (store .cse54 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (store .cse53 .cse52 (store (select .cse53 .cse52) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse54) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse48 (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)))) (.cse50 (select (select .cse51 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse49)))) (or (< ~b~0 0) (= (select .cse48 (+ .cse49 v_arrayElimCell_40)) .cse50) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse48 (+ .cse49 v_arrayElimCell_42)) .cse50) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (= c_~B~0.base .cse52)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse59 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse58 (let ((.cse61 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse60 (store |c_#memory_int| c_~A~0.base (store .cse61 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse60 .cse59 (store (select .cse60 .cse59) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse61) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse57 (* ~b~0 4))) (let ((.cse55 (select (select .cse58 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse57))) (.cse56 (select .cse58 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse59 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse55 (select .cse56 (+ .cse57 v_arrayElimCell_42))) (= .cse55 (select .cse56 (+ .cse57 v_arrayElimCell_41))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) (not (= c_~B~0.base .cse59))))) (or .cse62 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse67 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse64 (* ~b~0 4)) (.cse66 (let ((.cse69 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse68 (store |c_#memory_int| c_~A~0.base (store .cse69 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse68 .cse67 (store (select .cse68 .cse67) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse69) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse63 (select .cse66 (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)))) (.cse65 (select (select .cse66 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse63 (+ .cse64 v_arrayElimCell_42)) .cse65) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= (select .cse63 (+ .cse64 v_arrayElimCell_41)) .cse65)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse71 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (let ((.cse70 (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_291 4)) v_subst_9)))) (store .cse73 .cse71 (store (select .cse73 .cse71) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse74) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse72 (* ~b~0 4))) (= (select (select .cse70 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse71 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse72 v_arrayElimCell_42)) (select (select .cse70 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse72)))))) (= c_~B~0.base .cse71)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 Int) (v_arrayElimCell_42 Int)) (let ((.cse79 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse77 (* ~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_291 4)) v_subst_7)))) (store .cse80 .cse79 (store (select .cse80 .cse79) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse81) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse76 (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)))) (.cse75 (select (select .cse78 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse77)))) (or (< ~b~0 0) (= .cse75 (select .cse76 (+ .cse77 v_arrayElimCell_42))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse76 (+ .cse77 v_arrayElimCell_41)) .cse75) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= (select .cse76 (+ .cse77 v_arrayElimCell_40)) .cse75) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse83 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (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_291 4)) v_subst_1)))) (store .cse85 .cse83 (store (select .cse85 .cse83) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse86) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse84 (* ~b~0 4))) (= (select (select .cse82 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse83 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse84 v_arrayElimCell_42)) (select (select .cse82 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse84)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (= c_~B~0.base .cse83)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse91 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse90 (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_291 4)) v_subst_2)))) (store .cse92 .cse91 (store (select .cse92 .cse91) (+ .cse6 v_arrayElimCell_39) (select (select (store |c_#memory_int| c_~A~0.base .cse93) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse89 (* ~b~0 4))) (let ((.cse87 (select (select .cse90 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89))) (.cse88 (select .cse90 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse91 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_42))) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_41))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) .cse62) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse98 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse96 (* ~b~0 4)) (.cse97 (let ((.cse100 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse99 (store |c_#memory_int| c_~A~0.base (store .cse100 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_6)))) (store .cse99 .cse98 (store (select .cse99 .cse98) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse100) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse95 (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)))) (.cse94 (select (select .cse97 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse96)))) (or (< ~b~0 0) (= .cse94 (select .cse95 (+ .cse96 v_arrayElimCell_41))) (= .cse94 (select .cse95 (+ .cse96 v_arrayElimCell_42))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (= (select .cse95 (+ .cse96 v_arrayElimCell_40)) .cse94) (< ~M~0 (+ ~b~0 1))))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse104 (let ((.cse107 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse106 (store |c_#memory_int| c_~A~0.base (store .cse107 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (store .cse106 .cse105 (store (select .cse106 .cse105) (+ .cse6 v_arrayElimCell_40) (select (select (store |c_#memory_int| c_~A~0.base .cse107) c_~F~0.base) (+ .cse6 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse103 (* ~b~0 4))) (let ((.cse101 (select (select .cse104 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse103))) (.cse102 (select .cse104 (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))))) (or (< ~b~0 0) (= .cse101 (select .cse102 (+ .cse103 v_arrayElimCell_40))) (= .cse101 (select .cse102 (+ .cse103 v_arrayElimCell_42))) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse1) (< ~M~0 (+ ~b~0 1)))))) (= c_~B~0.base .cse105))))))) is different from true [2024-04-04 19:46:11,994 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse16 (= c_~B~0.base c_~A~0.base))) (let ((.cse3 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)) (.cse81 (not .cse16))) (and (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int 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_291 4)) v_subst_13)))) (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_40))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (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_291 4)) v_subst_12)))) (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)))))))) (.cse12 (* ~b~0 4))) (= (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse12)) (select (select .cse11 (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))) (+ .cse12 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse13))))) .cse16) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse18 (* ~b~0 4)) (.cse20 (let ((.cse23 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (store .cse22 .cse21 (store (select .cse22 .cse21) v_arrayElimCell_40 (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 ((.cse17 (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)))) (.cse19 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)))) (or (< ~b~0 0) (= (select .cse17 (+ .cse18 v_arrayElimCell_40)) .cse19) (= (select .cse17 (+ .cse18 v_arrayElimCell_42)) .cse19) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))) (= c_~B~0.base .cse21)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse26 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (< ~b~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= (select .cse25 (+ .cse26 v_arrayElimCell_42)) .cse24) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse28)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse31 (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 .cse31)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse34 (* ~b~0 4)) (.cse35 (let ((.cse37 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse36 .cse31 (store (select .cse36 .cse31) 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 ((.cse33 (select .cse35 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse31 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse35 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse34)))) (or (< ~b~0 0) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse33 (+ .cse34 v_arrayElimCell_41)) .cse32) (< 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_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| 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) .cse10))) (let ((.cse41 (let ((.cse44 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse44 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_6)))) (store .cse43 .cse42 (store (select .cse43 .cse42) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse44) c_~F~0.base) (+ 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) .cse42 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_41))) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_42))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (or .cse16 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse49 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse46 (* ~b~0 4)) (.cse48 (let ((.cse51 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse51 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse50 .cse49 (store (select .cse50 .cse49) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse51) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse45 (select .cse48 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse49 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse47 (select (select .cse48 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse46)))) (or (< ~b~0 0) (= (select .cse45 (+ .cse46 v_arrayElimCell_40)) .cse47) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse45 (+ .cse46 v_arrayElimCell_41)) .cse47) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse53 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse52 (let ((.cse56 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse55 (store |c_#memory_int| c_~A~0.base (store .cse56 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_10)))) (store .cse55 .cse53 (store (select .cse55 .cse53) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse56) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse54 (* ~b~0 4))) (= (select (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse53 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse54 v_arrayElimCell_40)) (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse54)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse53)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse59 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 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_291 .cse3) (let ((.cse57 (let ((.cse61 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse60 (store |c_#memory_int| c_~A~0.base (store .cse61 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse60 .cse59 (store (select .cse60 .cse59) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse61) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse58 (* ~b~0 4))) (= (select (select .cse57 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)) (select (select .cse57 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse59 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse58 v_arrayElimCell_41)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse59))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse66 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse65 (let ((.cse68 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse68 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse67 .cse66 (store (select .cse67 .cse66) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse68) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse64 (* ~b~0 4))) (let ((.cse62 (select (select .cse65 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64))) (.cse63 (select .cse65 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse66 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse62 (select .cse63 (+ .cse64 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse62 (select .cse63 (+ .cse64 v_arrayElimCell_41))))))) (not (= c_~B~0.base .cse66))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse73 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse72 (let ((.cse75 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse74 (store |c_#memory_int| c_~A~0.base (store .cse75 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse74 .cse73 (store (select .cse74 .cse73) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse75) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse71 (* ~b~0 4))) (let ((.cse69 (select (select .cse72 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse71))) (.cse70 (select .cse72 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse73 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse69 (select .cse70 (+ .cse71 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse69 (select .cse70 (+ .cse71 v_arrayElimCell_41)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse76 (let ((.cse80 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse79 (store |c_#memory_int| c_~A~0.base (store .cse80 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_1)))) (store .cse79 .cse77 (store (select .cse79 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse80) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse78 (* ~b~0 4))) (= (select (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))) (+ .cse78 v_arrayElimCell_42)) (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse78)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse77))))) .cse81) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse82 (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 .cse82)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.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_291 4)) v_subst_5)))) (store .cse85 .cse82 (store (select .cse85 .cse82) 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)))))))) (.cse84 (* ~b~0 4))) (= (select (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse82 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse84 v_arrayElimCell_41)) (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse84)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 Int) (v_arrayElimCell_42 Int)) (let ((.cse91 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse90 (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_291 4)) v_subst_7)))) (store .cse92 .cse91 (store (select .cse92 .cse91) 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)))))))) (.cse89 (* ~b~0 4))) (let ((.cse87 (select (select .cse90 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89))) (.cse88 (select .cse90 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse91 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_42))) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 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) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (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_291 4)) v_subst_9)))) (store .cse97 .cse96 (store (select .cse97 .cse96) 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)))))))) (.cse95 (* ~b~0 4))) (= (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)) (select (select .cse94 (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))) (+ .cse95 v_arrayElimCell_42)))) (< 1 ~M~0))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse101 (* ~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_291 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))))))))) (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) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse100 (+ .cse101 v_arrayElimCell_41)) .cse99) (< 1 ~M~0))))))) .cse81)))) is different from false [2024-04-04 19:46:14,023 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse16 (= c_~B~0.base c_~A~0.base))) (let ((.cse3 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4))) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)) (.cse81 (not .cse16))) (and (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int 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_291 4)) v_subst_13)))) (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_40))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (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_291 4)) v_subst_12)))) (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)))))))) (.cse12 (* ~b~0 4))) (= (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse12)) (select (select .cse11 (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))) (+ .cse12 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse13))))) .cse16) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse18 (* ~b~0 4)) (.cse20 (let ((.cse23 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (store .cse22 .cse21 (store (select .cse22 .cse21) v_arrayElimCell_40 (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 ((.cse17 (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)))) (.cse19 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse18)))) (or (< ~b~0 0) (= (select .cse17 (+ .cse18 v_arrayElimCell_40)) .cse19) (= (select .cse17 (+ .cse18 v_arrayElimCell_42)) .cse19) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))) (= c_~B~0.base .cse21)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse26 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (< ~b~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= (select .cse25 (+ .cse26 v_arrayElimCell_42)) .cse24) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse28)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse31 (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 .cse31)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse34 (* ~b~0 4)) (.cse35 (let ((.cse37 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse36 .cse31 (store (select .cse36 .cse31) 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 ((.cse33 (select .cse35 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse31 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse32 (select (select .cse35 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse34)))) (or (< ~b~0 0) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse33 (+ .cse34 v_arrayElimCell_41)) .cse32) (< 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_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| 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) .cse10))) (let ((.cse41 (let ((.cse44 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse44 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_6)))) (store .cse43 .cse42 (store (select .cse43 .cse42) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse44) c_~F~0.base) (+ 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) .cse42 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_41))) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse38 (select .cse39 (+ .cse40 v_arrayElimCell_42))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (or .cse16 (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse49 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse46 (* ~b~0 4)) (.cse48 (let ((.cse51 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse51 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse50 .cse49 (store (select .cse50 .cse49) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse51) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse45 (select .cse48 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse49 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse47 (select (select .cse48 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse46)))) (or (< ~b~0 0) (= (select .cse45 (+ .cse46 v_arrayElimCell_40)) .cse47) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse45 (+ .cse46 v_arrayElimCell_41)) .cse47) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse53 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse52 (let ((.cse56 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse55 (store |c_#memory_int| c_~A~0.base (store .cse56 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_10)))) (store .cse55 .cse53 (store (select .cse55 .cse53) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse56) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse54 (* ~b~0 4))) (= (select (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse53 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse54 v_arrayElimCell_40)) (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse54)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse53)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse59 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 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_291 .cse3) (let ((.cse57 (let ((.cse61 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse60 (store |c_#memory_int| c_~A~0.base (store .cse61 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse60 .cse59 (store (select .cse60 .cse59) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse61) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse58 (* ~b~0 4))) (= (select (select .cse57 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)) (select (select .cse57 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse59 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse58 v_arrayElimCell_41)))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse59))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse66 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse65 (let ((.cse68 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse68 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse67 .cse66 (store (select .cse67 .cse66) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse68) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse64 (* ~b~0 4))) (let ((.cse62 (select (select .cse65 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse64))) (.cse63 (select .cse65 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse66 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse62 (select .cse63 (+ .cse64 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse62 (select .cse63 (+ .cse64 v_arrayElimCell_41))))))) (not (= c_~B~0.base .cse66))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse73 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse72 (let ((.cse75 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse74 (store |c_#memory_int| c_~A~0.base (store .cse75 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse74 .cse73 (store (select .cse74 .cse73) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse75) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse71 (* ~b~0 4))) (let ((.cse69 (select (select .cse72 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse71))) (.cse70 (select .cse72 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse73 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse69 (select .cse70 (+ .cse71 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse69 (select .cse70 (+ .cse71 v_arrayElimCell_41)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse77 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (let ((.cse76 (let ((.cse80 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse79 (store |c_#memory_int| c_~A~0.base (store .cse80 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_1)))) (store .cse79 .cse77 (store (select .cse79 .cse77) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse80) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse78 (* ~b~0 4))) (= (select (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))) (+ .cse78 v_arrayElimCell_42)) (select (select .cse76 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse78)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse77))))) .cse81) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse82 (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 .cse82)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.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_291 4)) v_subst_5)))) (store .cse85 .cse82 (store (select .cse85 .cse82) 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)))))))) (.cse84 (* ~b~0 4))) (= (select (select .cse83 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse82 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse84 v_arrayElimCell_41)) (select (select .cse83 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse84)))) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 Int) (v_arrayElimCell_42 Int)) (let ((.cse91 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse90 (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_291 4)) v_subst_7)))) (store .cse92 .cse91 (store (select .cse92 .cse91) 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)))))))) (.cse89 (* ~b~0 4))) (let ((.cse87 (select (select .cse90 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89))) (.cse88 (select .cse90 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse91 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_42))) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 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) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (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_291 4)) v_subst_9)))) (store .cse97 .cse96 (store (select .cse97 .cse96) 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)))))))) (.cse95 (* ~b~0 4))) (= (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)) (select (select .cse94 (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))) (+ .cse95 v_arrayElimCell_42)))) (< 1 ~M~0))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse101 (* ~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_291 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))))))))) (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) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< ~M~0 (+ ~b~0 1)) (= (select .cse100 (+ .cse101 v_arrayElimCell_41)) .cse99) (< 1 ~M~0))))))) .cse81)))) is different from true [2024-04-04 19:46:17,595 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse64 (= c_~B~0.base c_~A~0.base))) (let ((.cse16 (not .cse64)) (.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 (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 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_291 4)) v_subst_8)))) (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) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 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) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (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_291 4)) v_subst_9)))) (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)))))))) (.cse12 (* ~b~0 4))) (= (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse12)) (select (select .cse11 (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))) (+ .cse12 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse13))))) .cse16) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse20 (let ((.cse23 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse22 .cse21 (store (select .cse22 .cse21) v_arrayElimCell_40 (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)))))))) (.cse19 (* ~b~0 4))) (let ((.cse17 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse19))) (.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))))) (or (< ~b~0 0) (= .cse17 (select .cse18 (+ .cse19 v_arrayElimCell_42))) (= .cse17 (select .cse18 (+ .cse19 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))))) (not (= c_~B~0.base .cse21))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse25 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse24 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse26 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse25)))) (or (< ~b~0 0) (= (select .cse24 (+ .cse25 v_arrayElimCell_42)) .cse26) (= (select .cse24 (+ .cse25 v_arrayElimCell_40)) .cse26) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))))) (= c_~B~0.base .cse28)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| 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) .cse10))) (let ((.cse34 (let ((.cse37 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_6)))) (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)))))))) (.cse33 (* ~b~0 4))) (let ((.cse31 (select (select .cse34 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse33))) (.cse32 (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))))) (or (< ~b~0 0) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_40))) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_42))) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse42 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse39 (* ~b~0 4)) (.cse41 (let ((.cse44 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse44 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (store .cse43 .cse42 (store (select .cse43 .cse42) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse44) c_~F~0.base) (+ 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_40)) .cse40) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse38 (+ .cse39 v_arrayElimCell_42)) .cse40) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse42)))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse49 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse48 (let ((.cse51 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse51 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse50 .cse49 (store (select .cse50 .cse49) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse51) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse47 (* ~b~0 4))) (let ((.cse45 (select (select .cse48 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse47))) (.cse46 (select .cse48 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse49 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse54 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (let ((.cse52 (let ((.cse56 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse55 (store |c_#memory_int| c_~A~0.base (store .cse56 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_1)))) (store .cse55 .cse54 (store (select .cse55 .cse54) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse56) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse53 (* ~b~0 4))) (= (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)) (select (select .cse52 (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))) (+ .cse53 v_arrayElimCell_42)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse54))))) .cse16) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse61 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse60 (let ((.cse63 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse63 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse62 .cse61 (store (select .cse62 .cse61) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse63) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse59 (* ~b~0 4))) (let ((.cse57 (select (select .cse60 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse59))) (.cse58 (select .cse60 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse61 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse57 (select .cse58 (+ .cse59 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse57 (select .cse58 (+ .cse59 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse61))))) (or .cse64 (and (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 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 ((.cse65 (let ((.cse69 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse68 (store |c_#memory_int| c_~A~0.base (store .cse69 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_12)))) (store .cse68 .cse67 (store (select .cse68 .cse67) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse69) c_~F~0.base) (+ 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)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse67)))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse74 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse71 (* ~b~0 4)) (.cse73 (let ((.cse76 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse75 (store |c_#memory_int| c_~A~0.base (store .cse76 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_13)))) (store .cse75 .cse74 (store (select .cse75 .cse74) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse76) c_~F~0.base) (+ 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) .cse74 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 (< ~b~0 0) (< ~a~0 0) (= (select .cse70 (+ .cse71 v_arrayElimCell_40)) .cse72) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse70 (+ .cse71 v_arrayElimCell_41)) .cse72) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 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) .cse10))) (let ((.cse80 (let ((.cse83 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse82 (store |c_#memory_int| c_~A~0.base (store .cse83 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_7)))) (store .cse82 .cse81 (store (select .cse82 .cse81) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse83) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse79 (* ~b~0 4))) (let ((.cse77 (select (select .cse80 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse79))) (.cse78 (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))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse77 (select .cse78 (+ .cse79 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse78 (+ .cse79 v_arrayElimCell_40)) .cse77) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse77 (select .cse78 (+ .cse79 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse84 (let ((.cse88 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse87 (store |c_#memory_int| c_~A~0.base (store .cse88 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse87 .cse86 (store (select .cse87 .cse86) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse88) c_~F~0.base) (+ 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_41)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse86))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse90 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse89 (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_291 4)) v_subst_5)))) (store .cse92 .cse90 (store (select .cse92 .cse90) 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)))))))) (.cse91 (* ~b~0 4))) (= (select (select .cse89 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse90 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse91 v_arrayElimCell_41)) (select (select .cse89 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse91)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (not (= c_~B~0.base .cse90))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (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_291 4)) v_subst_10)))) (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)))))))) (.cse95 (* ~b~0 4))) (= (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)) (select (select .cse94 (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))) (+ .cse95 v_arrayElimCell_40)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 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_291 4)) v_subst_11)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_39 (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) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))) .cse64)))) is different from false [2024-04-04 19:46:19,608 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse64 (= c_~B~0.base c_~A~0.base))) (let ((.cse16 (not .cse64)) (.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 (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 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_291 4)) v_subst_8)))) (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) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_42))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 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) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (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_291 4)) v_subst_9)))) (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)))))))) (.cse12 (* ~b~0 4))) (= (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse12)) (select (select .cse11 (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))) (+ .cse12 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse13))))) .cse16) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse20 (let ((.cse23 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse23 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse22 .cse21 (store (select .cse22 .cse21) v_arrayElimCell_40 (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)))))))) (.cse19 (* ~b~0 4))) (let ((.cse17 (select (select .cse20 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse19))) (.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))))) (or (< ~b~0 0) (= .cse17 (select .cse18 (+ .cse19 v_arrayElimCell_42))) (= .cse17 (select .cse18 (+ .cse19 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))))) (not (= c_~B~0.base .cse21))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse25 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse24 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse26 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse25)))) (or (< ~b~0 0) (= (select .cse24 (+ .cse25 v_arrayElimCell_42)) .cse26) (= (select .cse24 (+ .cse25 v_arrayElimCell_40)) .cse26) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))))) (= c_~B~0.base .cse28)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| 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) .cse10))) (let ((.cse34 (let ((.cse37 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse36 (store |c_#memory_int| c_~A~0.base (store .cse37 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_6)))) (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)))))))) (.cse33 (* ~b~0 4))) (let ((.cse31 (select (select .cse34 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse33))) (.cse32 (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))))) (or (< ~b~0 0) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_40))) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_42))) (= .cse31 (select .cse32 (+ .cse33 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse42 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse39 (* ~b~0 4)) (.cse41 (let ((.cse44 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse43 (store |c_#memory_int| c_~A~0.base (store .cse44 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (store .cse43 .cse42 (store (select .cse43 .cse42) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse44) c_~F~0.base) (+ 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_40)) .cse40) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse38 (+ .cse39 v_arrayElimCell_42)) .cse40) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse42)))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse49 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse48 (let ((.cse51 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse51 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse50 .cse49 (store (select .cse50 .cse49) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse51) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse47 (* ~b~0 4))) (let ((.cse45 (select (select .cse48 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse47))) (.cse46 (select .cse48 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse49 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse54 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< ~a~0 0) (let ((.cse52 (let ((.cse56 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse55 (store |c_#memory_int| c_~A~0.base (store .cse56 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_1)))) (store .cse55 .cse54 (store (select .cse55 .cse54) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse56) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse53 (* ~b~0 4))) (= (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse53)) (select (select .cse52 (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))) (+ .cse53 v_arrayElimCell_42)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse54))))) .cse16) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse61 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse60 (let ((.cse63 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse63 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse62 .cse61 (store (select .cse62 .cse61) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse63) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse59 (* ~b~0 4))) (let ((.cse57 (select (select .cse60 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse59))) (.cse58 (select .cse60 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse61 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (= .cse57 (select .cse58 (+ .cse59 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse57 (select .cse58 (+ .cse59 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse61))))) (or .cse64 (and (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 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 ((.cse65 (let ((.cse69 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse68 (store |c_#memory_int| c_~A~0.base (store .cse69 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_12)))) (store .cse68 .cse67 (store (select .cse68 .cse67) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse69) c_~F~0.base) (+ 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)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (= c_~B~0.base .cse67)))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (let ((.cse74 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse71 (* ~b~0 4)) (.cse73 (let ((.cse76 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse75 (store |c_#memory_int| c_~A~0.base (store .cse76 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_13)))) (store .cse75 .cse74 (store (select .cse75 .cse74) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse76) c_~F~0.base) (+ 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) .cse74 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 (< ~b~0 0) (< ~a~0 0) (= (select .cse70 (+ .cse71 v_arrayElimCell_40)) .cse72) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse70 (+ .cse71 v_arrayElimCell_41)) .cse72) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 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) .cse10))) (let ((.cse80 (let ((.cse83 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse82 (store |c_#memory_int| c_~A~0.base (store .cse83 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_7)))) (store .cse82 .cse81 (store (select .cse82 .cse81) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse83) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse79 (* ~b~0 4))) (let ((.cse77 (select (select .cse80 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse79))) (.cse78 (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))))) (or (< ~b~0 0) (< ~a~0 0) (= .cse77 (select .cse78 (+ .cse79 v_arrayElimCell_42))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse78 (+ .cse79 v_arrayElimCell_40)) .cse77) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse77 (select .cse78 (+ .cse79 v_arrayElimCell_41))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse84 (let ((.cse88 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse87 (store |c_#memory_int| c_~A~0.base (store .cse88 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse87 .cse86 (store (select .cse87 .cse86) v_arrayElimCell_39 (select (select (store |c_#memory_int| c_~A~0.base .cse88) c_~F~0.base) (+ 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_41)))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse86))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse90 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (let ((.cse89 (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_291 4)) v_subst_5)))) (store .cse92 .cse90 (store (select .cse92 .cse90) 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)))))))) (.cse91 (* ~b~0 4))) (= (select (select .cse89 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse90 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse91 v_arrayElimCell_41)) (select (select .cse89 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse91)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (< 1 ~M~0))) (not (= c_~B~0.base .cse90))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (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_291 4)) v_subst_10)))) (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)))))))) (.cse95 (* ~b~0 4))) (= (select (select .cse94 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse95)) (select (select .cse94 (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))) (+ .cse95 v_arrayElimCell_40)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 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_291 4)) v_subst_11)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_39 (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) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse3) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))) .cse64)))) is different from true [2024-04-04 19:46:20,877 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse23 (= c_~B~0.base c_~A~0.base))) (let ((.cse36 (not .cse23)) (.cse0 (+ 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 (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse3 (* ~b~0 4)) (.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_291 4)) v_subst_8)))) (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))))))))) (let ((.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)))) (.cse1 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse3)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse2 (+ .cse3 v_arrayElimCell_42)) .cse1) (< 1 ~M~0))))) (not (= c_~B~0.base .cse5))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse11 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (= c_~B~0.base .cse11) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (let ((.cse12 (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_291 4)) v_subst_10)))) (store .cse14 .cse11 (store (select .cse14 .cse11) v_arrayElimCell_39 (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 .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)) (select (select .cse12 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse11 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse20 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse17 (* ~b~0 4)) (.cse19 (let ((.cse22 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse22 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse21 .cse20 (store (select .cse21 .cse20) v_arrayElimCell_39 (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))))))))) (let ((.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)))) (.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18))))))) .cse23) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse26 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse25 (+ .cse26 v_arrayElimCell_42)) .cse24) (< 1 ~M~0)))))) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse31 (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_291 4)) v_subst_9)))) (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)))))))) (.cse32 (* ~b~0 4))) (= (select (select .cse31 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)) (select (select .cse31 (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))) (+ .cse32 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse33))))) .cse36) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse41 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse40 (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_291 4)) v_subst_4)))) (store .cse42 .cse41 (store (select .cse42 .cse41) v_arrayElimCell_39 (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)))))))) (.cse39 (* ~b~0 4))) (let ((.cse37 (select (select .cse40 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse39))) (.cse38 (select .cse40 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse41 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse37 (select .cse38 (+ .cse39 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= .cse37 (select .cse38 (+ .cse39 v_arrayElimCell_40))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse41)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse46 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse44 (let ((.cse48 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse47 (store |c_#memory_int| c_~A~0.base (store .cse48 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_5)))) (store .cse47 .cse46 (store (select .cse47 .cse46) v_arrayElimCell_40 (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)))))))) (.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) .cse46 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_41)))) (< 1 ~M~0))) (not (= c_~B~0.base .cse46))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse53 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse50 (* ~b~0 4)) (.cse52 (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_291 4)) v_subst_2)))) (store .cse54 .cse53 (store (select .cse54 .cse53) v_arrayElimCell_39 (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))))))))) (let ((.cse49 (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse53 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse51 (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse49 (+ .cse50 v_arrayElimCell_42)) .cse51) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse49 (+ .cse50 v_arrayElimCell_41)) .cse51) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse53))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse57 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse56 (let ((.cse60 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse60 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse59 .cse57 (store (select .cse59 .cse57) 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)))))))) (.cse58 (* ~b~0 4))) (= (select (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))) (+ .cse58 v_arrayElimCell_41)) (select (select .cse56 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse57))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 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) .cse10))) (let ((.cse64 (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_291 4)) v_subst_7)))) (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)))))))) (.cse63 (* ~b~0 4))) (let ((.cse61 (select (select .cse64 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse63))) (.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))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse61 (select .cse62 (+ .cse63 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= (select .cse62 (+ .cse63 v_arrayElimCell_40)) .cse61) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse61 (select .cse62 (+ .cse63 v_arrayElimCell_41)))))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 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_291 4)) v_subst_12)))) (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_40)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int 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_291 4)) v_subst_13)))) (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)))))))) (.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 (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_40))) (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))))) .cse23) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (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_291 4)) v_subst_3)))) (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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse80 (+ .cse81 v_arrayElimCell_42)) .cse82) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (< 1 ~M~0))))) (= c_~B~0.base .cse84)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse91 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse90 (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_291 4)) v_subst_6)))) (store .cse92 .cse91 (store (select .cse92 .cse91) 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)))))))) (.cse89 (* ~b~0 4))) (let ((.cse87 (select (select .cse90 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89))) (.cse88 (select .cse90 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse91 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_41))) (< 1 ~M~0)))))) (or .cse36 (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (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_291 4)) v_subst_1)))) (store .cse97 .cse95 (store (select .cse97 .cse95) 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)))))))) (.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_42)) (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) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (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_291 4)) v_subst_2)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_39 (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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse99 (+ .cse100 v_arrayElimCell_42)) .cse101) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse99 (+ .cse100 v_arrayElimCell_41)) .cse101) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))))))) is different from false [2024-04-04 19:46:22,891 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse23 (= c_~B~0.base c_~A~0.base))) (let ((.cse36 (not .cse23)) (.cse0 (+ 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 (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse3 (* ~b~0 4)) (.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_291 4)) v_subst_8)))) (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))))))))) (let ((.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)))) (.cse1 (select (select .cse4 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse3)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse2 (+ .cse3 v_arrayElimCell_42)) .cse1) (< 1 ~M~0))))) (not (= c_~B~0.base .cse5))))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse11 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (= c_~B~0.base .cse11) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (let ((.cse12 (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_291 4)) v_subst_10)))) (store .cse14 .cse11 (store (select .cse14 .cse11) v_arrayElimCell_39 (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 .cse12 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)) (select (select .cse12 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse11 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse13 v_arrayElimCell_40)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse20 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse17 (* ~b~0 4)) (.cse19 (let ((.cse22 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse22 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse21 .cse20 (store (select .cse21 .cse20) v_arrayElimCell_39 (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))))))))) (let ((.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)))) (.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18))))))) .cse23) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse26 (* ~b~0 4)) (.cse27 (let ((.cse30 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse25 (+ .cse26 v_arrayElimCell_42)) .cse24) (< 1 ~M~0)))))) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse31 (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_291 4)) v_subst_9)))) (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)))))))) (.cse32 (* ~b~0 4))) (= (select (select .cse31 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse32)) (select (select .cse31 (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))) (+ .cse32 v_arrayElimCell_42)))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse33))))) .cse36) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse41 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse40 (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_291 4)) v_subst_4)))) (store .cse42 .cse41 (store (select .cse42 .cse41) v_arrayElimCell_39 (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)))))))) (.cse39 (* ~b~0 4))) (let ((.cse37 (select (select .cse40 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse39))) (.cse38 (select .cse40 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse41 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse37 (select .cse38 (+ .cse39 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= .cse37 (select .cse38 (+ .cse39 v_arrayElimCell_40))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse41)))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse46 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse44 (let ((.cse48 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse47 (store |c_#memory_int| c_~A~0.base (store .cse48 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_5)))) (store .cse47 .cse46 (store (select .cse47 .cse46) v_arrayElimCell_40 (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)))))))) (.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) .cse46 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse45 v_arrayElimCell_41)))) (< 1 ~M~0))) (not (= c_~B~0.base .cse46))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse53 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 ((.cse50 (* ~b~0 4)) (.cse52 (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_291 4)) v_subst_2)))) (store .cse54 .cse53 (store (select .cse54 .cse53) v_arrayElimCell_39 (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))))))))) (let ((.cse49 (select .cse52 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse53 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse51 (select (select .cse52 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse50)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse49 (+ .cse50 v_arrayElimCell_42)) .cse51) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse49 (+ .cse50 v_arrayElimCell_41)) .cse51) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse53))))) (forall ((v_ArrVal_1109 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int)) (let ((.cse57 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse56 (let ((.cse60 (store .cse8 .cse9 |thread1Thread1of1ForFork0_#t~mem2|))) (let ((.cse59 (store |c_#memory_int| c_~A~0.base (store .cse60 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse59 .cse57 (store (select .cse59 .cse57) 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)))))))) (.cse58 (* ~b~0 4))) (= (select (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))) (+ .cse58 v_arrayElimCell_41)) (select (select .cse56 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse58)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse57))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 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) .cse10))) (let ((.cse64 (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_291 4)) v_subst_7)))) (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)))))))) (.cse63 (* ~b~0 4))) (let ((.cse61 (select (select .cse64 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse63))) (.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))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse61 (select .cse62 (+ .cse63 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= (select .cse62 (+ .cse63 v_arrayElimCell_40)) .cse61) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= .cse61 (select .cse62 (+ .cse63 v_arrayElimCell_41)))))))) (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 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_291 4)) v_subst_12)))) (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_40)))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse70)))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int 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_291 4)) v_subst_13)))) (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)))))))) (.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 (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_40))) (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse73 (select .cse74 (+ .cse75 v_arrayElimCell_41))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))))) .cse23) (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (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_291 4)) v_subst_3)))) (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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse80 (+ .cse81 v_arrayElimCell_42)) .cse82) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse80 (+ .cse81 v_arrayElimCell_40)) .cse82) (< 1 ~M~0))))) (= c_~B~0.base .cse84)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse91 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse90 (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_291 4)) v_subst_6)))) (store .cse92 .cse91 (store (select .cse92 .cse91) 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)))))))) (.cse89 (* ~b~0 4))) (let ((.cse87 (select (select .cse90 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse89))) (.cse88 (select .cse90 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse91 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= .cse87 (select .cse88 (+ .cse89 v_arrayElimCell_41))) (< 1 ~M~0)))))) (or .cse36 (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 ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (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_291 4)) v_subst_1)))) (store .cse97 .cse95 (store (select .cse97 .cse95) 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)))))))) (.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_42)) (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) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 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_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (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_291 4)) v_subst_2)))) (store .cse104 .cse103 (store (select .cse104 .cse103) v_arrayElimCell_39 (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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse99 (+ .cse100 v_arrayElimCell_42)) .cse101) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= (select .cse99 (+ .cse100 v_arrayElimCell_41)) .cse101) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))))))))) is different from true [2024-04-04 19:46:27,715 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse106 (* c_thread1Thread1of1ForFork0_~i~0 4)) (.cse23 (= c_~B~0.base c_~A~0.base))) (let ((.cse79 (not .cse23)) (.cse0 (+ 2 c_thread1Thread1of1ForFork0_~i~0)) (.cse8 (store (select |c_#memory_int| c_~A~0.base) (+ c_~A~0.offset .cse106) |c_thread1Thread1of1ForFork0_#t~mem2|)) (.cse9 (+ c_~A~0.offset 4 .cse106)) (.cse10 (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset))) (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_20 Int)) (let ((.cse5 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 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 v_subst_20))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse7 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 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)))))))) (.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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_42))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse1 (select .cse2 (+ .cse3 v_arrayElimCell_41))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (not (= c_~B~0.base .cse5))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_21 Int)) (let ((.cse12 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (v_subst_14 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse11 (let ((.cse15 (store .cse8 .cse9 v_subst_21))) (let ((.cse14 (store |c_#memory_int| c_~A~0.base (store .cse15 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_14)))) (store .cse14 .cse12 (store (select .cse14 .cse12) v_arrayElimCell_39 (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_41)) (select (select .cse11 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse13)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (not (= c_~B~0.base .cse12))))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_30 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_subst_7 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) .cse10))) (let ((.cse17 (* ~b~0 4)) (.cse19 (let ((.cse22 (store .cse8 .cse9 v_subst_30))) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse22 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_7)))) (store .cse21 .cse20 (store (select .cse21 .cse20) v_arrayElimCell_39 (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))))))))) (let ((.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)))) (.cse18 (select (select .cse19 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse17)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_40)) .cse18) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (= (select .cse16 (+ .cse17 v_arrayElimCell_41)) .cse18) (= (select .cse16 (+ .cse17 v_arrayElimCell_42)) .cse18)))))) (or .cse23 (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_subst_13 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_16 Int) (v_ArrVal_1110 (Array Int Int))) (let ((.cse28 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse27 (let ((.cse30 (store .cse8 .cse9 v_subst_16))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse30 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_13)))) (store .cse29 .cse28 (store (select .cse29 .cse28) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse30) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse26 (* ~b~0 4))) (let ((.cse24 (select (select .cse27 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse26))) (.cse25 (select .cse27 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse28 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_40)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_17 Int)) (let ((.cse32 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_12 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse31 (let ((.cse35 (store .cse8 .cse9 v_subst_17))) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse35 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_12)))) (store .cse34 .cse32 (store (select .cse34 .cse32) 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)))))))) (.cse33 (* ~b~0 4))) (= (select (select .cse31 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse32 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse33 v_arrayElimCell_40)) (select (select .cse31 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse33)))) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))) (= c_~B~0.base .cse32)))))) (or .cse23 (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_22 Int)) (let ((.cse38 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_10 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse36 (let ((.cse40 (store .cse8 .cse9 v_subst_22))) (let ((.cse39 (store |c_#memory_int| c_~A~0.base (store .cse40 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_10)))) (store .cse39 .cse38 (store (select .cse39 .cse38) 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)))))))) (.cse37 (* ~b~0 4))) (= (select (select .cse36 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse37)) (select (select .cse36 (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))) (+ .cse37 v_arrayElimCell_40)))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))) (= 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_subst_23 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_11 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (v_arrayElimCell_39 Int) (~M~0 Int)) (let ((.cse45 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse42 (* ~b~0 4)) (.cse44 (let ((.cse47 (store .cse8 .cse9 v_subst_23))) (let ((.cse46 (store |c_#memory_int| c_~A~0.base (store .cse47 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_11)))) (store .cse46 .cse45 (store (select .cse46 .cse45) 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))))))))) (let ((.cse41 (select .cse44 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse45 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse43 (select (select .cse44 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse42)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse41 (+ .cse42 v_arrayElimCell_40)) .cse43) (< ~M~0 (+ ~b~0 1)) (= (select .cse41 (+ .cse42 v_arrayElimCell_41)) .cse43) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_28 Int)) (let ((.cse52 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_8 Int) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (let ((.cse49 (* ~b~0 4)) (.cse51 (let ((.cse54 (store .cse8 .cse9 v_subst_28))) (let ((.cse53 (store |c_#memory_int| c_~A~0.base (store .cse54 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse53 .cse52 (store (select .cse53 .cse52) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse54) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse48 (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)))) (.cse50 (select (select .cse51 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse49)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= (select .cse48 (+ .cse49 v_arrayElimCell_41)) .cse50) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse48 (+ .cse49 v_arrayElimCell_42)) .cse50) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))) (not (= c_~B~0.base .cse52))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_15 Int)) (let ((.cse55 (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 .cse55)) (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_5 Int) (v_ArrVal_1110 (Array Int Int))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (let ((.cse56 (let ((.cse59 (store .cse8 .cse9 v_subst_15))) (let ((.cse58 (store |c_#memory_int| c_~A~0.base (store .cse59 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_5)))) (store .cse58 .cse55 (store (select .cse58 .cse55) v_arrayElimCell_40 (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)))))))) (.cse57 (* ~b~0 4))) (= (select (select .cse56 (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))) (+ .cse57 v_arrayElimCell_41)) (select (select .cse56 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse57)))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0)))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_25 Int)) (let ((.cse64 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_3 Int) (v_arrayElimCell_42 Int)) (let ((.cse61 (* ~b~0 4)) (.cse63 (let ((.cse66 (store .cse8 .cse9 v_subst_25))) (let ((.cse65 (store |c_#memory_int| c_~A~0.base (store .cse66 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_3)))) (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))))))))) (let ((.cse60 (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)))) (.cse62 (select (select .cse63 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse61)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse60 (+ .cse61 v_arrayElimCell_40)) .cse62) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse60 (+ .cse61 v_arrayElimCell_42)) .cse62) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))) (= c_~B~0.base .cse64)))) (or (and (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_18 Int)) (let ((.cse68 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 Int) (v_subst_9 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (let ((.cse67 (let ((.cse71 (store .cse8 .cse9 v_subst_18))) (let ((.cse70 (store |c_#memory_int| c_~A~0.base (store .cse71 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_9)))) (store .cse70 .cse68 (store (select .cse70 .cse68) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse71) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (.cse69 (* ~b~0 4))) (= (select (select .cse67 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse68 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse69 v_arrayElimCell_42)) (select (select .cse67 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse69)))) (< 1 ~M~0))) (= c_~B~0.base .cse68)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_subst_19 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~M~0 Int) (v_subst_8 Int) (v_arrayElimCell_42 Int)) (let ((.cse76 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse73 (* ~b~0 4)) (.cse75 (let ((.cse78 (store .cse8 .cse9 v_subst_19))) (let ((.cse77 (store |c_#memory_int| c_~A~0.base (store .cse78 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_8)))) (store .cse77 .cse76 (store (select .cse77 .cse76) v_arrayElimCell_40 (select (select (store |c_#memory_int| c_~A~0.base .cse78) c_~F~0.base) (+ c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))))) (let ((.cse72 (select .cse75 (select (select (store (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1110) .cse76 v_ArrVal_1115) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse74 (select (select .cse75 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse73)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse72 (+ .cse73 v_arrayElimCell_41)) .cse74) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse72 (+ .cse73 v_arrayElimCell_42)) .cse74) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))))) .cse79) (or .cse79 (and (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) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_ArrVal_1115 (Array Int Int)) (v_ArrVal_1110 (Array Int Int)) (v_subst_1 Int) (v_arrayElimCell_42 Int)) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0) (let ((.cse80 (let ((.cse84 (store .cse8 .cse9 v_subst_26))) (let ((.cse83 (store |c_#memory_int| c_~A~0.base (store .cse84 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_1)))) (store .cse83 .cse81 (store (select .cse83 .cse81) v_arrayElimCell_39 (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_42)) (select (select .cse80 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse82)))))) (= c_~B~0.base .cse81)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_27 Int) (v_ArrVal_1110 (Array Int Int)) (v_subst_2 Int) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (v_arrayElimCell_39 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse89 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse88 (let ((.cse91 (store .cse8 .cse9 v_subst_27))) (let ((.cse90 (store |c_#memory_int| c_~A~0.base (store .cse91 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_2)))) (store .cse90 .cse89 (store (select .cse90 .cse89) 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)))))))) (.cse87 (* ~b~0 4))) (let ((.cse85 (select (select .cse88 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse87))) (.cse86 (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))))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (< ~a~0 0) (= .cse85 (select .cse86 (+ .cse87 v_arrayElimCell_41))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse85 (select .cse86 (+ .cse87 v_arrayElimCell_42))) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0)))))))) (forall ((v_ArrVal_1109 (Array Int Int)) (v_subst_24 Int)) (let ((.cse96 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (or (forall ((v_thread1Thread1of1ForFork0_~i~0_291 Int) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_40 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)) (let ((.cse93 (* ~b~0 4)) (.cse95 (let ((.cse98 (store .cse8 .cse9 v_subst_24))) (let ((.cse97 (store |c_#memory_int| c_~A~0.base (store .cse98 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 4)) v_subst_4)))) (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))))))))) (let ((.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)))) (.cse94 (select (select .cse95 c_~A~0.base) (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse93)))) (or (< ~b~0 0) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= (select .cse92 (+ .cse93 v_arrayElimCell_42)) .cse94) (= (select .cse92 (+ .cse93 v_arrayElimCell_40)) .cse94) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< 1 ~M~0))))) (= c_~B~0.base .cse96)))) (forall ((v_ArrVal_1109 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_arrayElimCell_41 Int) (v_arrayElimCell_40 Int) (v_ArrVal_1115 (Array Int Int)) (v_subst_29 Int) (v_subst_6 Int) (v_ArrVal_1110 (Array Int Int)) (v_thread1Thread1of1ForFork0_~i~0_291 Int) (~M~0 Int) (v_arrayElimCell_42 Int)) (let ((.cse103 (select (select (store |c_#memory_$Pointer$.base| c_~A~0.base v_ArrVal_1109) c_~B~0.base) .cse10))) (let ((.cse101 (* ~b~0 4)) (.cse102 (let ((.cse105 (store .cse8 .cse9 v_subst_29))) (let ((.cse104 (store |c_#memory_int| c_~A~0.base (store .cse105 (+ c_~A~0.offset (* v_thread1Thread1of1ForFork0_~i~0_291 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) (< v_thread1Thread1of1ForFork0_~i~0_291 .cse0) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_40))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse99 (select .cse100 (+ .cse101 v_arrayElimCell_41))) (= (select .cse100 (+ .cse101 v_arrayElimCell_42)) .cse99) (< ~M~0 (+ ~b~0 1)) (< 1 ~M~0))))))))) is different from true [2024-04-04 19:46:28,760 INFO L349 Elim1Store]: treesize reduction 8, result has 97.6 percent of original size [2024-04-04 19:46:28,765 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 5 select indices, 5 select index equivalence classes, 1 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 10 case distinctions, treesize of input 99134075 treesize of output 88361919 [2024-04-04 19:48:38,081 WARN L293 SmtUtils]: Spent 2.15m on a formula simplification. DAG size of input: 3514 DAG size of output: 1085 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-04-04 19:48:47,966 WARN L293 SmtUtils]: Spent 8.46s on a formula simplification. DAG size of input: 702 DAG size of output: 746 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-04-04 19:49:38,065 WARN L293 SmtUtils]: Spent 10.65s on a formula simplification. DAG size of input: 699 DAG size of output: 772 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-04-04 19:52:15,092 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-04 19:52:15,093 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-04 19:52:15,093 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-04-04 19:52:15,093 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [738135724] [2024-04-04 19:52:15,093 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-04-04 19:52:15,096 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [289416174] [2024-04-04 19:52:15,096 WARN L320 FreeRefinementEngine]: Global settings require throwing the following exception [2024-04-04 19:52:15,107 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-04 19:52:15,299 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-04 19:52:15,300 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-04 19:52:15,304 INFO L158 Benchmark]: Toolchain (without parser) took 408644.78ms. Allocated memory was 248.5MB in the beginning and 1.2GB in the end (delta: 957.3MB). Free memory was 176.4MB in the beginning and 892.8MB in the end (delta: -716.3MB). Peak memory consumption was 721.0MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,304 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 152.0MB. Free memory is still 119.2MB. There was no memory consumed. Max. memory is 8.0GB. [2024-04-04 19:52:15,304 INFO L158 Benchmark]: CACSL2BoogieTranslator took 224.09ms. Allocated memory is still 248.5MB. Free memory was 176.2MB in the beginning and 164.1MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,304 INFO L158 Benchmark]: Boogie Procedure Inliner took 37.56ms. Allocated memory is still 248.5MB. Free memory was 164.1MB in the beginning and 161.9MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,306 INFO L158 Benchmark]: Boogie Preprocessor took 27.53ms. Allocated memory is still 248.5MB. Free memory was 161.9MB in the beginning and 159.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,306 INFO L158 Benchmark]: RCFGBuilder took 527.56ms. Allocated memory is still 248.5MB. Free memory was 159.8MB in the beginning and 195.7MB in the end (delta: -35.8MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,306 INFO L158 Benchmark]: TraceAbstraction took 407821.69ms. Allocated memory was 248.5MB in the beginning and 1.2GB in the end (delta: 957.3MB). Free memory was 194.6MB in the beginning and 892.8MB in the end (delta: -698.2MB). Peak memory consumption was 737.7MB. Max. memory is 8.0GB. [2024-04-04 19:52:15,311 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 152.0MB. Free memory is still 119.2MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 224.09ms. Allocated memory is still 248.5MB. Free memory was 176.2MB in the beginning and 164.1MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 37.56ms. Allocated memory is still 248.5MB. Free memory was 164.1MB in the beginning and 161.9MB in the end (delta: 2.2MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 27.53ms. Allocated memory is still 248.5MB. Free memory was 161.9MB in the beginning and 159.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 527.56ms. Allocated memory is still 248.5MB. Free memory was 159.8MB in the beginning and 195.7MB in the end (delta: -35.8MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. * TraceAbstraction took 407821.69ms. Allocated memory was 248.5MB in the beginning and 1.2GB in the end (delta: 957.3MB). Free memory was 194.6MB in the beginning and 892.8MB in the end (delta: -698.2MB). Peak memory consumption was 737.7MB. 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-04 19:52:15,341 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...