/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --traceabstraction.prune.known.deadend.states.from.previous.iterations false -s ../../../trunk/examples/settings/gemcutter/NewStatesSleep.epf --traceabstraction.cegar.restart.behaviour ONE_CEGAR_PER_ERROR_LOCATION --traceabstraction.number.of.independence.relations.to.use.for.por 2 --traceabstraction.abstraction.used.for.commutativity.in.por VARIABLES_GLOBAL '--traceabstraction.abstraction.used.for.commutativity.in.por.#2' NONE -tc ../../../trunk/examples/toolchains/AutomizerCInline.xml -i ../../../trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c -------------------------------------------------------------------------------- This is Ultimate 0.2.4-wip.dk.dynamic-abstractions-57af04c-m [2024-01-26 12:03:27,838 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-26 12:03:27,874 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/settings/gemcutter/NewStatesSleep.epf [2024-01-26 12:03:27,877 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-26 12:03:27,878 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-26 12:03:27,890 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-26 12:03:27,891 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-26 12:03:27,891 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-26 12:03:27,891 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-26 12:03:27,891 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-26 12:03:27,892 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-26 12:03:27,892 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-26 12:03:27,892 INFO L153 SettingsManager]: * Use SBE=true [2024-01-26 12:03:27,893 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-26 12:03:27,893 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-26 12:03:27,893 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-26 12:03:27,893 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-26 12:03:27,893 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-26 12:03:27,894 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-26 12:03:27,894 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-26 12:03:27,894 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-26 12:03:27,894 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-26 12:03:27,895 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-26 12:03:27,895 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-26 12:03:27,895 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-26 12:03:27,907 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-26 12:03:27,907 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-26 12:03:27,907 INFO L153 SettingsManager]: * To the following directory=./dump/ [2024-01-26 12:03:27,907 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-26 12:03:27,907 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-01-26 12:03:27,908 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-26 12:03:27,908 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-26 12:03:27,908 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-26 12:03:27,908 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-26 12:03:27,909 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-26 12:03:27,909 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-26 12:03:27,909 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-01-26 12:03:27,909 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-26 12:03:27,909 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=SLEEP_NEW_STATES [2024-01-26 12:03:27,909 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: Prune known deadend states from previous iterations -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: CEGAR restart behaviour -> ONE_CEGAR_PER_ERROR_LOCATION Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Number of independence relations to use for POR -> 2 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Abstraction used for commutativity in POR -> VARIABLES_GLOBAL Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Abstraction used for commutativity in POR #2 -> NONE [2024-01-26 12:03:28,105 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-26 12:03:28,120 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-26 12:03:28,122 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-26 12:03:28,123 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-26 12:03:28,123 INFO L274 PluginConnector]: CDTParser initialized [2024-01-26 12:03:28,124 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-01-26 12:03:29,148 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-26 12:03:29,307 INFO L384 CDTParser]: Found 1 translation units. [2024-01-26 12:03:29,307 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/loop-tiling-eq.wvr.c [2024-01-26 12:03:29,312 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/7e6f835ea/20911bcccd1f4a8aa224a52ca4bcce74/FLAGafe9850ff [2024-01-26 12:03:29,322 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/7e6f835ea/20911bcccd1f4a8aa224a52ca4bcce74 [2024-01-26 12:03:29,323 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-26 12:03:29,324 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-26 12:03:29,325 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-26 12:03:29,326 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-26 12:03:29,329 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-26 12:03:29,329 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,330 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@63ab9882 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29, skipping insertion in model container [2024-01-26 12:03:29,330 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,348 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-26 12:03:29,472 WARN L239 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[2644,2657] [2024-01-26 12:03:29,481 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-26 12:03:29,488 INFO L202 MainTranslator]: Completed pre-run [2024-01-26 12:03:29,515 WARN L239 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[2644,2657] [2024-01-26 12:03:29,518 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-26 12:03:29,528 INFO L206 MainTranslator]: Completed translation [2024-01-26 12:03:29,529 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29 WrapperNode [2024-01-26 12:03:29,529 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-26 12:03:29,530 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-01-26 12:03:29,530 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-01-26 12:03:29,530 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-01-26 12:03:29,538 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,544 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,564 INFO L138 Inliner]: procedures = 25, calls = 41, calls flagged for inlining = 13, calls inlined = 17, statements flattened = 196 [2024-01-26 12:03:29,565 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-01-26 12:03:29,565 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-01-26 12:03:29,565 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-01-26 12:03:29,566 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-01-26 12:03:29,581 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,582 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,585 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,585 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,594 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,597 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,599 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,609 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,611 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-01-26 12:03:29,612 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-01-26 12:03:29,616 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-01-26 12:03:29,616 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-01-26 12:03:29,617 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (1/1) ... [2024-01-26 12:03:29,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-01-26 12:03:29,635 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:29,644 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-01-26 12:03:29,717 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-01-26 12:03:29,732 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-01-26 12:03:29,732 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2024-01-26 12:03:29,732 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-01-26 12:03:29,732 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-01-26 12:03:29,733 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-01-26 12:03:29,733 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-01-26 12:03:29,733 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-01-26 12:03:29,733 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-01-26 12:03:29,734 WARN L213 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-01-26 12:03:29,861 INFO L241 CfgBuilder]: Building ICFG [2024-01-26 12:03:29,863 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2024-01-26 12:03:30,346 INFO L282 CfgBuilder]: Performing block encoding [2024-01-26 12:03:30,368 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-01-26 12:03:30,368 INFO L309 CfgBuilder]: Removed 7 assume(true) statements. [2024-01-26 12:03:30,369 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.01 12:03:30 BoogieIcfgContainer [2024-01-26 12:03:30,369 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-01-26 12:03:30,375 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-01-26 12:03:30,375 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-01-26 12:03:30,378 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-01-26 12:03:30,392 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 26.01 12:03:29" (1/3) ... [2024-01-26 12:03:30,393 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28d06c2e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 26.01 12:03:30, skipping insertion in model container [2024-01-26 12:03:30,393 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 26.01 12:03:29" (2/3) ... [2024-01-26 12:03:30,394 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@28d06c2e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 26.01 12:03:30, skipping insertion in model container [2024-01-26 12:03:30,394 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.01 12:03:30" (3/3) ... [2024-01-26 12:03:30,396 INFO L112 eAbstractionObserver]: Analyzing ICFG loop-tiling-eq.wvr.c [2024-01-26 12:03:30,423 WARN L146 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-01-26 12:03:30,430 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-01-26 12:03:30,441 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-01-26 12:03:30,441 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-01-26 12:03:30,584 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-01-26 12:03:30,671 INFO L103 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=VARIABLES_GLOBAL, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-01-26 12:03:30,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-01-26 12:03:30,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:30,684 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-01-26 12:03:30,722 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-01-26 12:03:30,772 INFO L103 denceProviderFactory]: Independence Relation #2: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-01-26 12:03:30,781 INFO L166 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 2 independence relations. [2024-01-26 12:03:30,781 WARN L169 artialOrderCegarLoop]: Attention: Unsuitable combinations of independence relations may be unsound! [2024-01-26 12:03:30,782 WARN L170 artialOrderCegarLoop]: Only combine independence relations if you are sure the combination is sound. [2024-01-26 12:03:30,803 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION ======== [2024-01-26 12:03:30,808 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;@25e875c6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-01-26 12:03:30,808 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-01-26 12:03:31,413 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:31,417 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:31,417 INFO L85 PathProgramCache]: Analyzing trace with hash 500553751, now seen corresponding path program 1 times [2024-01-26 12:03:31,426 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:31,427 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1152645171] [2024-01-26 12:03:31,427 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:31,428 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:31,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:31,599 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:31,599 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1152645171] [2024-01-26 12:03:31,599 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: Unsupported non-linear arithmetic [2024-01-26 12:03:31,600 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1853265053] [2024-01-26 12:03:31,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:31,600 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:31,600 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:31,653 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-01-26 12:03:31,696 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-01-26 12:03:31,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:31,935 INFO L262 TraceCheckSpWp]: Trace formula consists of 482 conjuncts, 1 conjunts are in the unsatisfiable core [2024-01-26 12:03:31,943 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:31,986 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2024-01-26 12:03:31,986 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-01-26 12:03:31,986 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1853265053] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-26 12:03:31,987 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-26 12:03:31,987 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-01-26 12:03:31,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2142716989] [2024-01-26 12:03:31,999 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-26 12:03:32,022 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-01-26 12:03:32,022 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:32,051 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-01-26 12:03:32,052 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-01-26 12:03:32,052 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:32,055 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:32,065 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 101.5) internal successors, (203), 2 states have internal predecessors, (203), 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-01-26 12:03:32,065 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:32,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:32,234 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2024-01-26 12:03:32,418 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-01-26 12:03:32,419 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:32,419 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:32,419 INFO L85 PathProgramCache]: Analyzing trace with hash 225051150, now seen corresponding path program 1 times [2024-01-26 12:03:32,420 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:32,420 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [738810977] [2024-01-26 12:03:32,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:32,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:32,446 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:32,446 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [693796516] [2024-01-26 12:03:32,446 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:32,447 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:32,447 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:32,470 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-01-26 12:03:32,514 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-01-26 12:03:32,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:32,714 INFO L262 TraceCheckSpWp]: Trace formula consists of 462 conjuncts, 6 conjunts are in the unsatisfiable core [2024-01-26 12:03:32,742 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:33,024 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-01-26 12:03:33,025 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-01-26 12:03:33,025 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:33,025 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [738810977] [2024-01-26 12:03:33,025 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:03:33,026 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [693796516] [2024-01-26 12:03:33,026 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [693796516] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-26 12:03:33,026 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-26 12:03:33,026 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-01-26 12:03:33,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2038921281] [2024-01-26 12:03:33,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-26 12:03:33,029 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-01-26 12:03:33,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:33,031 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-01-26 12:03:33,031 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-01-26 12:03:33,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,032 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:33,033 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 27.714285714285715) internal successors, (194), 7 states have internal predecessors, (194), 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-01-26 12:03:33,033 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,033 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,415 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:33,435 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-01-26 12:03:33,622 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-01-26 12:03:33,622 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:33,622 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:33,623 INFO L85 PathProgramCache]: Analyzing trace with hash 1683071428, now seen corresponding path program 1 times [2024-01-26 12:03:33,623 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:33,623 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [588315839] [2024-01-26 12:03:33,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:33,623 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:33,648 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:33,649 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1178970692] [2024-01-26 12:03:33,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:33,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:33,649 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:33,667 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-01-26 12:03:33,712 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-01-26 12:03:33,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:33,893 INFO L262 TraceCheckSpWp]: Trace formula consists of 506 conjuncts, 4 conjunts are in the unsatisfiable core [2024-01-26 12:03:33,896 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:33,949 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-01-26 12:03:33,950 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-01-26 12:03:33,950 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:33,950 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [588315839] [2024-01-26 12:03:33,950 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:03:33,950 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1178970692] [2024-01-26 12:03:33,951 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1178970692] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-26 12:03:33,952 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-26 12:03:33,952 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-01-26 12:03:33,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1382044874] [2024-01-26 12:03:33,953 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-26 12:03:33,955 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-01-26 12:03:33,955 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:33,956 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-01-26 12:03:33,957 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-01-26 12:03:33,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,958 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:33,962 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 42.2) internal successors, (211), 5 states have internal predecessors, (211), 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-01-26 12:03:33,962 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:33,962 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:33,962 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:34,126 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:34,126 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:34,127 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:34,136 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2024-01-26 12:03:34,333 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-01-26 12:03:34,334 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:34,334 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:34,334 INFO L85 PathProgramCache]: Analyzing trace with hash 943708296, now seen corresponding path program 1 times [2024-01-26 12:03:34,334 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:34,335 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [10308762] [2024-01-26 12:03:34,335 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:34,335 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:34,391 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:34,391 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1305073781] [2024-01-26 12:03:34,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:34,391 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:34,391 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:34,397 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-01-26 12:03:34,443 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-01-26 12:03:34,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:34,663 INFO L262 TraceCheckSpWp]: Trace formula consists of 578 conjuncts, 6 conjunts are in the unsatisfiable core [2024-01-26 12:03:34,667 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:34,800 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-01-26 12:03:34,801 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-01-26 12:03:34,801 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:34,801 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [10308762] [2024-01-26 12:03:34,801 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:03:34,801 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1305073781] [2024-01-26 12:03:34,801 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1305073781] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-26 12:03:34,801 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-26 12:03:34,802 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-01-26 12:03:34,802 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [192199138] [2024-01-26 12:03:34,802 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-26 12:03:34,802 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-01-26 12:03:34,802 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:34,804 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-01-26 12:03:34,804 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-01-26 12:03:34,804 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:34,804 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:34,804 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 34.714285714285715) internal successors, (243), 7 states have internal predecessors, (243), 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-01-26 12:03:34,805 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:34,805 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:34,805 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:34,805 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:35,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:35,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:35,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:35,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:35,143 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-01-26 12:03:35,321 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-01-26 12:03:35,322 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:35,322 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:35,322 INFO L85 PathProgramCache]: Analyzing trace with hash 1548968123, now seen corresponding path program 1 times [2024-01-26 12:03:35,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:35,322 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1755670216] [2024-01-26 12:03:35,323 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:35,323 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:35,388 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:35,388 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1372277589] [2024-01-26 12:03:35,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:35,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:35,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:35,393 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-01-26 12:03:35,438 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-01-26 12:03:35,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:35,592 INFO L262 TraceCheckSpWp]: Trace formula consists of 594 conjuncts, 8 conjunts are in the unsatisfiable core [2024-01-26 12:03:35,595 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:35,691 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 14 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-01-26 12:03:35,692 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-01-26 12:03:35,899 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 15 proven. 21 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-01-26 12:03:35,899 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:35,899 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1755670216] [2024-01-26 12:03:35,899 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:03:35,899 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1372277589] [2024-01-26 12:03:35,899 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1372277589] provided 0 perfect and 2 imperfect interpolant sequences [2024-01-26 12:03:35,899 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-01-26 12:03:35,900 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2024-01-26 12:03:35,900 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [880922088] [2024-01-26 12:03:35,900 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-01-26 12:03:35,900 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-01-26 12:03:35,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:35,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-01-26 12:03:35,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2024-01-26 12:03:35,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:35,912 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:35,912 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 21.615384615384617) internal successors, (281), 13 states have internal predecessors, (281), 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-01-26 12:03:35,912 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:35,912 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:35,912 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:35,912 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:35,912 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:36,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:36,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:36,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:36,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:36,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-01-26 12:03:36,423 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-01-26 12:03:36,619 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-01-26 12:03:36,620 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:36,620 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:36,620 INFO L85 PathProgramCache]: Analyzing trace with hash -1876722263, now seen corresponding path program 1 times [2024-01-26 12:03:36,621 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:36,621 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [191569335] [2024-01-26 12:03:36,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:36,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:36,676 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:36,676 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [31749950] [2024-01-26 12:03:36,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:36,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:36,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:36,690 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-01-26 12:03:36,730 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-01-26 12:03:36,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-26 12:03:36,912 INFO L262 TraceCheckSpWp]: Trace formula consists of 600 conjuncts, 10 conjunts are in the unsatisfiable core [2024-01-26 12:03:36,915 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:37,130 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-01-26 12:03:37,131 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-01-26 12:03:37,492 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-01-26 12:03:37,492 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:03:37,492 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [191569335] [2024-01-26 12:03:37,492 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:03:37,492 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [31749950] [2024-01-26 12:03:37,492 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [31749950] provided 0 perfect and 2 imperfect interpolant sequences [2024-01-26 12:03:37,501 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-01-26 12:03:37,501 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2024-01-26 12:03:37,501 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1398446158] [2024-01-26 12:03:37,501 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-01-26 12:03:37,502 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-01-26 12:03:37,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-26 12:03:37,503 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-01-26 12:03:37,503 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=264, Unknown=0, NotChecked=0, Total=342 [2024-01-26 12:03:37,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:37,504 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-01-26 12:03:37,504 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 15.789473684210526) internal successors, (300), 19 states have internal predecessors, (300), 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-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 18 states. [2024-01-26 12:03:37,504 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:38,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-01-26 12:03:38,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:38,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-01-26 12:03:38,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-01-26 12:03:38,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-01-26 12:03:38,163 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2024-01-26 12:03:38,192 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2024-01-26 12:03:38,370 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-01-26 12:03:38,370 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-01-26 12:03:38,370 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-26 12:03:38,371 INFO L85 PathProgramCache]: Analyzing trace with hash 1683309919, now seen corresponding path program 2 times [2024-01-26 12:03:38,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-26 12:03:38,371 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [720784849] [2024-01-26 12:03:38,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-26 12:03:38,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-26 12:03:38,415 ERROR L246 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2024-01-26 12:03:38,417 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [939852303] [2024-01-26 12:03:38,417 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-01-26 12:03:38,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-01-26 12:03:38,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-01-26 12:03:38,420 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-01-26 12:03:38,470 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-01-26 12:03:39,118 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-01-26 12:03:39,118 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-01-26 12:03:39,125 INFO L262 TraceCheckSpWp]: Trace formula consists of 644 conjuncts, 113 conjunts are in the unsatisfiable core [2024-01-26 12:03:39,145 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-01-26 12:03:39,287 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-01-26 12:03:39,529 INFO L349 Elim1Store]: treesize reduction 18, result has 35.7 percent of original size [2024-01-26 12:03:39,530 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 2 case distinctions, treesize of input 17 treesize of output 21 [2024-01-26 12:03:39,904 INFO L349 Elim1Store]: treesize reduction 36, result has 34.5 percent of original size [2024-01-26 12:03:39,905 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 22 treesize of output 33 [2024-01-26 12:03:40,443 INFO L349 Elim1Store]: treesize reduction 12, result has 52.0 percent of original size [2024-01-26 12:03:40,443 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 3 case distinctions, treesize of input 21 treesize of output 25 [2024-01-26 12:03:40,911 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 5 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-01-26 12:03:41,056 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-01-26 12:03:41,057 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-01-26 12:03:41,638 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-01-26 12:03:41,639 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-01-26 12:03:42,123 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 16 treesize of output 11 [2024-01-26 12:03:42,128 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-01-26 12:03:42,139 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 15 treesize of output 15 [2024-01-26 12:03:42,591 INFO L349 Elim1Store]: treesize reduction 7, result has 12.5 percent of original size [2024-01-26 12:03:42,592 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 1 case distinctions, treesize of input 47 treesize of output 48 [2024-01-26 12:03:42,616 INFO L349 Elim1Store]: treesize reduction 19, result has 20.8 percent of original size [2024-01-26 12:03:42,616 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 75 [2024-01-26 12:03:42,623 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 44 treesize of output 31 [2024-01-26 12:03:42,792 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 60 treesize of output 49 [2024-01-26 12:03:42,809 INFO L349 Elim1Store]: treesize reduction 33, result has 17.5 percent of original size [2024-01-26 12:03:42,809 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 2 case distinctions, treesize of input 62 treesize of output 51 [2024-01-26 12:03:42,815 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 36 treesize of output 31 [2024-01-26 12:03:44,953 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 59 treesize of output 39 [2024-01-26 12:03:44,961 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 31 treesize of output 23 [2024-01-26 12:03:45,086 INFO L349 Elim1Store]: treesize reduction 15, result has 40.0 percent of original size [2024-01-26 12:03:45,087 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 6 select indices, 6 select index equivalence classes, 3 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 3 case distinctions, treesize of input 53 treesize of output 22 [2024-01-26 12:03:45,203 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2024-01-26 12:03:45,204 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-01-26 12:03:49,899 WARN L854 $PredicateComparison]: unable to prove that (forall ((~M~0 Int)) (or (< (+ c_thread2Thread1of1ForFork1_~j~0 1) ~M~0) (forall ((v_ArrVal_799 (Array Int Int)) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|thread1Thread1of1ForFork0_#t~mem2| Int) (v_ArrVal_795 (Array Int Int)) (v_ArrVal_797 (Array Int Int))) (or (< ~b~0 0) (let ((.cse2 (store |c_#memory_int| |c_thread2Thread1of1ForFork1_#t~mem5.base| (let ((.cse4 (* c_thread2Thread1of1ForFork1_~j~0 4))) (store (select |c_#memory_int| |c_thread2Thread1of1ForFork1_#t~mem5.base|) (+ .cse4 |c_thread2Thread1of1ForFork1_#t~mem5.offset|) (select (select |c_#memory_int| c_~F~0.base) (+ .cse4 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))))) (let ((.cse0 (store (select .cse2 c_~A~0.base) (+ c_~A~0.offset (* c_thread1Thread1of1ForFork0_~i~0 4)) |thread1Thread1of1ForFork0_#t~mem2|)) (.cse1 (* ~b~0 4))) (= (select .cse0 (+ c_~A~0.offset (* (* ~M~0 ~a~0) 4) .cse1)) (let ((.cse3 (+ (* ~a~0 4) c_~B~0.offset))) (select (select (store .cse2 c_~A~0.base .cse0) (select (select (store (store |c_#memory_$Pointer$.base| |c_thread2Thread1of1ForFork1_#t~mem5.base| v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) .cse3)) (+ .cse1 (select (select (store (store |c_#memory_$Pointer$.offset| |c_thread2Thread1of1ForFork1_#t~mem5.base| v_ArrVal_797) c_~A~0.base v_ArrVal_799) c_~B~0.base) .cse3))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)))))) is different from false [2024-01-26 12:04:37,323 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:04:37,324 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 1304 treesize of output 1208 [2024-01-26 12:04:37,335 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 602 treesize of output 596 [2024-01-26 12:04:37,342 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 1194 treesize of output 1182 [2024-01-26 12:04:43,356 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse6 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse35 (= .cse6 c_~B~0.base)) (.cse23 (= c_~B~0.base c_~A~0.base))) (let ((.cse12 (not .cse23)) (.cse0 (+ c_thread2Thread1of1ForFork1_~j~0 1)) (.cse9 (* c_thread2Thread1of1ForFork1_~j~0 4)) (.cse10 (select |c_#memory_int| c_~A~0.base)) (.cse11 (* c_thread1Thread1of1ForFork0_~i~0 4)) (.cse4 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse30 (not .cse35))) (and (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse8 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse7 (store (select .cse8 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse8 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse2 (* ~b~0 4)) (.cse5 (store (select (store .cse8 .cse6 .cse7) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse1 (select (store (store |c_#memory_int| .cse6 .cse7) c_~A~0.base .cse5) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse3 (select .cse5 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse2)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse1 (+ .cse2 v_arrayElimCell_35)) .cse3) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (= (select .cse1 (+ .cse2 v_arrayElimCell_37)) .cse3) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) .cse12) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (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 ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse18 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse17 (store (select .cse18 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse18 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse15 (* ~b~0 4)) (.cse16 (store (select (store .cse18 .cse6 .cse17) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse14 (select (store (store |c_#memory_int| .cse6 .cse17) c_~A~0.base .cse16) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse13 (select .cse16 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse15)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse13 (select .cse14 (+ .cse15 v_arrayElimCell_36)))) (= (select .cse14 (+ .cse15 v_arrayElimCell_35)) .cse13) (= (select .cse14 (+ .cse15 v_arrayElimCell_37)) .cse13))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4))) (or (and (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse21 (store (select .cse22 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse22 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse19 (store (select (store .cse22 .cse6 .cse21) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse20 (* ~b~0 4))) (= (select .cse19 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse20)) (select (select (store (store |c_#memory_int| .cse6 .cse21) c_~A~0.base .cse19) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse20 v_arrayElimCell_36)))))))) .cse23) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (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) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse28 (store (select .cse29 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse29 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse26 (* ~b~0 4)) (.cse27 (store (select (store .cse29 .cse6 .cse28) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse25 (select (store (store |c_#memory_int| .cse6 .cse28) c_~A~0.base .cse27) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse24 (select .cse27 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse26)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_36)))) (= (select .cse25 (+ .cse26 v_arrayElimCell_37)) .cse24))))))) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0)))))))))) .cse30) (or (and (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse31 (store (select .cse34 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse34 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse32 (store (select (store .cse34 .cse6 .cse31) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse33 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse6 .cse31) c_~A~0.base .cse32) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse33 v_arrayElimCell_35)) (select .cse32 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse33)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse35) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (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 ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse40 (store (select .cse41 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse41 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse38 (* ~b~0 4)) (.cse39 (store (select (store .cse41 .cse6 .cse40) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse37 (select (store (store |c_#memory_int| .cse6 .cse40) c_~A~0.base .cse39) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse36 (select .cse39 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse38)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse36 (select .cse37 (+ .cse38 v_arrayElimCell_36)))) (= (select .cse37 (+ .cse38 v_arrayElimCell_35)) .cse36))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4)))) .cse23) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (let ((.cse45 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse42 (store (select .cse45 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse45 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse43 (store (select (store .cse45 .cse6 .cse42) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse44 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse6 .cse42) c_~A~0.base .cse43) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse44 v_arrayElimCell_37)) (select .cse43 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse44)))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) .cse12) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse51 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse50 (store (select .cse51 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse51 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse47 (* ~b~0 4)) (.cse49 (store (select (store .cse51 .cse6 .cse50) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse46 (select (store (store |c_#memory_int| .cse6 .cse50) c_~A~0.base .cse49) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse48 (select .cse49 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse47)))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= (select .cse46 (+ .cse47 v_arrayElimCell_35)) .cse48) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (= (select .cse46 (+ .cse47 v_arrayElimCell_37)) .cse48))))))) .cse12) (or .cse23 (and (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse55 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse52 (store (select .cse55 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse55 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse53 (store (select (store .cse55 .cse6 .cse52) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse54 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse6 .cse52) c_~A~0.base .cse53) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse54 v_arrayElimCell_35)) (select .cse53 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse54)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4))) .cse35) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse61 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse60 (store (select .cse61 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse61 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse58 (* ~b~0 4)) (.cse59 (store (select (store .cse61 .cse6 .cse60) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse57 (select (store (store |c_#memory_int| .cse6 .cse60) c_~A~0.base .cse59) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse56 (select .cse59 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse58)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse56 (select .cse57 (+ .cse58 v_arrayElimCell_36)))) (= (select .cse57 (+ .cse58 v_arrayElimCell_35)) .cse56))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< .cse0 ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4))))) (or .cse12 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (let ((.cse65 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse62 (store (select .cse65 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse65 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse63 (store (select (store .cse65 .cse6 .cse62) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse64 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse6 .cse62) c_~A~0.base .cse63) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse64 v_arrayElimCell_37)) (select .cse63 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse64))))))))) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (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 ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse71 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse70 (store (select .cse71 .cse6) (+ .cse9 v_arrayElimCell_35) (select (select .cse71 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse68 (* ~b~0 4)) (.cse69 (store (select (store .cse71 .cse6 .cse70) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse67 (select (store (store |c_#memory_int| .cse6 .cse70) c_~A~0.base .cse69) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse66 (select .cse69 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse68)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse66 (select .cse67 (+ .cse68 v_arrayElimCell_36)))) (= (select .cse67 (+ .cse68 v_arrayElimCell_35)) .cse66) (= (select .cse67 (+ .cse68 v_arrayElimCell_37)) .cse66))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0))))))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4))) (or (and (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (< .cse0 ~M~0) (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse77 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse76 (store (select .cse77 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse77 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse74 (* ~b~0 4)) (.cse75 (store (select (store .cse77 .cse6 .cse76) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse73 (select (store (store |c_#memory_int| .cse6 .cse76) c_~A~0.base .cse75) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse72 (select .cse75 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse74)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse72 (select .cse73 (+ .cse74 v_arrayElimCell_36)))) (= (select .cse73 (+ .cse74 v_arrayElimCell_37)) .cse72))))))) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4))) (or .cse23 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< ~a~0 0) (< .cse0 ~M~0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse81 (store |c_#memory_int| c_~A~0.base (store .cse10 (+ ~A~0.offset .cse11) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse80 (store (select .cse81 .cse6) (+ .cse9 v_arrayElimCell_34) (select (select .cse81 c_~F~0.base) (+ .cse9 c_~F~0.offset (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4)))))) (let ((.cse78 (store (select (store .cse81 .cse6 .cse80) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse79 (* ~b~0 4))) (= (select .cse78 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse79)) (select (select (store (store |c_#memory_int| .cse6 .cse80) c_~A~0.base .cse78) (select (select (store (store |c_#memory_$Pointer$.base| .cse6 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse79 v_arrayElimCell_36)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse4) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))))) .cse30))))) is different from true [2024-01-26 12:04:47,201 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse3 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse18 (= c_~B~0.base c_~A~0.base)) (.cse69 (= .cse3 c_~B~0.base))) (let ((.cse31 (not .cse69)) (.cse44 (not .cse18)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (* c_thread1Thread1of1ForFork0_~i~0 4)) (.cse10 (+ c_thread1Thread1of1ForFork0_~i~0 1))) (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse4 (let ((.cse7 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse6 .cse3) (+ .cse7 v_arrayElimCell_35) (select (select .cse6 c_~F~0.base) (+ c_~F~0.offset .cse7 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse5 (store (select (store .cse6 .cse3 .cse4) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse2 (* ~b~0 4))) (let ((.cse0 (select .cse5 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse2))) (.cse1 (select (store (store |c_#memory_int| .cse3 .cse4) c_~A~0.base .cse5) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_36)))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_35))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_37))))))))))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse16 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse15 (let ((.cse17 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse16 .cse3) (+ .cse17 v_arrayElimCell_34) (select (select .cse16 c_~F~0.base) (+ c_~F~0.offset .cse17 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse13 (* ~b~0 4)) (.cse14 (store (select (store .cse16 .cse3 .cse15) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse12 (select (store (store |c_#memory_int| .cse3 .cse15) c_~A~0.base .cse14) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse11 (select .cse14 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse13)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_36)))) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_37))) (= (select .cse12 (+ .cse13 v_arrayElimCell_35)) .cse11))))))))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (or (and (or .cse18 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse21 (let ((.cse23 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse22 .cse3) (+ .cse23 v_arrayElimCell_35) (select (select .cse22 c_~F~0.base) (+ c_~F~0.offset .cse23 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse19 (store (select (store .cse22 .cse3 .cse21) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse20 (* ~b~0 4))) (= (select .cse19 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse20)) (select (select (store (store |c_#memory_int| .cse3 .cse21) c_~A~0.base .cse19) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse20 v_arrayElimCell_36)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse27 (let ((.cse30 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse29 .cse3) (+ .cse30 v_arrayElimCell_35) (select (select .cse29 c_~F~0.base) (+ c_~F~0.offset .cse30 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse28 (store (select (store .cse29 .cse3 .cse27) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse26 (* ~b~0 4))) (let ((.cse24 (select .cse28 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse26))) (.cse25 (select (store (store |c_#memory_int| .cse3 .cse27) c_~A~0.base .cse28) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_36)))) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_37))))))))))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10)))))) .cse31) (or (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse37 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse35 (let ((.cse38 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse37 .cse3) (+ .cse38 v_arrayElimCell_34) (select (select .cse37 c_~F~0.base) (+ c_~F~0.offset .cse38 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse36 (store (select (store .cse37 .cse3 .cse35) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse34 (* ~b~0 4))) (let ((.cse32 (select .cse36 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse34))) (.cse33 (select (store (store |c_#memory_int| .cse3 .cse35) c_~A~0.base .cse36) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_36)))) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_37))))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse41 (let ((.cse43 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse42 .cse3) (+ .cse43 v_arrayElimCell_34) (select (select .cse42 c_~F~0.base) (+ c_~F~0.offset .cse43 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse39 (store (select (store .cse42 .cse3 .cse41) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse40 (* ~b~0 4))) (= (select .cse39 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse40)) (select (select (store (store |c_#memory_int| .cse3 .cse41) c_~A~0.base .cse39) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse40 v_arrayElimCell_36)))))) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse18)) .cse31) (or .cse44 (forall ((~a~0 Int) (~b~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_ArrVal_795 (Array Int Int)) (~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_arrayElimCell_34 Int)) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse49 (let ((.cse51 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse50 .cse3) (+ .cse51 v_arrayElimCell_34) (select (select .cse50 c_~F~0.base) (+ c_~F~0.offset .cse51 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse47 (* ~b~0 4)) (.cse48 (store (select (store .cse50 .cse3 .cse49) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse46 (select (store (store |c_#memory_int| .cse3 .cse49) c_~A~0.base .cse48) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse45 (select .cse48 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse47)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_37))) (= (select .cse46 (+ .cse47 v_arrayElimCell_35)) .cse45) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) (or .cse44 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse57 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse55 (let ((.cse58 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse57 .cse3) (+ .cse58 v_arrayElimCell_35) (select (select .cse57 c_~F~0.base) (+ c_~F~0.offset .cse58 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse56 (store (select (store .cse57 .cse3 .cse55) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse54 (* ~b~0 4))) (let ((.cse52 (select .cse56 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse54))) (.cse53 (select (store (store |c_#memory_int| .cse3 .cse55) c_~A~0.base .cse56) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse52 (select .cse53 (+ .cse54 v_arrayElimCell_35))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= .cse52 (select .cse53 (+ .cse54 v_arrayElimCell_37))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse61 (let ((.cse63 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse62 .cse3) (+ .cse63 v_arrayElimCell_35) (select (select .cse62 c_~F~0.base) (+ c_~F~0.offset .cse63 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse59 (store (select (store .cse62 .cse3 .cse61) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse60 (* ~b~0 4))) (= (select .cse59 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse60)) (select (select (store (store |c_#memory_int| .cse3 .cse61) c_~A~0.base .cse59) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse60 v_arrayElimCell_37)))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse44) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse66 (let ((.cse68 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse67 .cse3) (+ .cse68 v_arrayElimCell_34) (select (select .cse67 c_~F~0.base) (+ c_~F~0.offset .cse68 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse64 (store (select (store .cse67 .cse3 .cse66) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse65 (* ~b~0 4))) (= (select .cse64 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse65)) (select (select (store (store |c_#memory_int| .cse3 .cse66) c_~A~0.base .cse64) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse65 v_arrayElimCell_37)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse44) (or (and (or .cse69 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse73 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse72 (let ((.cse74 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse73 .cse3) (+ .cse74 v_arrayElimCell_35) (select (select .cse73 c_~F~0.base) (+ c_~F~0.offset .cse74 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse70 (store (select (store .cse73 .cse3 .cse72) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse71 (* ~b~0 4))) (= (select .cse70 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse71)) (select (select (store (store |c_#memory_int| .cse3 .cse72) c_~A~0.base .cse70) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse71 v_arrayElimCell_35)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse80 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse78 (let ((.cse81 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse80 .cse3) (+ .cse81 v_arrayElimCell_35) (select (select .cse80 c_~F~0.base) (+ c_~F~0.offset .cse81 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse79 (store (select (store .cse80 .cse3 .cse78) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse77 (* ~b~0 4))) (let ((.cse75 (select .cse79 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse77))) (.cse76 (select (store (store |c_#memory_int| .cse3 .cse78) c_~A~0.base .cse79) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse75 (select .cse76 (+ .cse77 v_arrayElimCell_36)))) (= .cse75 (select .cse76 (+ .cse77 v_arrayElimCell_35))))))))))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) .cse18) (or .cse18 (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse87 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse86 (let ((.cse88 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse87 .cse3) (+ .cse88 v_arrayElimCell_34) (select (select .cse87 c_~F~0.base) (+ c_~F~0.offset .cse88 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse84 (* ~b~0 4)) (.cse85 (store (select (store .cse87 .cse3 .cse86) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse83 (select (store (store |c_#memory_int| .cse3 .cse86) c_~A~0.base .cse85) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select .cse85 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse84)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse82 (select .cse83 (+ .cse84 v_arrayElimCell_36)))) (= (select .cse83 (+ .cse84 v_arrayElimCell_35)) .cse82))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse89 (let ((.cse93 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse92 .cse3) (+ .cse93 v_arrayElimCell_34) (select (select .cse92 c_~F~0.base) (+ c_~F~0.offset .cse93 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse90 (store (select (store .cse92 .cse3 .cse89) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse91 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse3 .cse89) c_~A~0.base .cse90) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse91 v_arrayElimCell_35)) (select .cse90 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse91)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse69))))))) is different from false [2024-01-26 12:04:49,222 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse3 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) (+ (* c_thread2Thread1of1ForFork1_~i~1 4) c_~B~0.offset)))) (let ((.cse18 (= c_~B~0.base c_~A~0.base)) (.cse69 (= .cse3 c_~B~0.base))) (let ((.cse31 (not .cse69)) (.cse44 (not .cse18)) (.cse8 (select |c_#memory_int| c_~A~0.base)) (.cse9 (* c_thread1Thread1of1ForFork0_~i~0 4)) (.cse10 (+ c_thread1Thread1of1ForFork0_~i~0 1))) (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse6 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse4 (let ((.cse7 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse6 .cse3) (+ .cse7 v_arrayElimCell_35) (select (select .cse6 c_~F~0.base) (+ c_~F~0.offset .cse7 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse5 (store (select (store .cse6 .cse3 .cse4) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse2 (* ~b~0 4))) (let ((.cse0 (select .cse5 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse2))) (.cse1 (select (store (store |c_#memory_int| .cse3 .cse4) c_~A~0.base .cse5) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_36)))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_35))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_37))))))))))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (< ~M~0 (+ ~b~0 1)) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse16 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse15 (let ((.cse17 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse16 .cse3) (+ .cse17 v_arrayElimCell_34) (select (select .cse16 c_~F~0.base) (+ c_~F~0.offset .cse17 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse13 (* ~b~0 4)) (.cse14 (store (select (store .cse16 .cse3 .cse15) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse12 (select (store (store |c_#memory_int| .cse3 .cse15) c_~A~0.base .cse14) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse11 (select .cse14 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse13)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_36)))) (= .cse11 (select .cse12 (+ .cse13 v_arrayElimCell_37))) (= (select .cse12 (+ .cse13 v_arrayElimCell_35)) .cse11))))))))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (or (and (or .cse18 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse22 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse21 (let ((.cse23 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse22 .cse3) (+ .cse23 v_arrayElimCell_35) (select (select .cse22 c_~F~0.base) (+ c_~F~0.offset .cse23 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse19 (store (select (store .cse22 .cse3 .cse21) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse20 (* ~b~0 4))) (= (select .cse19 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse20)) (select (select (store (store |c_#memory_int| .cse3 .cse21) c_~A~0.base .cse19) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse20 v_arrayElimCell_36)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse27 (let ((.cse30 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse29 .cse3) (+ .cse30 v_arrayElimCell_35) (select (select .cse29 c_~F~0.base) (+ c_~F~0.offset .cse30 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse28 (store (select (store .cse29 .cse3 .cse27) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse26 (* ~b~0 4))) (let ((.cse24 (select .cse28 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse26))) (.cse25 (select (store (store |c_#memory_int| .cse3 .cse27) c_~A~0.base .cse28) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_36)))) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_37))))))))))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10)))))) .cse31) (or (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse37 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse35 (let ((.cse38 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse37 .cse3) (+ .cse38 v_arrayElimCell_34) (select (select .cse37 c_~F~0.base) (+ c_~F~0.offset .cse38 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse36 (store (select (store .cse37 .cse3 .cse35) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse34 (* ~b~0 4))) (let ((.cse32 (select .cse36 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse34))) (.cse33 (select (store (store |c_#memory_int| .cse3 .cse35) c_~A~0.base .cse36) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_36)))) (= .cse32 (select .cse33 (+ .cse34 v_arrayElimCell_37))))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (let ((.cse42 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse41 (let ((.cse43 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse42 .cse3) (+ .cse43 v_arrayElimCell_34) (select (select .cse42 c_~F~0.base) (+ c_~F~0.offset .cse43 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse39 (store (select (store .cse42 .cse3 .cse41) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse40 (* ~b~0 4))) (= (select .cse39 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse40)) (select (select (store (store |c_#memory_int| .cse3 .cse41) c_~A~0.base .cse39) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse40 v_arrayElimCell_36)))))) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse18)) .cse31) (or .cse44 (forall ((~a~0 Int) (~b~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_ArrVal_795 (Array Int Int)) (~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_arrayElimCell_34 Int)) (let ((.cse50 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse49 (let ((.cse51 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse50 .cse3) (+ .cse51 v_arrayElimCell_34) (select (select .cse50 c_~F~0.base) (+ c_~F~0.offset .cse51 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse47 (* ~b~0 4)) (.cse48 (store (select (store .cse50 .cse3 .cse49) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse46 (select (store (store |c_#memory_int| .cse3 .cse49) c_~A~0.base .cse48) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse45 (select .cse48 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse47)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse45 (select .cse46 (+ .cse47 v_arrayElimCell_37))) (= (select .cse46 (+ .cse47 v_arrayElimCell_35)) .cse45) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) (or .cse44 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse57 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse55 (let ((.cse58 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse57 .cse3) (+ .cse58 v_arrayElimCell_35) (select (select .cse57 c_~F~0.base) (+ c_~F~0.offset .cse58 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse56 (store (select (store .cse57 .cse3 .cse55) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse54 (* ~b~0 4))) (let ((.cse52 (select .cse56 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse54))) (.cse53 (select (store (store |c_#memory_int| .cse3 .cse55) c_~A~0.base .cse56) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (= .cse52 (select .cse53 (+ .cse54 v_arrayElimCell_35))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= .cse52 (select .cse53 (+ .cse54 v_arrayElimCell_37))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (let ((.cse62 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse61 (let ((.cse63 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse62 .cse3) (+ .cse63 v_arrayElimCell_35) (select (select .cse62 c_~F~0.base) (+ c_~F~0.offset .cse63 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse59 (store (select (store .cse62 .cse3 .cse61) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse60 (* ~b~0 4))) (= (select .cse59 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse60)) (select (select (store (store |c_#memory_int| .cse3 .cse61) c_~A~0.base .cse59) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse60 v_arrayElimCell_37)))))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse44) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse67 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse66 (let ((.cse68 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse67 .cse3) (+ .cse68 v_arrayElimCell_34) (select (select .cse67 c_~F~0.base) (+ c_~F~0.offset .cse68 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse64 (store (select (store .cse67 .cse3 .cse66) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse65 (* ~b~0 4))) (= (select .cse64 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse65)) (select (select (store (store |c_#memory_int| .cse3 .cse66) c_~A~0.base .cse64) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse65 v_arrayElimCell_37)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse44) (or (and (or .cse69 (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse73 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse72 (let ((.cse74 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse73 .cse3) (+ .cse74 v_arrayElimCell_35) (select (select .cse73 c_~F~0.base) (+ c_~F~0.offset .cse74 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse70 (store (select (store .cse73 .cse3 .cse72) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse71 (* ~b~0 4))) (= (select .cse70 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse71)) (select (select (store (store |c_#memory_int| .cse3 .cse72) c_~A~0.base .cse70) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse71 v_arrayElimCell_35)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))) (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse80 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse78 (let ((.cse81 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse80 .cse3) (+ .cse81 v_arrayElimCell_35) (select (select .cse80 c_~F~0.base) (+ c_~F~0.offset .cse81 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse79 (store (select (store .cse80 .cse3 .cse78) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse77 (* ~b~0 4))) (let ((.cse75 (select .cse79 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse77))) (.cse76 (select (store (store |c_#memory_int| .cse3 .cse78) c_~A~0.base .cse79) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse75 (select .cse76 (+ .cse77 v_arrayElimCell_36)))) (= .cse75 (select .cse76 (+ .cse77 v_arrayElimCell_35))))))))))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0)))))))) .cse18) (or .cse18 (and (forall ((v_thread2Thread1of1ForFork1_~j~0_27 Int)) (or (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (forall ((v_thread1Thread1of1ForFork0_~i~0_29 Int)) (or (forall ((~M~0 Int)) (or (forall ((~b~0 Int)) (or (< ~b~0 0) (forall ((~a~0 Int)) (or (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (forall ((~A~0.offset Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (let ((.cse87 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse86 (let ((.cse88 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse87 .cse3) (+ .cse88 v_arrayElimCell_34) (select (select .cse87 c_~F~0.base) (+ c_~F~0.offset .cse88 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse84 (* ~b~0 4)) (.cse85 (store (select (store .cse87 .cse3 .cse86) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|))) (let ((.cse83 (select (store (store |c_#memory_int| .cse3 .cse86) c_~A~0.base .cse85) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset)))) (.cse82 (select .cse85 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse84)))) (or (forall ((v_arrayElimCell_36 Int)) (= .cse82 (select .cse83 (+ .cse84 v_arrayElimCell_36)))) (= (select .cse83 (+ .cse84 v_arrayElimCell_35)) .cse82))))))) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0))) (< ~M~0 (+ ~b~0 1)))) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10))))) (or (forall ((~A~0.offset Int) (~a~0 Int) (~b~0 Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (v_ArrVal_800 (Array Int Int)) (~M~0 Int) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int)) (v_arrayElimCell_34 Int)) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (< ~a~0 0) (< c_thread2Thread1of1ForFork1_~i~1 ~a~0) (let ((.cse92 (store |c_#memory_int| c_~A~0.base (store .cse8 (+ ~A~0.offset .cse9) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse89 (let ((.cse93 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse92 .cse3) (+ .cse93 v_arrayElimCell_34) (select (select .cse92 c_~F~0.base) (+ c_~F~0.offset .cse93 (* (* c_thread2Thread1of1ForFork1_~i~1 ~M~0) 4))))))) (let ((.cse90 (store (select (store .cse92 .cse3 .cse89) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse91 (* ~b~0 4))) (= (select (select (store (store |c_#memory_int| .cse3 .cse89) c_~A~0.base .cse90) (select (select (store (store |c_#memory_$Pointer$.base| .cse3 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) (+ (* ~a~0 4) c_~B~0.offset))) (+ .cse91 v_arrayElimCell_35)) (select .cse90 (+ (* (* ~M~0 ~a~0) 4) ~A~0.offset .cse91)))))) (< ~M~0 (+ ~b~0 1)) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse10) (= c_thread2Thread1of1ForFork1_~i~1 ~a~0) (< (+ v_thread2Thread1of1ForFork1_~j~0_27 1) ~M~0))) .cse69))))))) is different from true [2024-01-26 12:04:53,362 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse4 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) c_~B~0.offset)) (.cse17 (= c_~B~0.base c_~A~0.base))) (let ((.cse11 (not .cse17)) (.cse23 (= c_~B~0.base .cse4)) (.cse3 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse9 (select |c_#memory_int| c_~A~0.base)) (.cse10 (* c_thread1Thread1of1ForFork0_~i~0 4))) (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse7 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse5 (let ((.cse8 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse7 .cse4) (+ .cse8 v_arrayElimCell_35) (select (select .cse7 c_~F~0.base) (+ c_~F~0.offset .cse8)))))) (let ((.cse6 (store (select (store .cse7 .cse4 .cse5) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse2 (* ~b~0 4))) (let ((.cse0 (select .cse6 (+ ~A~0.offset .cse2))) (.cse1 (select (store (store |c_#memory_int| .cse4 .cse5) c_~A~0.base .cse6) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_35))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))) .cse11) (or .cse11 (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse15 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse14 (let ((.cse16 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse15 .cse4) (+ .cse16 v_arrayElimCell_35) (select (select .cse15 c_~F~0.base) (+ c_~F~0.offset .cse16)))))) (let ((.cse12 (store (select (store .cse15 .cse4 .cse14) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse13 (* ~b~0 4))) (= (select .cse12 (+ ~A~0.offset .cse13)) (select (select (store (store |c_#memory_int| .cse4 .cse14) c_~A~0.base .cse12) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse13 v_arrayElimCell_37)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3)))) (or .cse17 (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse20 (let ((.cse22 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse21 .cse4) (+ .cse22 v_arrayElimCell_35) (select (select .cse21 c_~F~0.base) (+ c_~F~0.offset .cse22)))))) (let ((.cse18 (store (select (store .cse21 .cse4 .cse20) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse19 (* ~b~0 4))) (= (select .cse18 (+ ~A~0.offset .cse19)) (select (select (store (store |c_#memory_int| .cse4 .cse20) c_~A~0.base .cse18) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse19 v_arrayElimCell_35)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))) .cse23) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse27 (let ((.cse30 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse29 .cse4) (+ .cse30 v_arrayElimCell_35) (select (select .cse29 c_~F~0.base) (+ c_~F~0.offset .cse30)))))) (let ((.cse28 (store (select (store .cse29 .cse4 .cse27) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse26 (* ~b~0 4))) (let ((.cse24 (select .cse28 (+ ~A~0.offset .cse26))) (.cse25 (select (store (store |c_#memory_int| .cse4 .cse27) c_~A~0.base .cse28) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_35))) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_36))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))))) (or (not .cse23) (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse33 (let ((.cse35 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse34 .cse4) (+ .cse35 v_arrayElimCell_35) (select (select .cse34 c_~F~0.base) (+ c_~F~0.offset .cse35)))))) (let ((.cse31 (store (select (store .cse34 .cse4 .cse33) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse32 (* ~b~0 4))) (= (select .cse31 (+ ~A~0.offset .cse32)) (select (select (store (store |c_#memory_int| .cse4 .cse33) c_~A~0.base .cse31) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse32 v_arrayElimCell_36)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))) .cse17) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse39 (let ((.cse42 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse41 .cse4) (+ .cse42 v_arrayElimCell_35) (select (select .cse41 c_~F~0.base) (+ c_~F~0.offset .cse42)))))) (let ((.cse40 (store (select (store .cse41 .cse4 .cse39) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse38 (* ~b~0 4))) (let ((.cse36 (select .cse40 (+ ~A~0.offset .cse38))) (.cse37 (select (store (store |c_#memory_int| .cse4 .cse39) c_~A~0.base .cse40) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse36 (select .cse37 (+ .cse38 v_arrayElimCell_36))) (= .cse36 (select .cse37 (+ .cse38 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))))) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse48 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse46 (let ((.cse49 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse48 .cse4) (+ .cse49 v_arrayElimCell_35) (select (select .cse48 c_~F~0.base) (+ c_~F~0.offset .cse49)))))) (let ((.cse47 (store (select (store .cse48 .cse4 .cse46) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse45 (* ~b~0 4))) (let ((.cse43 (select .cse47 (+ ~A~0.offset .cse45))) (.cse44 (select (store (store |c_#memory_int| .cse4 .cse46) c_~A~0.base .cse47) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_35))) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_36))) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3)))))))))) is different from false [2024-01-26 12:04:55,376 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse4 (select (select |c_#memory_$Pointer$.base| c_~B~0.base) c_~B~0.offset)) (.cse17 (= c_~B~0.base c_~A~0.base))) (let ((.cse11 (not .cse17)) (.cse23 (= c_~B~0.base .cse4)) (.cse3 (+ c_thread1Thread1of1ForFork0_~i~0 1)) (.cse9 (select |c_#memory_int| c_~A~0.base)) (.cse10 (* c_thread1Thread1of1ForFork0_~i~0 4))) (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse7 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse5 (let ((.cse8 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse7 .cse4) (+ .cse8 v_arrayElimCell_35) (select (select .cse7 c_~F~0.base) (+ c_~F~0.offset .cse8)))))) (let ((.cse6 (store (select (store .cse7 .cse4 .cse5) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse2 (* ~b~0 4))) (let ((.cse0 (select .cse6 (+ ~A~0.offset .cse2))) (.cse1 (select (store (store |c_#memory_int| .cse4 .cse5) c_~A~0.base .cse6) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_35))) (= .cse0 (select .cse1 (+ .cse2 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))) .cse11) (or .cse11 (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse15 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse14 (let ((.cse16 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse15 .cse4) (+ .cse16 v_arrayElimCell_35) (select (select .cse15 c_~F~0.base) (+ c_~F~0.offset .cse16)))))) (let ((.cse12 (store (select (store .cse15 .cse4 .cse14) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse13 (* ~b~0 4))) (= (select .cse12 (+ ~A~0.offset .cse13)) (select (select (store (store |c_#memory_int| .cse4 .cse14) c_~A~0.base .cse12) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse13 v_arrayElimCell_37)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3)))) (or .cse17 (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse21 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse20 (let ((.cse22 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse21 .cse4) (+ .cse22 v_arrayElimCell_35) (select (select .cse21 c_~F~0.base) (+ c_~F~0.offset .cse22)))))) (let ((.cse18 (store (select (store .cse21 .cse4 .cse20) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse19 (* ~b~0 4))) (= (select .cse18 (+ ~A~0.offset .cse19)) (select (select (store (store |c_#memory_int| .cse4 .cse20) c_~A~0.base .cse18) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse19 v_arrayElimCell_35)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))) .cse23) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse29 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse27 (let ((.cse30 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse29 .cse4) (+ .cse30 v_arrayElimCell_35) (select (select .cse29 c_~F~0.base) (+ c_~F~0.offset .cse30)))))) (let ((.cse28 (store (select (store .cse29 .cse4 .cse27) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse26 (* ~b~0 4))) (let ((.cse24 (select .cse28 (+ ~A~0.offset .cse26))) (.cse25 (select (store (store |c_#memory_int| .cse4 .cse27) c_~A~0.base .cse28) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_35))) (= .cse24 (select .cse25 (+ .cse26 v_arrayElimCell_36))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))))) (or (not .cse23) (and (or (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_ArrVal_795 (Array Int Int))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (let ((.cse34 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse33 (let ((.cse35 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse34 .cse4) (+ .cse35 v_arrayElimCell_35) (select (select .cse34 c_~F~0.base) (+ c_~F~0.offset .cse35)))))) (let ((.cse31 (store (select (store .cse34 .cse4 .cse33) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse32 (* ~b~0 4))) (= (select .cse31 (+ ~A~0.offset .cse32)) (select (select (store (store |c_#memory_int| .cse4 .cse33) c_~A~0.base .cse31) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)) (+ .cse32 v_arrayElimCell_36)))))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))) .cse17) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse41 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse39 (let ((.cse42 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse41 .cse4) (+ .cse42 v_arrayElimCell_35) (select (select .cse41 c_~F~0.base) (+ c_~F~0.offset .cse42)))))) (let ((.cse40 (store (select (store .cse41 .cse4 .cse39) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse38 (* ~b~0 4))) (let ((.cse36 (select .cse40 (+ ~A~0.offset .cse38))) (.cse37 (select (store (store |c_#memory_int| .cse4 .cse39) c_~A~0.base .cse40) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse36 (select .cse37 (+ .cse38 v_arrayElimCell_36))) (= .cse36 (select .cse37 (+ .cse38 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3))))))))) (forall ((~A~0.offset Int) (v_thread2Thread1of1ForFork1_~j~0_27 Int) (~b~0 Int) (v_ArrVal_800 (Array Int Int)) (|v_thread1Thread1of1ForFork0_#t~mem2_18| Int) (v_thread1Thread1of1ForFork0_~i~0_29 Int) (v_arrayElimCell_36 Int) (v_arrayElimCell_35 Int) (v_arrayElimCell_37 Int) (v_ArrVal_795 (Array Int Int))) (let ((.cse48 (store |c_#memory_int| c_~A~0.base (store .cse9 (+ ~A~0.offset .cse10) |c_thread1Thread1of1ForFork0_#t~mem2|)))) (let ((.cse46 (let ((.cse49 (* v_thread2Thread1of1ForFork1_~j~0_27 4))) (store (select .cse48 .cse4) (+ .cse49 v_arrayElimCell_35) (select (select .cse48 c_~F~0.base) (+ c_~F~0.offset .cse49)))))) (let ((.cse47 (store (select (store .cse48 .cse4 .cse46) c_~A~0.base) (+ (* v_thread1Thread1of1ForFork0_~i~0_29 4) ~A~0.offset) |v_thread1Thread1of1ForFork0_#t~mem2_18|)) (.cse45 (* ~b~0 4))) (let ((.cse43 (select .cse47 (+ ~A~0.offset .cse45))) (.cse44 (select (store (store |c_#memory_int| .cse4 .cse46) c_~A~0.base .cse47) (select (select (store (store |c_#memory_$Pointer$.base| .cse4 v_ArrVal_795) c_~A~0.base v_ArrVal_800) c_~B~0.base) c_~B~0.offset)))) (or (< ~b~0 0) (< 0 v_thread2Thread1of1ForFork1_~j~0_27) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_35))) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_36))) (= .cse43 (select .cse44 (+ .cse45 v_arrayElimCell_37))) (< v_thread2Thread1of1ForFork1_~j~0_27 ~b~0) (< v_thread1Thread1of1ForFork0_~i~0_29 .cse3)))))))))) is different from true [2024-01-26 12:04:56,433 INFO L349 Elim1Store]: treesize reduction 814, result has 41.2 percent of original size [2024-01-26 12:04:56,433 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 3 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 6 new quantified variables, introduced 17 case distinctions, treesize of input 1416 treesize of output 1135 [2024-01-26 12:04:56,878 INFO L349 Elim1Store]: treesize reduction 192, result has 45.6 percent of original size [2024-01-26 12:04:56,878 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 10 case distinctions, treesize of input 1463 treesize of output 1541 [2024-01-26 12:04:57,030 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:04:57,030 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 1222 treesize of output 1244 [2024-01-26 12:04:57,181 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 16 treesize of output 10 [2024-01-26 12:04:57,501 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 16 treesize of output 10 [2024-01-26 12:04:58,350 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:04:58,350 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 40 treesize of output 44 [2024-01-26 12:05:00,049 INFO L349 Elim1Store]: treesize reduction 17, result has 48.5 percent of original size [2024-01-26 12:05:00,049 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 62 treesize of output 60 [2024-01-26 12:05:13,733 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:13,734 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 1640 treesize of output 1576 [2024-01-26 12:05:18,576 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:18,577 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 2074 treesize of output 2018 [2024-01-26 12:05:27,253 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:27,254 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 1786 treesize of output 1730 [2024-01-26 12:05:38,734 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:38,735 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 1366 treesize of output 1302 [2024-01-26 12:05:42,410 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:42,411 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 1753 treesize of output 1697 [2024-01-26 12:05:51,279 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:05:51,283 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 2251 treesize of output 2195 [2024-01-26 12:06:04,922 INFO L349 Elim1Store]: treesize reduction 8, result has 80.5 percent of original size [2024-01-26 12:06:04,923 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 1716 treesize of output 1586 [2024-01-26 12:06:11,844 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:06:11,844 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 1976 treesize of output 1824 [2024-01-26 12:06:25,504 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-01-26 12:06:25,505 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 13 select indices, 13 select index equivalence classes, 0 disjoint index pairs (out of 78 index pairs), introduced 13 new quantified variables, introduced 78 case distinctions, treesize of input 1387 treesize of output 1995 [2024-01-26 12:08:29,778 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-01-26 12:08:29,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-26 12:08:29,779 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [720784849] [2024-01-26 12:08:29,779 WARN L311 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2024-01-26 12:08:29,779 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [939852303] [2024-01-26 12:08:29,779 WARN L320 FreeRefinementEngine]: Global settings require throwing the following exception [2024-01-26 12:08:29,793 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-01-26 12:08:29,795 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-01-26 12:08:29,979 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-01-26 12:08:29,980 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.assertTerm(Scriptor.java:147) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.arrays.DiffWrapperScript.assertTerm(DiffWrapperScript.java:111) at de.uni_freiburg.informatik.ultimate.logic.WrapperScript.assertTerm(WrapperScript.java:158) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.SimplifyDDA2.simplify(SimplifyDDA2.java:495) 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.QuantifierPusher.pushInner(QuantifierPusher.java:275) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPushTermWalker.convert(QuantifierPushTermWalker.java:194) 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.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:416) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:303) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseConcurrentProgram(TraceAbstractionStarter.java:226) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:155) 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) ... 76 more [2024-01-26 12:08:29,985 INFO L158 Benchmark]: Toolchain (without parser) took 300660.04ms. Allocated memory was 212.9MB in the beginning and 1.0GB in the end (delta: 805.3MB). Free memory was 164.2MB in the beginning and 656.2MB in the end (delta: -492.0MB). Peak memory consumption was 609.8MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,985 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 212.9MB. Free memory is still 160.0MB. There was no memory consumed. Max. memory is 8.0GB. [2024-01-26 12:08:29,985 INFO L158 Benchmark]: CACSL2BoogieTranslator took 203.69ms. Allocated memory is still 212.9MB. Free memory was 163.9MB in the beginning and 151.5MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,985 INFO L158 Benchmark]: Boogie Procedure Inliner took 35.27ms. Allocated memory is still 212.9MB. Free memory was 151.5MB in the beginning and 149.2MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,996 INFO L158 Benchmark]: Boogie Preprocessor took 46.13ms. Allocated memory is still 212.9MB. Free memory was 149.2MB in the beginning and 147.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,996 INFO L158 Benchmark]: RCFGBuilder took 757.06ms. Allocated memory is still 212.9MB. Free memory was 147.2MB in the beginning and 122.7MB in the end (delta: 24.5MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,997 INFO L158 Benchmark]: TraceAbstraction took 299609.00ms. Allocated memory was 212.9MB in the beginning and 1.0GB in the end (delta: 805.3MB). Free memory was 122.0MB in the beginning and 656.2MB in the end (delta: -534.3MB). Peak memory consumption was 567.9MB. Max. memory is 8.0GB. [2024-01-26 12:08:29,998 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 212.9MB. Free memory is still 160.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 203.69ms. Allocated memory is still 212.9MB. Free memory was 163.9MB in the beginning and 151.5MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 35.27ms. Allocated memory is still 212.9MB. Free memory was 151.5MB in the beginning and 149.2MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 46.13ms. Allocated memory is still 212.9MB. Free memory was 149.2MB in the beginning and 147.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 757.06ms. Allocated memory is still 212.9MB. Free memory was 147.2MB in the beginning and 122.7MB in the end (delta: 24.5MB). Peak memory consumption was 24.1MB. Max. memory is 8.0GB. * TraceAbstraction took 299609.00ms. Allocated memory was 212.9MB in the beginning and 1.0GB in the end (delta: 805.3MB). Free memory was 122.0MB in the beginning and 656.2MB in the end (delta: -534.3MB). Peak memory consumption was 567.9MB. 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-01-26 12:08:30,027 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...