./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --validate ./goblint.2024-09-02_08-21-23.files/mutex-meet-local/36_stack_cas_p0_vs_concur.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 4a4c57e3 Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i ./goblint.2024-09-02_08-21-23.files/mutex-meet-local/36_stack_cas_p0_vs_concur.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.positions.where.we.compute.the.hoare.annotation None --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --- Real Ultimate output --- This is Ultimate 0.2.4-wip.fs.witness-ghost-4a4c57e-m [2024-09-08 02:25:17,084 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-09-08 02:25:17,161 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-09-08 02:25:17,167 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-09-08 02:25:17,168 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-09-08 02:25:17,202 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-09-08 02:25:17,202 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-09-08 02:25:17,203 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-09-08 02:25:17,206 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-09-08 02:25:17,206 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-09-08 02:25:17,207 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-09-08 02:25:17,207 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-09-08 02:25:17,208 INFO L153 SettingsManager]: * Use SBE=true [2024-09-08 02:25:17,208 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-09-08 02:25:17,208 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-09-08 02:25:17,209 INFO L153 SettingsManager]: * sizeof long=4 [2024-09-08 02:25:17,209 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-09-08 02:25:17,209 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-09-08 02:25:17,209 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-09-08 02:25:17,210 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-09-08 02:25:17,210 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-09-08 02:25:17,211 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-09-08 02:25:17,211 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-09-08 02:25:17,211 INFO L153 SettingsManager]: * sizeof long double=12 [2024-09-08 02:25:17,211 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-09-08 02:25:17,212 INFO L153 SettingsManager]: * Use constant arrays=true [2024-09-08 02:25:17,212 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-09-08 02:25:17,212 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-09-08 02:25:17,213 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-09-08 02:25:17,213 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-09-08 02:25:17,213 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-08 02:25:17,214 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-09-08 02:25:17,214 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-09-08 02:25:17,214 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-09-08 02:25:17,215 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-09-08 02:25:17,215 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-09-08 02:25:17,215 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-09-08 02:25:17,216 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-09-08 02:25:17,216 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-09-08 02:25:17,216 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-09-08 02:25:17,217 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-09-08 02:25:17,217 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.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Positions where we compute the Hoare Annotation -> None Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Check unreachability of reach_error function -> false [2024-09-08 02:25:17,525 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-09-08 02:25:17,550 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-09-08 02:25:17,554 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-09-08 02:25:17,555 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-09-08 02:25:17,556 INFO L274 PluginConnector]: Witness Parser initialized [2024-09-08 02:25:17,557 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-09-02_08-21-23.files/mutex-meet-local/36_stack_cas_p0_vs_concur.yml/witness.yml [2024-09-08 02:25:17,636 INFO L270 PluginConnector]: Initializing CDTParser... [2024-09-08 02:25:17,636 INFO L274 PluginConnector]: CDTParser initialized [2024-09-08 02:25:17,637 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:19,111 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-09-08 02:25:19,372 INFO L384 CDTParser]: Found 1 translation units. [2024-09-08 02:25:19,373 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:19,387 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/f23428eb9/ca11e1177ace423d9d0066c001ddd95d/FLAGe308cd5f7 [2024-09-08 02:25:19,401 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/f23428eb9/ca11e1177ace423d9d0066c001ddd95d [2024-09-08 02:25:19,401 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-09-08 02:25:19,403 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-09-08 02:25:19,404 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-09-08 02:25:19,404 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-09-08 02:25:19,409 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-09-08 02:25:19,410 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:17" (1/2) ... [2024-09-08 02:25:19,411 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@73e58682 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:19, skipping insertion in model container [2024-09-08 02:25:19,411 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:17" (1/2) ... [2024-09-08 02:25:19,412 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@1f2e31dd and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:19, skipping insertion in model container [2024-09-08 02:25:19,413 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.09 02:25:19" (2/2) ... [2024-09-08 02:25:19,413 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@73e58682 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19, skipping insertion in model container [2024-09-08 02:25:19,413 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.09 02:25:19" (2/2) ... [2024-09-08 02:25:19,457 INFO L93 nessWitnessExtractor]: Found the following entries in the witness: [2024-09-08 02:25:19,458 INFO L1541 ArrayList]: Location invariant before [L732-L732] (((((((0 <= top) && (1 <= next_alloc_idx)) && (next_alloc_idx <= 66)) && (top <= 66)) && ((63LL + (long long )next_alloc_idx) - (long long )top >= 0LL)) && (next_alloc_idx % 2 == 1)) && (next_alloc_idx != 2)) && (top != 2) [2024-09-08 02:25:19,458 INFO L1541 ArrayList]: Location invariant before [L721-L721] (((((((0 <= top) && (1 <= next_alloc_idx)) && (next_alloc_idx <= 66)) && (top <= 66)) && ((63LL + (long long )next_alloc_idx) - (long long )top >= 0LL)) && (next_alloc_idx % 2 == 1)) && (next_alloc_idx != 2)) && (top != 2) [2024-09-08 02:25:19,496 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-09-08 02:25:19,809 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-08 02:25:19,821 INFO L200 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local [2024-09-08 02:25:19,946 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-08 02:25:19,994 INFO L204 MainTranslator]: Completed translation [2024-09-08 02:25:19,995 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19 WrapperNode [2024-09-08 02:25:19,995 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-09-08 02:25:19,997 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-09-08 02:25:19,997 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-09-08 02:25:19,997 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-09-08 02:25:20,004 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,028 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,064 INFO L138 Inliner]: procedures = 172, calls = 45, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 125 [2024-09-08 02:25:20,064 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-09-08 02:25:20,066 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-09-08 02:25:20,066 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-09-08 02:25:20,066 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-09-08 02:25:20,075 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,076 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,082 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,083 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,092 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,097 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,099 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,100 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,103 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-09-08 02:25:20,104 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-09-08 02:25:20,104 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-09-08 02:25:20,104 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-09-08 02:25:20,105 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (1/1) ... [2024-09-08 02:25:20,113 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-08 02:25:20,121 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:20,144 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-09-08 02:25:20,147 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-09-08 02:25:20,240 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-09-08 02:25:20,241 INFO L130 BoogieDeclarations]: Found specification of procedure thr1 [2024-09-08 02:25:20,241 INFO L138 BoogieDeclarations]: Found implementation of procedure thr1 [2024-09-08 02:25:20,245 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-09-08 02:25:20,245 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-09-08 02:25:20,245 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-09-08 02:25:20,245 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-09-08 02:25:20,245 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-09-08 02:25:20,246 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-09-08 02:25:20,246 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-09-08 02:25:20,246 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-09-08 02:25:20,246 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-09-08 02:25:20,247 WARN L211 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-09-08 02:25:20,386 INFO L242 CfgBuilder]: Building ICFG [2024-09-08 02:25:20,388 INFO L268 CfgBuilder]: Building CFG for each procedure with an implementation [2024-09-08 02:25:20,583 INFO L287 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-09-08 02:25:20,583 INFO L291 CfgBuilder]: Performing block encoding [2024-09-08 02:25:20,794 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-09-08 02:25:20,794 INFO L318 CfgBuilder]: Removed 3 assume(true) statements. [2024-09-08 02:25:20,797 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.09 02:25:20 BoogieIcfgContainer [2024-09-08 02:25:20,797 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-09-08 02:25:20,799 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-09-08 02:25:20,799 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-09-08 02:25:20,804 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-09-08 02:25:20,804 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:17" (1/4) ... [2024-09-08 02:25:20,805 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6477ad36 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 08.09 02:25:20, skipping insertion in model container [2024-09-08 02:25:20,805 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.09 02:25:19" (2/4) ... [2024-09-08 02:25:20,806 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6477ad36 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.09 02:25:20, skipping insertion in model container [2024-09-08 02:25:20,806 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:19" (3/4) ... [2024-09-08 02:25:20,806 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6477ad36 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.09 02:25:20, skipping insertion in model container [2024-09-08 02:25:20,806 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.09 02:25:20" (4/4) ... [2024-09-08 02:25:20,808 INFO L112 eAbstractionObserver]: Analyzing ICFG 36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:20,835 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-09-08 02:25:20,835 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-09-08 02:25:20,835 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-09-08 02:25:20,896 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-09-08 02:25:20,933 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:20,934 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-08 02:25:20,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:20,935 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-09-08 02:25:20,936 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-09-08 02:25:20,974 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-08 02:25:20,985 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread1of1ForFork0 ======== [2024-09-08 02:25:20,991 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@4cce43b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:20,992 INFO L337 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-09-08 02:25:21,114 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:21,121 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:21,122 INFO L85 PathProgramCache]: Analyzing trace with hash -2008215890, now seen corresponding path program 1 times [2024-09-08 02:25:21,131 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-08 02:25:21,131 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907989097] [2024-09-08 02:25:21,132 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:21,132 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-08 02:25:21,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:22,118 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:22,120 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-08 02:25:22,121 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [907989097] [2024-09-08 02:25:22,121 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [907989097] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-08 02:25:22,121 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [908263379] [2024-09-08 02:25:22,122 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:22,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-08 02:25:22,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:22,124 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-09-08 02:25:22,126 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-09-08 02:25:22,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:22,218 INFO L262 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-09-08 02:25:22,225 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:22,359 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-09-08 02:25:22,360 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 11 treesize of output 11 [2024-09-08 02:25:22,418 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 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-09-08 02:25:22,474 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:22,475 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:23,391 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:23,393 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [908263379] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:25:23,393 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-09-08 02:25:23,393 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 8 [2024-09-08 02:25:23,395 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [749826132] [2024-09-08 02:25:23,397 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-09-08 02:25:23,402 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2024-09-08 02:25:23,402 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-08 02:25:23,428 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2024-09-08 02:25:23,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=63, Unknown=0, NotChecked=0, Total=90 [2024-09-08 02:25:23,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:23,432 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:23,433 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 3.4444444444444446) internal successors, (31), 9 states have internal predecessors, (31), 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-09-08 02:25:23,434 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:23,616 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-09-08 02:25:23,636 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-09-08 02:25:23,817 WARN L456 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-09-08 02:25:23,818 INFO L399 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:23,818 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:23,818 INFO L85 PathProgramCache]: Analyzing trace with hash -1983109515, now seen corresponding path program 1 times [2024-09-08 02:25:23,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-08 02:25:23,819 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [918943982] [2024-09-08 02:25:23,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:23,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-08 02:25:23,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:24,763 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:24,764 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-08 02:25:24,764 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [918943982] [2024-09-08 02:25:24,765 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [918943982] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-08 02:25:24,765 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [695718582] [2024-09-08 02:25:24,765 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:24,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-08 02:25:24,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:24,768 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-09-08 02:25:24,770 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-09-08 02:25:24,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:24,863 INFO L262 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 30 conjuncts are in the unsatisfiable core [2024-09-08 02:25:24,866 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:24,919 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 11 treesize of output 7 [2024-09-08 02:25:25,090 INFO L349 Elim1Store]: treesize reduction 70, result has 17.6 percent of original size [2024-09-08 02:25:25,091 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 25 [2024-09-08 02:25:25,172 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:25,172 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:25,879 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:25,879 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 44 treesize of output 58 [2024-09-08 02:25:25,891 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:25,892 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:25:25,936 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 166 treesize of output 152 [2024-09-08 02:25:25,943 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 111 treesize of output 99 [2024-09-08 02:25:26,161 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:26,162 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [695718582] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:25:26,162 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-09-08 02:25:26,162 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 5] total 19 [2024-09-08 02:25:26,162 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1487013080] [2024-09-08 02:25:26,162 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-09-08 02:25:26,164 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-09-08 02:25:26,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-08 02:25:26,166 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-09-08 02:25:26,167 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=357, Unknown=0, NotChecked=0, Total=420 [2024-09-08 02:25:26,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:26,168 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:26,168 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 2.7) internal successors, (54), 20 states have internal predecessors, (54), 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-09-08 02:25:26,169 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-09-08 02:25:26,169 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:26,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-09-08 02:25:26,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-09-08 02:25:26,612 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-09-08 02:25:26,799 WARN L456 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-09-08 02:25:26,799 INFO L399 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:26,800 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:26,800 INFO L85 PathProgramCache]: Analyzing trace with hash 1791595301, now seen corresponding path program 1 times [2024-09-08 02:25:26,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-08 02:25:26,800 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [602950528] [2024-09-08 02:25:26,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:26,801 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-08 02:25:26,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:27,438 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:27,438 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-08 02:25:27,438 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [602950528] [2024-09-08 02:25:27,438 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [602950528] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-08 02:25:27,439 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1388089946] [2024-09-08 02:25:27,441 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:27,442 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-08 02:25:27,442 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:27,444 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-09-08 02:25:27,446 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-09-08 02:25:27,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:27,542 INFO L262 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 43 conjuncts are in the unsatisfiable core [2024-09-08 02:25:27,545 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:27,604 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-09-08 02:25:27,628 INFO L349 Elim1Store]: treesize reduction 42, result has 25.0 percent of original size [2024-09-08 02:25:27,629 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 3 case distinctions, treesize of input 29 treesize of output 23 [2024-09-08 02:25:27,641 INFO L173 IndexEqualityManager]: detected equality via solver [2024-09-08 02:25:27,645 INFO L173 IndexEqualityManager]: detected equality via solver [2024-09-08 02:25:27,659 INFO L349 Elim1Store]: treesize reduction 20, result has 33.3 percent of original size [2024-09-08 02:25:27,660 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 22 treesize of output 19 [2024-09-08 02:25:27,700 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-09-08 02:25:27,927 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 26 [2024-09-08 02:25:27,942 INFO L349 Elim1Store]: treesize reduction 13, result has 40.9 percent of original size [2024-09-08 02:25:27,943 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 25 [2024-09-08 02:25:28,043 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2024-09-08 02:25:28,054 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 19 treesize of output 9 [2024-09-08 02:25:28,112 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-09-08 02:25:28,112 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 11 treesize of output 11 [2024-09-08 02:25:28,154 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 11 [2024-09-08 02:25:28,212 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:28,212 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:31,892 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse29 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse16 (= |c_thr1Thread1of1ForFork0_push_~oldTop~0#1| (select .cse29 |c_~#top~0.offset|)))) (let ((.cse3 (store |c_#memory_int| |c_~#top~0.base| (store .cse29 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.offset|)))) (.cse10 (not .cse16)) (.cse7 (= (mod c_~next_alloc_idx~0 2) 1))) (and (or (< 64 c_~next_alloc_idx~0) (let ((.cse0 (< 0 (+ c_~next_alloc_idx~0 2))) (.cse5 (+ c_~next_alloc_idx~0 66)) (.cse8 (forall ((|v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23| Int) (v_ArrVal_129 Int) (v_ArrVal_128 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_ArrVal_128) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_ArrVal_129) |v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23|) 0))))) (and (or (let ((.cse1 (forall ((v_DerPreprocessor_11 (Array Int Int))) (= (select (select (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_11) |c_~#top~0.base|) |c_~#top~0.offset|) 2)))) (and (or .cse0 .cse1 (forall ((v_prenex_178 Int) (v_prenex_179 Int) (v_prenex_177 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_179) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_178) v_prenex_177) 0)))) (forall ((v_DerPreprocessor_11 (Array Int Int))) (let ((.cse2 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_11))) (or (= (select (select .cse2 |c_~#top~0.base|) |c_~#top~0.offset|) 2) (forall ((v_prenex_169 Int) (v_prenex_172 Int) (v_prenex_170 Int) (v_prenex_171 Int)) (or (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_172) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_171) v_prenex_170) 0)) (< c_~next_alloc_idx~0 v_prenex_169) (< 0 (+ (select (select (store .cse2 v_prenex_170 (store (select .cse2 v_prenex_170) 0 v_prenex_169)) |c_~#top~0.base|) |c_~#top~0.offset|) 1))))))) (forall ((v_DerPreprocessor_11 (Array Int Int))) (let ((.cse4 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_11))) (or (= (select (select .cse4 |c_~#top~0.base|) |c_~#top~0.offset|) 2) (forall ((v_prenex_176 Int) (v_prenex_174 Int) (v_prenex_175 Int) (v_prenex_173 Int)) (or (< (select (select (store .cse4 v_prenex_174 (store (select .cse4 v_prenex_174) 0 v_prenex_173)) |c_~#top~0.base|) |c_~#top~0.offset|) .cse5) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_176) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_175) v_prenex_174) 0)) (< c_~next_alloc_idx~0 v_prenex_173)))))) (forall ((v_prenex_183 Int) (v_DerPreprocessor_11 (Array Int Int)) (v_prenex_181 Int) (v_prenex_182 Int) (v_prenex_180 Int)) (or (not (= 0 (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_183) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_182) v_prenex_181))) (< (select (select (let ((.cse6 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_11))) (store .cse6 v_prenex_181 (store (select .cse6 v_prenex_181) 0 v_prenex_180))) |c_~#top~0.base|) |c_~#top~0.offset|) 67) (< c_~next_alloc_idx~0 v_prenex_180))) (or .cse7 .cse1 .cse8) (forall ((v_DerPreprocessor_11 (Array Int Int))) (let ((.cse9 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_11))) (or (= (select (select .cse9 |c_~#top~0.base|) |c_~#top~0.offset|) 2) (forall ((v_prenex_167 Int) (v_prenex_168 Int) (v_prenex_166 Int) (v_ArrVal_130 Int)) (or (< c_~next_alloc_idx~0 v_ArrVal_130) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_168) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_167) v_prenex_166) 0)) (not (= 2 (select (select (store .cse9 v_prenex_166 (store (select .cse9 v_prenex_166) 0 v_ArrVal_130)) |c_~#top~0.base|) |c_~#top~0.offset|)))))))))) .cse10) (or (let ((.cse13 (forall ((v_DerPreprocessor_12 (Array Int Int))) (= 2 (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12) |c_~#top~0.base|) |c_~#top~0.offset|))))) (and (forall ((v_DerPreprocessor_12 (Array Int Int))) (let ((.cse11 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12))) (or (= 2 (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|)) (forall ((v_ArrVal_130 Int) (v_prenex_185 Int) (v_prenex_186 Int) (v_prenex_184 Int)) (or (< c_~next_alloc_idx~0 v_ArrVal_130) (not (= (select (select (store .cse11 v_prenex_184 (store (select .cse11 v_prenex_184) 0 v_ArrVal_130)) |c_~#top~0.base|) |c_~#top~0.offset|) 2)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_186) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_185) v_prenex_184) 0))))))) (forall ((v_prenex_200 Int) (v_prenex_201 Int) (v_prenex_198 Int) (v_prenex_199 Int) (v_DerPreprocessor_12 (Array Int Int))) (or (not (= 0 (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_201) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_200) v_prenex_199))) (< c_~next_alloc_idx~0 v_prenex_198) (< (select (select (let ((.cse12 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12))) (store .cse12 v_prenex_199 (store (select .cse12 v_prenex_199) 0 v_prenex_198))) |c_~#top~0.base|) |c_~#top~0.offset|) 67))) (or .cse0 (forall ((v_prenex_196 Int) (v_prenex_197 Int) (v_prenex_195 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_197) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_196) v_prenex_195) 0))) .cse13) (forall ((v_DerPreprocessor_12 (Array Int Int))) (let ((.cse14 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12))) (or (= 2 (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|)) (forall ((v_prenex_189 Int) (v_prenex_187 Int) (v_prenex_188 Int) (v_prenex_190 Int)) (or (< 0 (+ (select (select (store .cse14 v_prenex_188 (store (select .cse14 v_prenex_188) 0 v_prenex_187)) |c_~#top~0.base|) |c_~#top~0.offset|) 1)) (< c_~next_alloc_idx~0 v_prenex_187) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_190) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_189) v_prenex_188) 0))))))) (forall ((v_DerPreprocessor_12 (Array Int Int))) (let ((.cse15 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12))) (or (= 2 (select (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset|)) (forall ((v_prenex_194 Int) (v_prenex_192 Int) (v_prenex_193 Int) (v_prenex_191 Int)) (or (< (select (select (store .cse15 v_prenex_192 (store (select .cse15 v_prenex_192) 0 v_prenex_191)) |c_~#top~0.base|) |c_~#top~0.offset|) .cse5) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_194) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_193) v_prenex_192) 0)) (< c_~next_alloc_idx~0 v_prenex_191)))))) (or .cse7 .cse13 .cse8))) .cse16)))) (or (< c_~next_alloc_idx~0 65) (let ((.cse18 (< c_~next_alloc_idx~0 67)) (.cse23 (+ c_~next_alloc_idx~0 64))) (and (or (let ((.cse17 (forall ((v_DerPreprocessor_9 (Array Int Int))) (= (select (select (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_9) |c_~#top~0.base|) |c_~#top~0.offset|) 2)))) (and (or .cse17 (forall ((v_prenex_116 Int) (v_prenex_117 Int) (v_prenex_115 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_117) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_116) v_prenex_115) 0))) .cse18) (forall ((v_DerPreprocessor_9 (Array Int Int))) (let ((.cse19 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_9))) (or (forall ((v_prenex_125 Int) (v_prenex_123 Int) (v_prenex_124 Int) (v_prenex_122 (Array Int Int))) (or (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_125) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_124) v_prenex_123) 0)) (< (select (select (store .cse19 v_prenex_123 v_prenex_122) |c_~#top~0.base|) |c_~#top~0.offset|) 67))) (= (select (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset|) 2)))) (forall ((v_DerPreprocessor_9 (Array Int Int))) (let ((.cse20 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_9))) (or (= (select (select .cse20 |c_~#top~0.base|) |c_~#top~0.offset|) 2) (forall ((v_DerPreprocessor_8 (Array Int Int)) (|v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23| Int) (v_ArrVal_129 Int) (v_ArrVal_128 Int)) (or (not (= (select (select (store .cse20 |v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23| v_DerPreprocessor_8) |c_~#top~0.base|) |c_~#top~0.offset|) 2)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_ArrVal_128) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_ArrVal_129) |v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23|) 0))))))) (forall ((v_DerPreprocessor_9 (Array Int Int))) (let ((.cse21 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_9))) (or (forall ((v_prenex_118 (Array Int Int)) (v_prenex_121 Int) (v_prenex_120 Int) (v_prenex_119 Int)) (or (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_121) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_120) v_prenex_119) 0)) (< 0 (+ (select (select (store .cse21 v_prenex_119 v_prenex_118) |c_~#top~0.base|) |c_~#top~0.offset|) 1)))) (= (select (select .cse21 |c_~#top~0.base|) |c_~#top~0.offset|) 2)))) (forall ((v_DerPreprocessor_9 (Array Int Int))) (let ((.cse22 (store .cse3 |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_9))) (or (= (select (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset|) 2) (forall ((v_prenex_127 Int) (v_prenex_128 Int) (v_prenex_126 (Array Int Int)) (v_prenex_129 Int)) (or (< (select (select (store .cse22 v_prenex_127 v_prenex_126) |c_~#top~0.base|) |c_~#top~0.offset|) .cse23) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_129) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_128) v_prenex_127) 0))))))) (or .cse7 .cse17 (forall ((v_prenex_114 Int) (v_prenex_112 Int) (v_prenex_113 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_114) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_113) v_prenex_112) 0)))))) .cse10) (or (let ((.cse24 (forall ((v_DerPreprocessor_10 (Array Int Int))) (= 2 (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_10) |c_~#top~0.base|) |c_~#top~0.offset|))))) (and (or (forall ((v_prenex_134 Int) (v_prenex_135 Int) (v_prenex_133 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_135) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_134) v_prenex_133) 0))) .cse24 .cse18) (forall ((v_DerPreprocessor_10 (Array Int Int))) (let ((.cse25 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_10))) (or (= 2 (select (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset|)) (forall ((v_prenex_140 (Array Int Int)) (v_prenex_143 Int) (v_prenex_141 Int) (v_prenex_142 Int)) (or (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_143) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_142) v_prenex_141) 0)) (< (select (select (store .cse25 v_prenex_141 v_prenex_140) |c_~#top~0.base|) |c_~#top~0.offset|) 67)))))) (forall ((v_DerPreprocessor_10 (Array Int Int))) (let ((.cse26 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_10))) (or (= 2 (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|)) (forall ((v_prenex_138 Int) (v_prenex_139 Int) (v_prenex_137 Int) (v_prenex_136 (Array Int Int))) (or (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_139) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_138) v_prenex_137) 0)) (< 0 (+ (select (select (store .cse26 v_prenex_137 v_prenex_136) |c_~#top~0.base|) |c_~#top~0.offset|) 1))))))) (or (forall ((v_prenex_132 Int) (v_prenex_130 Int) (v_prenex_131 Int)) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_132) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_131) v_prenex_130) 0))) .cse7 .cse24) (forall ((v_DerPreprocessor_10 (Array Int Int))) (let ((.cse27 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_10))) (or (forall ((v_DerPreprocessor_8 (Array Int Int)) (|v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23| Int) (v_ArrVal_129 Int) (v_ArrVal_128 Int)) (or (not (= 2 (select (select (store .cse27 |v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23| v_DerPreprocessor_8) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_ArrVal_128) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_ArrVal_129) |v_thr1Thread1of1ForFork0_push_~#newTop~0#1.base_23|) 0)))) (= 2 (select (select .cse27 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((v_DerPreprocessor_10 (Array Int Int))) (let ((.cse28 (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_10))) (or (forall ((v_prenex_147 Int) (v_prenex_145 Int) (v_prenex_146 Int) (v_prenex_144 (Array Int Int))) (or (< (select (select (store .cse28 v_prenex_145 v_prenex_144) |c_~#top~0.base|) |c_~#top~0.offset|) .cse23) (not (= (select (store (store |c_#valid| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_prenex_147) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_prenex_146) v_prenex_145) 0)))) (= 2 (select (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset|))))))) .cse16)))))))) is different from false [2024-09-08 02:25:35,293 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:35,294 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 38 treesize of output 52 [2024-09-08 02:25:35,322 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:35,322 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:25:36,296 INFO L349 Elim1Store]: treesize reduction 27, result has 60.9 percent of original size [2024-09-08 02:25:36,297 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 875 treesize of output 813 [2024-09-08 02:25:37,312 WARN L320 FreeRefinementEngine]: Global settings require throwing the following exception [2024-09-08 02:25:37,325 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-09-08 02:25:37,512 WARN L456 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-09-08 02:25:37,513 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: no need to replace index at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructReplacementForSelectCase(DerPreprocessor.java:331) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructDerEnabler(DerPreprocessor.java:186) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.(DerPreprocessor.java:144) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.ElimStorePlain.applyComplexEliminationRules(ElimStorePlain.java:153) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:190) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne3(DualJunctionSaa.java:172) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne2(DualJunctionSaa.java:151) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne1(DualJunctionSaa.java:140) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne0(DualJunctionSaa.java:122) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminateOne(DualJunctionSaa.java:108) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryExhaustivelyToEliminate(DualJunctionSaa.java:93) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.DualJunctionSaa.tryToEliminate(DualJunctionSaa.java:88) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToEliminateOne(QuantifierPusher.java:543) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyNewEliminationTechniquesExhaustively(QuantifierPusher.java:522) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.applyDualJunctionEliminationTechniques(QuantifierPusher.java:515) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.tryToPushOverDualFiniteConnective(QuantifierPusher.java:326) 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.transform(TermContextTransformationEngine.java:88) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.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.transform(TermContextTransformationEngine.java:88) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.TermContextTransformationEngine.transform(TermContextTransformationEngine.java:84) at de.uni_freiburg.informatik.ultimate.lib.smtlibutils.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.getInterpolantComputationStatus(IpTcStrategyModuleBase.java:77) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.tryExecuteInterpolantGenerator(AutomatonFreeRefinementEngine.java:267) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.generateProof(AutomatonFreeRefinementEngine.java:148) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.tracehandling.AutomatonFreeRefinementEngine.executeStrategy(AutomatonFreeRefinementEngine.java:137) 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:303) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:410) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:345) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:327) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:421) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:307) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseConcurrentProgram(TraceAbstractionStarter.java:231) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:160) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:141) 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) [2024-09-08 02:25:37,521 INFO L158 Benchmark]: Toolchain (without parser) took 18117.95ms. Allocated memory was 159.4MB in the beginning and 423.6MB in the end (delta: 264.2MB). Free memory was 121.0MB in the beginning and 297.6MB in the end (delta: -176.7MB). Peak memory consumption was 250.1MB. Max. memory is 16.1GB. [2024-09-08 02:25:37,521 INFO L158 Benchmark]: Witness Parser took 0.18ms. Allocated memory is still 109.1MB. Free memory is still 79.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-09-08 02:25:37,521 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 109.1MB. Free memory is still 76.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-09-08 02:25:37,521 INFO L158 Benchmark]: CACSL2BoogieTranslator took 592.19ms. Allocated memory is still 159.4MB. Free memory was 121.0MB in the beginning and 95.3MB in the end (delta: 25.7MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2024-09-08 02:25:37,522 INFO L158 Benchmark]: Boogie Procedure Inliner took 68.12ms. Allocated memory is still 159.4MB. Free memory was 95.3MB in the beginning and 92.4MB in the end (delta: 2.9MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-09-08 02:25:37,522 INFO L158 Benchmark]: Boogie Preprocessor took 37.56ms. Allocated memory is still 159.4MB. Free memory was 92.4MB in the beginning and 91.1MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. [2024-09-08 02:25:37,524 INFO L158 Benchmark]: RCFGBuilder took 693.14ms. Allocated memory is still 159.4MB. Free memory was 91.1MB in the beginning and 94.8MB in the end (delta: -3.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-09-08 02:25:37,525 INFO L158 Benchmark]: TraceAbstraction took 16720.94ms. Allocated memory was 159.4MB in the beginning and 423.6MB in the end (delta: 264.2MB). Free memory was 93.8MB in the beginning and 297.6MB in the end (delta: -203.9MB). Peak memory consumption was 225.5MB. Max. memory is 16.1GB. [2024-09-08 02:25:37,528 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.18ms. Allocated memory is still 109.1MB. Free memory is still 79.0MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.18ms. Allocated memory is still 109.1MB. Free memory is still 76.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 592.19ms. Allocated memory is still 159.4MB. Free memory was 121.0MB in the beginning and 95.3MB in the end (delta: 25.7MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 68.12ms. Allocated memory is still 159.4MB. Free memory was 95.3MB in the beginning and 92.4MB in the end (delta: 2.9MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 37.56ms. Allocated memory is still 159.4MB. Free memory was 92.4MB in the beginning and 91.1MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 693.14ms. Allocated memory is still 159.4MB. Free memory was 91.1MB in the beginning and 94.8MB in the end (delta: -3.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 16720.94ms. Allocated memory was 159.4MB in the beginning and 423.6MB in the end (delta: 264.2MB). Free memory was 93.8MB in the beginning and 297.6MB in the end (delta: -203.9MB). Peak memory consumption was 225.5MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: no need to replace index de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: no need to replace index: de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.DerPreprocessor.constructReplacementForSelectCase(DerPreprocessor.java:331) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-09-08 02:25:37,555 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Ended with exit code 0 [2024-09-08 02:25:37,760 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 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i ./goblint.2024-09-02_08-21-23.files/mutex-meet-local/36_stack_cas_p0_vs_concur.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf --cacsl2boogietranslator.entry.function main --traceabstraction.positions.where.we.compute.the.hoare.annotation None --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --- Real Ultimate output --- This is Ultimate 0.2.4-wip.fs.witness-ghost-4a4c57e-m [2024-09-08 02:25:40,121 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-09-08 02:25:40,204 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-09-08 02:25:40,211 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-09-08 02:25:40,211 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-09-08 02:25:40,249 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-09-08 02:25:40,249 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-09-08 02:25:40,250 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-09-08 02:25:40,250 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-09-08 02:25:40,251 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-09-08 02:25:40,251 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-09-08 02:25:40,252 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-09-08 02:25:40,252 INFO L153 SettingsManager]: * Use SBE=true [2024-09-08 02:25:40,256 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-09-08 02:25:40,256 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-09-08 02:25:40,257 INFO L153 SettingsManager]: * sizeof long=4 [2024-09-08 02:25:40,257 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-09-08 02:25:40,257 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-09-08 02:25:40,257 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-09-08 02:25:40,257 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-09-08 02:25:40,258 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-09-08 02:25:40,260 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-09-08 02:25:40,260 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-09-08 02:25:40,261 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-09-08 02:25:40,261 INFO L153 SettingsManager]: * sizeof long double=12 [2024-09-08 02:25:40,261 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-09-08 02:25:40,261 INFO L153 SettingsManager]: * Use constant arrays=true [2024-09-08 02:25:40,262 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-09-08 02:25:40,262 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-09-08 02:25:40,262 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-09-08 02:25:40,262 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-09-08 02:25:40,263 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-08 02:25:40,263 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-09-08 02:25:40,263 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-09-08 02:25:40,263 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-09-08 02:25:40,263 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-09-08 02:25:40,264 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-09-08 02:25:40,264 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-09-08 02:25:40,264 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-09-08 02:25:40,264 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-09-08 02:25:40,265 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-09-08 02:25:40,266 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-09-08 02:25:40,266 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-09-08 02:25:40,266 INFO L153 SettingsManager]: * Logic for external solver=AUFBV 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.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Positions where we compute the Hoare Annotation -> None Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Check unreachability of reach_error function -> false [2024-09-08 02:25:40,616 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-09-08 02:25:40,640 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-09-08 02:25:40,643 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-09-08 02:25:40,645 INFO L270 PluginConnector]: Initializing CDTParser... [2024-09-08 02:25:40,646 INFO L274 PluginConnector]: CDTParser initialized [2024-09-08 02:25:40,648 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:42,298 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-09-08 02:25:42,536 INFO L384 CDTParser]: Found 1 translation units. [2024-09-08 02:25:42,537 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-ext/36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:42,554 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/c0e01efbc/f9333c47973b45dd9f6e89c16c75c081/FLAGb4a982513 [2024-09-08 02:25:42,870 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/c0e01efbc/f9333c47973b45dd9f6e89c16c75c081 [2024-09-08 02:25:42,873 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-09-08 02:25:42,874 INFO L274 PluginConnector]: Witness Parser initialized [2024-09-08 02:25:42,874 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-09-02_08-21-23.files/mutex-meet-local/36_stack_cas_p0_vs_concur.yml/witness.yml [2024-09-08 02:25:42,959 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-09-08 02:25:42,961 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-09-08 02:25:42,963 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-09-08 02:25:42,964 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-09-08 02:25:42,969 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-09-08 02:25:42,970 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.09 02:25:42" (1/2) ... [2024-09-08 02:25:42,971 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@178ea31b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:42, skipping insertion in model container [2024-09-08 02:25:42,971 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.09 02:25:42" (1/2) ... [2024-09-08 02:25:42,973 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@23f8d56d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.09 02:25:42, skipping insertion in model container [2024-09-08 02:25:42,973 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:42" (2/2) ... [2024-09-08 02:25:42,974 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@178ea31b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:42, skipping insertion in model container [2024-09-08 02:25:42,974 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:42" (2/2) ... [2024-09-08 02:25:43,026 INFO L93 nessWitnessExtractor]: Found the following entries in the witness: [2024-09-08 02:25:43,027 INFO L1541 ArrayList]: Location invariant before [L732-L732] (((((((0 <= top) && (1 <= next_alloc_idx)) && (next_alloc_idx <= 66)) && (top <= 66)) && ((63LL + (long long )next_alloc_idx) - (long long )top >= 0LL)) && (next_alloc_idx % 2 == 1)) && (next_alloc_idx != 2)) && (top != 2) [2024-09-08 02:25:43,027 INFO L1541 ArrayList]: Location invariant before [L721-L721] (((((((0 <= top) && (1 <= next_alloc_idx)) && (next_alloc_idx <= 66)) && (top <= 66)) && ((63LL + (long long )next_alloc_idx) - (long long )top >= 0LL)) && (next_alloc_idx % 2 == 1)) && (next_alloc_idx != 2)) && (top != 2) [2024-09-08 02:25:43,065 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-09-08 02:25:43,454 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-08 02:25:43,470 INFO L200 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local [2024-09-08 02:25:43,568 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-08 02:25:43,605 INFO L204 MainTranslator]: Completed translation [2024-09-08 02:25:43,606 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43 WrapperNode [2024-09-08 02:25:43,606 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-09-08 02:25:43,607 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-09-08 02:25:43,607 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-09-08 02:25:43,608 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-09-08 02:25:43,615 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,631 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,661 INFO L138 Inliner]: procedures = 176, calls = 45, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 126 [2024-09-08 02:25:43,662 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-09-08 02:25:43,662 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-09-08 02:25:43,663 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-09-08 02:25:43,663 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-09-08 02:25:43,671 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,671 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,679 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,681 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,689 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,693 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,700 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,702 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,709 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-09-08 02:25:43,710 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-09-08 02:25:43,710 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-09-08 02:25:43,710 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-09-08 02:25:43,711 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (1/1) ... [2024-09-08 02:25:43,720 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-08 02:25:43,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:43,747 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-09-08 02:25:43,751 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-09-08 02:25:43,815 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-09-08 02:25:43,815 INFO L130 BoogieDeclarations]: Found specification of procedure thr1 [2024-09-08 02:25:43,815 INFO L138 BoogieDeclarations]: Found implementation of procedure thr1 [2024-09-08 02:25:43,815 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-09-08 02:25:43,817 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-09-08 02:25:43,817 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-09-08 02:25:43,818 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-09-08 02:25:43,818 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-09-08 02:25:43,818 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-09-08 02:25:43,818 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-09-08 02:25:43,819 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-09-08 02:25:43,819 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-09-08 02:25:43,819 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-09-08 02:25:43,821 WARN L211 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-09-08 02:25:44,001 INFO L242 CfgBuilder]: Building ICFG [2024-09-08 02:25:44,004 INFO L268 CfgBuilder]: Building CFG for each procedure with an implementation [2024-09-08 02:25:44,363 INFO L287 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-09-08 02:25:44,364 INFO L291 CfgBuilder]: Performing block encoding [2024-09-08 02:25:44,607 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-09-08 02:25:44,607 INFO L318 CfgBuilder]: Removed 3 assume(true) statements. [2024-09-08 02:25:44,608 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.09 02:25:44 BoogieIcfgContainer [2024-09-08 02:25:44,608 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-09-08 02:25:44,610 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-09-08 02:25:44,610 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-09-08 02:25:44,614 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-09-08 02:25:44,614 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.09 02:25:42" (1/4) ... [2024-09-08 02:25:44,616 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49e62c41 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.09 02:25:44, skipping insertion in model container [2024-09-08 02:25:44,616 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 08.09 02:25:42" (2/4) ... [2024-09-08 02:25:44,617 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49e62c41 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 08.09 02:25:44, skipping insertion in model container [2024-09-08 02:25:44,617 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 08.09 02:25:43" (3/4) ... [2024-09-08 02:25:44,617 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49e62c41 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 08.09 02:25:44, skipping insertion in model container [2024-09-08 02:25:44,617 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.09 02:25:44" (4/4) ... [2024-09-08 02:25:44,619 INFO L112 eAbstractionObserver]: Analyzing ICFG 36_stack_cas_p0_vs_concur.i [2024-09-08 02:25:44,637 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-09-08 02:25:44,638 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-09-08 02:25:44,638 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-09-08 02:25:44,709 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-09-08 02:25:44,767 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:44,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-08 02:25:44,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:44,770 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-09-08 02:25:44,772 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-09-08 02:25:44,812 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-08 02:25:44,828 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread1of1ForFork0 ======== [2024-09-08 02:25:44,835 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@3857c5b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:44,838 INFO L337 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-09-08 02:25:44,994 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:45,000 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:45,001 INFO L85 PathProgramCache]: Analyzing trace with hash 262873134, now seen corresponding path program 1 times [2024-09-08 02:25:45,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:45,015 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [735408263] [2024-09-08 02:25:45,015 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:45,016 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:45,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:45,036 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:45,039 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2024-09-08 02:25:45,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:45,176 INFO L262 TraceCheckSpWp]: Trace formula consists of 64 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-09-08 02:25:45,183 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:45,512 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2024-09-08 02:25:45,514 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 13 treesize of output 13 [2024-09-08 02:25:45,594 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 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-09-08 02:25:45,691 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:45,692 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:46,183 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse0 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (and (forall ((v_DerPreprocessor_2 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) ((_ sign_extend 32) .cse0) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_2) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((v_DerPreprocessor_2 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_2) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((v_DerPreprocessor_2 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_2) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((v_DerPreprocessor_2 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_2) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (= (bvsrem .cse0 (_ bv2 32)) (_ bv1 32)))) .cse1) (or (not .cse1) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_DerPreprocessor_1 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_1) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((v_DerPreprocessor_1 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_1) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((v_DerPreprocessor_1 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_1) |c_~#top~0.base|) |c_~#top~0.offset|)))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (forall ((v_DerPreprocessor_1 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_1) |c_~#top~0.base|) |c_~#top~0.offset|))) ((_ sign_extend 32) c_~next_alloc_idx~0)) (_ bv0 64))))))) is different from false [2024-09-08 02:25:47,341 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:47,342 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:25:47,343 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [735408263] [2024-09-08 02:25:47,343 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [735408263] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:25:47,343 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:25:47,344 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3] total 6 [2024-09-08 02:25:47,345 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [329295397] [2024-09-08 02:25:47,346 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:25:47,350 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-09-08 02:25:47,351 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:25:47,378 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-09-08 02:25:47,380 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=28, Unknown=1, NotChecked=10, Total=56 [2024-09-08 02:25:47,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:47,383 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:47,384 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.4285714285714284) internal successors, (24), 7 states have internal predecessors, (24), 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-09-08 02:25:47,384 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:47,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:47,950 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2024-09-08 02:25:48,148 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:48,149 INFO L399 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:48,150 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:48,150 INFO L85 PathProgramCache]: Analyzing trace with hash 1396566197, now seen corresponding path program 1 times [2024-09-08 02:25:48,150 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:48,151 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [79974044] [2024-09-08 02:25:48,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:48,151 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:48,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:48,155 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:48,157 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2024-09-08 02:25:48,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:48,256 INFO L262 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 19 conjuncts are in the unsatisfiable core [2024-09-08 02:25:48,259 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:48,352 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 11 treesize of output 7 [2024-09-08 02:25:48,622 INFO L349 Elim1Store]: treesize reduction 70, result has 17.6 percent of original size [2024-09-08 02:25:48,623 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 25 [2024-09-08 02:25:48,745 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:48,746 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:49,092 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse5 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse0 (= |c_thr1Thread1of1ForFork0_push_~oldTop~0#1| (select .cse5 |c_~#top~0.offset|))) (.cse1 (bvsle c_~next_alloc_idx~0 (_ bv66 32))) (.cse3 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse2 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (or .cse0 (and .cse1 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse3 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (or (not .cse0) (let ((.cse4 (store |c_#memory_int| |c_~#top~0.base| (store .cse5 |c_~#top~0.offset| |c_thr1Thread1of1ForFork0_push_#t~mem12#1|)))) (and .cse1 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse2) (_ bv0 64))))))))) is different from false [2024-09-08 02:25:49,261 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse5 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse0 (= |c_thr1Thread1of1ForFork0_push_~oldTop~0#1| (select .cse5 |c_~#top~0.offset|))) (.cse1 (bvsle c_~next_alloc_idx~0 (_ bv66 32))) (.cse2 ((_ sign_extend 32) c_~next_alloc_idx~0)) (.cse3 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))))) (and (or .cse0 (and .cse1 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse3 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (or (not .cse0) (let ((.cse4 (store |c_#memory_int| |c_~#top~0.base| (store .cse5 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.offset|))))) (and .cse1 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse3 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))))))) is different from false [2024-09-08 02:25:49,821 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:49,822 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 57 [2024-09-08 02:25:49,836 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:25:49,837 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:25:50,014 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 186 treesize of output 168 [2024-09-08 02:25:50,029 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 5 treesize of output 3 [2024-09-08 02:25:50,056 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 48 treesize of output 40 [2024-09-08 02:25:50,196 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:50,197 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:25:50,197 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [79974044] [2024-09-08 02:25:50,197 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [79974044] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:25:50,198 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:25:50,198 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5] total 11 [2024-09-08 02:25:50,198 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [918901492] [2024-09-08 02:25:50,198 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:25:50,199 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-09-08 02:25:50,199 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:25:50,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-09-08 02:25:50,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=82, Unknown=2, NotChecked=38, Total=156 [2024-09-08 02:25:50,201 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:50,201 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:50,203 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 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-09-08 02:25:50,203 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:50,203 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:51,920 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse7 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse5 (select .cse7 |c_~#top~0.offset|))) (let ((.cse2 (= |c_thr1Thread1of1ForFork0_push_~oldTop~0#1| .cse5)) (.cse0 (bvsle c_~next_alloc_idx~0 (_ bv66 32))) (.cse4 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0)) (.cse1 (store |c_#memory_int| |c_~#top~0.base| (store .cse7 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.offset|))))) (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) (or .cse2 (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse4 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (not (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (bvsle (_ bv0 32) c_~next_alloc_idx~0) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) .cse5))) (_ bv0 64)) (not (= (_ bv2 32) .cse5)) (bvsle (_ bv0 32) .cse5) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse4 (or (not .cse2) (let ((.cse6 (store |c_#memory_int| |c_~#top~0.base| (store .cse7 |c_~#top~0.offset| |c_thr1Thread1of1ForFork0_push_#t~mem12#1|)))) (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse4 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3) (_ bv0 64)))))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (bvsle .cse5 (_ bv66 32)) (= (bvsrem (bvadd (_ bv2 32) c_~next_alloc_idx~0) (_ bv2 32)) (_ bv1 32)))))) is different from false [2024-09-08 02:25:53,059 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse7 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse5 (select .cse7 |c_~#top~0.offset|))) (let ((.cse2 (= |c_thr1Thread1of1ForFork0_push_~oldTop~0#1| .cse5)) (.cse0 (bvsle c_~next_alloc_idx~0 (_ bv66 32))) (.cse4 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0)) (.cse1 (store |c_#memory_int| |c_~#top~0.base| (store .cse7 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#newTop~0#1.offset|))))) (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) (or .cse2 (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse4 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_3 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of1ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_3) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) .cse5))) (_ bv0 64)) (not (= (_ bv2 32) .cse5)) (bvsle (_ bv0 32) .cse5) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse4 (or (not .cse2) (let ((.cse6 (store |c_#memory_int| |c_~#top~0.base| (store .cse7 |c_~#top~0.offset| |c_thr1Thread1of1ForFork0_push_#t~mem12#1|)))) (and .cse0 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse4 (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse6 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3) (_ bv0 64)))))) (forall ((|thr1Thread1of1ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (select (select (store .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of1ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of1ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (bvsle .cse5 (_ bv66 32)))))) is different from false [2024-09-08 02:25:53,601 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:53,602 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-09-08 02:25:53,607 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 0 [2024-09-08 02:25:53,803 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:53,804 INFO L399 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:25:53,804 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:53,804 INFO L85 PathProgramCache]: Analyzing trace with hash -1358141130, now seen corresponding path program 1 times [2024-09-08 02:25:53,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:53,805 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [366151054] [2024-09-08 02:25:53,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:53,805 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:53,805 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:53,807 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:53,809 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (5)] Waiting until timeout for monitored process [2024-09-08 02:25:53,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:53,934 INFO L262 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-09-08 02:25:53,936 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:53,958 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 7 [2024-09-08 02:25:53,967 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-09-08 02:25:53,968 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 1 [2024-09-08 02:25:53,975 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 32 [2024-09-08 02:25:53,989 WARN L214 Elim1Store]: Array PQE input equivalent to false [2024-09-08 02:25:54,017 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 18 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-09-08 02:25:54,018 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-09-08 02:25:54,018 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:25:54,019 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [366151054] [2024-09-08 02:25:54,019 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [366151054] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-08 02:25:54,019 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-08 02:25:54,019 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-09-08 02:25:54,020 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [920443709] [2024-09-08 02:25:54,020 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-08 02:25:54,021 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-09-08 02:25:54,023 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:25:54,023 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-09-08 02:25:54,024 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-09-08 02:25:54,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:54,024 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:54,024 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.0) internal successors, (30), 5 states have internal predecessors, (30), 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-09-08 02:25:54,024 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:54,024 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 16 states. [2024-09-08 02:25:54,027 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:55,321 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:55,322 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-09-08 02:25:55,323 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-09-08 02:25:55,326 INFO L785 garLoopResultBuilder]: Registering result SAFE for location thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT (1 of 2 remaining) [2024-09-08 02:25:55,326 INFO L785 garLoopResultBuilder]: Registering result SAFE for location thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT (0 of 2 remaining) [2024-09-08 02:25:55,331 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (5)] Forceful destruction successful, exit code 0 [2024-09-08 02:25:55,527 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:55,534 INFO L408 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2024-09-08 02:25:55,536 INFO L312 ceAbstractionStarter]: Result for error location thr1Thread1of1ForFork0 was SAFE,SAFE (1/2) [2024-09-08 02:25:55,543 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:55,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-08 02:25:55,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:55,545 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-09-08 02:25:55,547 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (6)] Waiting until timeout for monitored process [2024-09-08 02:25:55,549 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-08 02:25:55,550 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-09-08 02:25:55,550 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@3857c5b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:55,551 INFO L337 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-09-08 02:25:55,618 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-09-08 02:25:55,619 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:55,619 INFO L85 PathProgramCache]: Analyzing trace with hash 1484070764, now seen corresponding path program 1 times [2024-09-08 02:25:55,619 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:55,619 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [374679953] [2024-09-08 02:25:55,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:55,620 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:55,620 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:55,623 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:55,625 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (7)] Waiting until timeout for monitored process [2024-09-08 02:25:55,681 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-08 02:25:55,681 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-09-08 02:25:55,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-08 02:25:55,731 INFO L130 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2024-09-08 02:25:55,731 INFO L326 BasicCegarLoop]: Counterexample is feasible [2024-09-08 02:25:55,732 INFO L785 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 1 remaining) [2024-09-08 02:25:55,741 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (7)] Ended with exit code 0 [2024-09-08 02:25:55,932 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:55,933 INFO L408 BasicCegarLoop]: Path program histogram: [1] [2024-09-08 02:25:55,934 INFO L312 ceAbstractionStarter]: Result for error location ULTIMATE.start was UNSAFE (2/2) [2024-09-08 02:25:55,934 WARN L239 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2024-09-08 02:25:55,935 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2024-09-08 02:25:55,963 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-09-08 02:25:55,965 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:55,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-08 02:25:55,965 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:25:55,967 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-09-08 02:25:55,970 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (8)] Waiting until timeout for monitored process [2024-09-08 02:25:55,973 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-08 02:25:55,973 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-09-08 02:25:55,974 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@3857c5b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:25:55,974 INFO L337 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-09-08 02:25:56,221 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-09-08 02:25:56,221 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:56,221 INFO L85 PathProgramCache]: Analyzing trace with hash -1478896732, now seen corresponding path program 1 times [2024-09-08 02:25:56,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:56,222 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1714203667] [2024-09-08 02:25:56,222 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:56,222 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:56,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:56,226 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:56,228 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (9)] Waiting until timeout for monitored process [2024-09-08 02:25:56,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:56,338 INFO L262 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-09-08 02:25:56,340 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:56,456 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2024-09-08 02:25:56,456 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 13 treesize of output 13 [2024-09-08 02:25:56,494 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 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-09-08 02:25:56,581 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:56,581 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:25:57,064 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse0 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (and (forall ((v_DerPreprocessor_6 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_6) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((v_DerPreprocessor_6 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_6) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((v_DerPreprocessor_6 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) ((_ sign_extend 32) .cse0) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_6) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (= (bvsrem .cse0 (_ bv2 32)) (_ bv1 32)) (forall ((v_DerPreprocessor_6 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_6) |c_~#top~0.base|) |c_~#top~0.offset|))))) .cse1) (or (not .cse1) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_DerPreprocessor_7 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) ((_ sign_extend 32) c_~next_alloc_idx~0) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_7) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((v_DerPreprocessor_7 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_7) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((v_DerPreprocessor_7 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_7) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (forall ((v_DerPreprocessor_7 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (select (select (store |c_#memory_int| |c_thr1Thread1of2ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_7) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))))) is different from false [2024-09-08 02:25:58,033 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:25:58,033 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:25:58,033 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1714203667] [2024-09-08 02:25:58,033 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1714203667] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:25:58,034 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:25:58,034 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 7 [2024-09-08 02:25:58,034 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [964126805] [2024-09-08 02:25:58,034 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:25:58,034 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-09-08 02:25:58,034 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:25:58,035 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-09-08 02:25:58,035 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=28, Unknown=1, NotChecked=10, Total=56 [2024-09-08 02:25:58,035 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:58,035 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:25:58,035 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 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-09-08 02:25:58,035 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:25:59,121 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:25:59,126 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (9)] Ended with exit code 0 [2024-09-08 02:25:59,321 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:59,322 INFO L399 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-09-08 02:25:59,322 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:25:59,322 INFO L85 PathProgramCache]: Analyzing trace with hash 1227724413, now seen corresponding path program 1 times [2024-09-08 02:25:59,323 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:25:59,323 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [810051168] [2024-09-08 02:25:59,323 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:25:59,323 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:25:59,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:25:59,326 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:25:59,328 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (10)] Waiting until timeout for monitored process [2024-09-08 02:25:59,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:25:59,449 INFO L262 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-09-08 02:25:59,451 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:25:59,559 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 11 treesize of output 7 [2024-09-08 02:25:59,885 INFO L349 Elim1Store]: treesize reduction 70, result has 17.6 percent of original size [2024-09-08 02:25:59,886 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 25 [2024-09-08 02:26:00,029 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:26:00,029 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:26:01,754 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:01,754 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 57 [2024-09-08 02:26:01,767 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:01,768 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:26:02,458 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:02,459 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 6 select indices, 6 select index equivalence classes, 0 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 15 case distinctions, treesize of input 1892 treesize of output 1964 [2024-09-08 02:26:02,553 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 689 treesize of output 673 [2024-09-08 02:26:02,590 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 675 treesize of output 659 [2024-09-08 02:26:02,625 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 639 treesize of output 623 [2024-09-08 02:26:02,676 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 625 treesize of output 609 [2024-09-08 02:26:03,898 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 26 treesize of output 22 [2024-09-08 02:26:04,182 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:26:04,183 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:26:04,183 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [810051168] [2024-09-08 02:26:04,183 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [810051168] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:26:04,183 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:26:04,183 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 12 [2024-09-08 02:26:04,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [201699352] [2024-09-08 02:26:04,184 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:26:04,184 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-09-08 02:26:04,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:26:04,186 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-09-08 02:26:04,186 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=114, Unknown=5, NotChecked=0, Total=156 [2024-09-08 02:26:04,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:04,187 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:26:04,187 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 3.4615384615384617) internal successors, (45), 12 states have internal predecessors, (45), 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-09-08 02:26:04,187 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:26:04,188 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:07,036 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:26:07,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-09-08 02:26:07,042 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (10)] Forceful destruction successful, exit code 0 [2024-09-08 02:26:07,237 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:07,238 INFO L399 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-09-08 02:26:07,238 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:26:07,238 INFO L85 PathProgramCache]: Analyzing trace with hash 1256353564, now seen corresponding path program 1 times [2024-09-08 02:26:07,238 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:26:07,239 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [978217608] [2024-09-08 02:26:07,239 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:26:07,239 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:07,239 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:26:07,240 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:26:07,241 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (11)] Waiting until timeout for monitored process [2024-09-08 02:26:07,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-08 02:26:07,349 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-09-08 02:26:07,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-08 02:26:07,441 INFO L130 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2024-09-08 02:26:07,441 INFO L326 BasicCegarLoop]: Counterexample is feasible [2024-09-08 02:26:07,441 INFO L785 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 1 remaining) [2024-09-08 02:26:07,447 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (11)] Forceful destruction successful, exit code 0 [2024-09-08 02:26:07,642 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:07,643 INFO L408 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2024-09-08 02:26:07,644 INFO L312 ceAbstractionStarter]: Result for error location ULTIMATE.start was UNSAFE (1/3) [2024-09-08 02:26:07,644 WARN L239 ceAbstractionStarter]: 2 thread instances were not sufficient, I will increase this number and restart the analysis [2024-09-08 02:26:07,644 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 3 thread instances. [2024-09-08 02:26:07,675 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-09-08 02:26:07,676 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:26:07,677 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-08 02:26:07,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-08 02:26:07,679 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-09-08 02:26:07,680 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (12)] Waiting until timeout for monitored process [2024-09-08 02:26:07,681 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-08 02:26:07,682 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == thr1Thread3of3ForFork0 ======== [2024-09-08 02:26:07,682 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@3857c5b6, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-08 02:26:07,682 INFO L337 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-09-08 02:26:08,078 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:26:08,079 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:26:08,079 INFO L85 PathProgramCache]: Analyzing trace with hash 2084484843, now seen corresponding path program 1 times [2024-09-08 02:26:08,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:26:08,079 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [693651231] [2024-09-08 02:26:08,079 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:26:08,079 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:08,079 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:26:08,081 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:26:08,082 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (13)] Waiting until timeout for monitored process [2024-09-08 02:26:08,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:26:08,215 INFO L262 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-09-08 02:26:08,217 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:26:08,291 INFO L349 Elim1Store]: treesize reduction 6, result has 40.0 percent of original size [2024-09-08 02:26:08,291 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 13 treesize of output 13 [2024-09-08 02:26:08,322 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 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-09-08 02:26:08,402 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 10 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-09-08 02:26:08,403 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:26:08,796 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse0 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (and (forall ((v_DerPreprocessor_10 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_10) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((v_DerPreprocessor_10 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_10) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((v_DerPreprocessor_10 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_10) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((v_DerPreprocessor_10 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) ((_ sign_extend 32) .cse0) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_10) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (= (bvsrem .cse0 (_ bv2 32)) (_ bv1 32)))) .cse1) (or (not .cse1) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_DerPreprocessor_11 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_11) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((v_DerPreprocessor_11 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_11) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) ((_ sign_extend 32) c_~next_alloc_idx~0)) (_ bv0 64))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (forall ((v_DerPreprocessor_11 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_11) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((v_DerPreprocessor_11 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_11) |c_~#top~0.base|) |c_~#top~0.offset|)))))))) is different from false [2024-09-08 02:26:09,539 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 10 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-09-08 02:26:09,539 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:26:09,539 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [693651231] [2024-09-08 02:26:09,540 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [693651231] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:26:09,540 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:26:09,540 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 7 [2024-09-08 02:26:09,540 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1531517095] [2024-09-08 02:26:09,540 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:26:09,541 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-09-08 02:26:09,542 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:26:09,542 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-09-08 02:26:09,542 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=28, Unknown=1, NotChecked=10, Total=56 [2024-09-08 02:26:09,543 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:09,543 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:26:09,543 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.375) internal successors, (43), 7 states have internal predecessors, (43), 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-09-08 02:26:09,544 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:11,660 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:26:11,666 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (13)] Ended with exit code 0 [2024-09-08 02:26:11,861 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:11,861 INFO L399 AbstractCegarLoop]: === Iteration 2 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:26:11,862 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:26:11,862 INFO L85 PathProgramCache]: Analyzing trace with hash 1293640210, now seen corresponding path program 1 times [2024-09-08 02:26:11,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:26:11,862 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1868420608] [2024-09-08 02:26:11,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:26:11,862 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:11,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:26:11,864 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:26:11,865 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (14)] Waiting until timeout for monitored process [2024-09-08 02:26:12,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:26:12,061 INFO L262 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 17 conjuncts are in the unsatisfiable core [2024-09-08 02:26:12,064 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:26:12,140 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 11 treesize of output 7 [2024-09-08 02:26:12,410 INFO L349 Elim1Store]: treesize reduction 70, result has 17.6 percent of original size [2024-09-08 02:26:12,411 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 35 treesize of output 25 [2024-09-08 02:26:12,517 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 10 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-09-08 02:26:12,518 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:26:12,870 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse4 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse0 (= |c_thr1Thread1of3ForFork0_push_~oldTop~0#1| (select .cse4 |c_~#top~0.offset|)))) (let ((.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0)) (.cse1 (store |c_#memory_int| |c_~#top~0.base| (store .cse4 |c_~#top~0.offset| |c_thr1Thread1of3ForFork0_push_#t~mem12#1|))) (.cse2 (not .cse0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (or .cse0 (forall ((v_DerPreprocessor_12 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) .cse2) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse2) (or .cse0 (forall ((v_DerPreprocessor_14 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_14) |c_~#top~0.base|) |c_~#top~0.offset|)))) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse2) (or .cse0 (forall ((v_DerPreprocessor_15 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_15) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (or (forall ((v_DerPreprocessor_13 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_13) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3) (_ bv0 64))) .cse0) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse2))))) is different from false [2024-09-08 02:26:13,010 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse4 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse0 (= |c_thr1Thread1of3ForFork0_push_~oldTop~0#1| (select .cse4 |c_~#top~0.offset|)))) (let ((.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0)) (.cse1 (store |c_#memory_int| |c_~#top~0.base| (store .cse4 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset|)))) (.cse2 (not .cse0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (or .cse0 (forall ((v_DerPreprocessor_12 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_12) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or .cse0 (forall ((v_DerPreprocessor_14 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_14) |c_~#top~0.base|) |c_~#top~0.offset|)))) (or .cse0 (forall ((v_DerPreprocessor_15 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_15) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse2) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse2) (or (forall ((v_DerPreprocessor_13 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_13) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3) (_ bv0 64))) .cse0) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse2) (or (forall ((|thr1Thread1of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread1of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))) |c_~#top~0.base|) |c_~#top~0.offset|)))) .cse2))))) is different from false [2024-09-08 02:26:13,619 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:13,619 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 57 [2024-09-08 02:26:13,630 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:13,630 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:26:14,121 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:26:14,122 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 6 select indices, 6 select index equivalence classes, 0 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 15 case distinctions, treesize of input 1304 treesize of output 1388 [2024-09-08 02:26:14,162 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 689 treesize of output 673 [2024-09-08 02:26:14,191 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 663 treesize of output 647 [2024-09-08 02:26:14,213 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 649 treesize of output 633 [2024-09-08 02:26:14,257 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 625 treesize of output 609 [2024-09-08 02:26:14,983 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 26 treesize of output 22 [2024-09-08 02:26:15,147 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 10 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-09-08 02:26:15,148 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-09-08 02:26:15,148 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1868420608] [2024-09-08 02:26:15,148 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1868420608] provided 0 perfect and 2 imperfect interpolant sequences [2024-09-08 02:26:15,148 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2024-09-08 02:26:15,148 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6] total 12 [2024-09-08 02:26:15,148 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1523780428] [2024-09-08 02:26:15,148 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2024-09-08 02:26:15,150 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2024-09-08 02:26:15,150 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-09-08 02:26:15,151 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-09-08 02:26:15,152 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=82, Unknown=2, NotChecked=38, Total=156 [2024-09-08 02:26:15,152 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:15,152 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-08 02:26:15,153 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.230769230769231) internal successors, (55), 12 states have internal predecessors, (55), 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-09-08 02:26:15,153 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:26:15,153 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-08 02:26:19,000 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-08 02:26:19,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2024-09-08 02:26:19,006 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (14)] Ended with exit code 0 [2024-09-08 02:26:19,201 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:19,202 INFO L399 AbstractCegarLoop]: === Iteration 3 === Targeting thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [thr1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thr1Err1ASSERT_VIOLATIONWITNESS_INVARIANT] === [2024-09-08 02:26:19,202 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-08 02:26:19,202 INFO L85 PathProgramCache]: Analyzing trace with hash -456160010, now seen corresponding path program 1 times [2024-09-08 02:26:19,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-09-08 02:26:19,203 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1261974386] [2024-09-08 02:26:19,203 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-08 02:26:19,203 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-09-08 02:26:19,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat [2024-09-08 02:26:19,204 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-09-08 02:26:19,205 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (15)] Waiting until timeout for monitored process [2024-09-08 02:26:19,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-08 02:26:19,524 INFO L262 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-09-08 02:26:19,529 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-08 02:26:19,683 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 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 11 treesize of output 7 [2024-09-08 02:26:19,858 INFO L349 Elim1Store]: treesize reduction 13, result has 45.8 percent of original size [2024-09-08 02:26:19,858 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 22 [2024-09-08 02:26:20,286 INFO L349 Elim1Store]: treesize reduction 36, result has 61.7 percent of original size [2024-09-08 02:26:20,286 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 6 case distinctions, treesize of input 42 treesize of output 83 [2024-09-08 02:26:20,735 INFO L349 Elim1Store]: treesize reduction 93, result has 41.9 percent of original size [2024-09-08 02:26:20,736 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 6 case distinctions, treesize of input 74 treesize of output 100 [2024-09-08 02:26:21,212 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-08 02:26:21,212 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-09-08 02:26:21,464 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse0 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread3of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread3of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) ((_ sign_extend 32) .cse0)) (_ bv0 64))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread3of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread3of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) (= (bvsrem .cse0 (_ bv2 32)) (_ bv1 32)))) .cse1) (or (not .cse1) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) ((_ sign_extend 32) c_~next_alloc_idx~0)) (_ bv0 64))))))) is different from false [2024-09-08 02:26:21,581 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse1 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse0 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) ((_ sign_extend 32) .cse0) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (= (bvsrem .cse0 (_ bv2 32)) (_ bv1 32)) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) .cse1) (or (not .cse1) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store |c_#memory_int| |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) ((_ sign_extend 32) c_~next_alloc_idx~0)) (_ bv0 64))))))) is different from false [2024-09-08 02:26:26,441 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse67 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse14 (= |c_thr1Thread2of3ForFork0_push_~oldTop~0#1| (select .cse67 |c_~#top~0.offset|)))) (let ((.cse41 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse3 (bvsle c_~next_alloc_idx~0 (_ bv66 32))) (.cse6 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse1 (store |c_#memory_int| |c_~#top~0.base| (store .cse67 |c_~#top~0.offset| |c_thr1Thread2of3ForFork0_push_#t~mem12#1|))) (.cse8 (not .cse14))) (and (or (let ((.cse35 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse20 ((_ sign_extend 32) .cse35))) (and (or (let ((.cse4 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse7 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse0 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse0 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse0 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse0 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse2 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select (store .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse2 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (or .cse3 .cse4) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse5 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (or .cse4 .cse6))) .cse8) (or (let ((.cse9 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse13 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (and (or .cse6 .cse9) (or .cse3 .cse9) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse10 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse10 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store .cse10 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse10 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse11 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select (store .cse11 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse11 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse12 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))))) .cse8) (or .cse14 (let ((.cse18 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (let ((.cse19 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (store .cse19 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse19 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (not (= (_ bv2 32) (select (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse15 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse15 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse16 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (_ bv0 32) (select (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse17 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse17 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or .cse3 .cse18) (or .cse18 .cse6)))) (or (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse20 (bvneg ((_ sign_extend 32) (select (select (let ((.cse21 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse21 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse21 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))) .cse6) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse22 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse20 (bvneg ((_ sign_extend 32) (select (select (store .cse22 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse22 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse8) (or .cse14 (and (or .cse6 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse23 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse24 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (or (bvsle (select (select .cse24 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse24 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse24 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20) (_ bv0 64))))))) (or (let ((.cse27 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse29 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse29 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse29 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse25 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse25 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse25 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse26 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (or .cse3 .cse27) (or .cse6 .cse27) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse28 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse28 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse28 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset|))))))) .cse8) (or .cse14 (let ((.cse30 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (let ((.cse34 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (store .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (and (or .cse3 .cse30) (or .cse30 .cse6) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse31 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (or (bvsle (select (select (store .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse31 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse32 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (or (bvsle (select (select (store .cse32 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse32 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse32 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse33 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (or (bvsle (select (select (store .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select .cse33 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))) (= (bvsrem .cse35 (_ bv2 32)) (_ bv1 32)) (or .cse14 (let ((.cse38 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (let ((.cse40 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (store .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse36 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (or (bvsle (_ bv0 32) (select (select .cse36 |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select (store .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse37 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (or (not (= (select (select .cse37 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (not (= (_ bv2 32) (select (select (store .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (or .cse3 .cse38) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse39 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (or (bvsle (select (select .cse39 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (or .cse38 .cse6))))))) .cse41) (or (not .cse41) (let ((.cse49 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and .cse3 (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse42 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse42 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse42 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse43 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse43 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse43 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse44 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse44 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse44 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse8) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse45 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse45 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse45 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse46 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse46 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse46 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse47 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse47 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse47 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse8) (or .cse14 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse48 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsle (_ bv0 32) (select (select .cse48 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse48 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse50 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse50 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse50 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse51 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse51 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (_ bv2 32) (select (select .cse51 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse52 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse52 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse52 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse53 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select .cse53 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store .cse53 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse54 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select (store .cse54 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse54 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse8) (or .cse14 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse55 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse55 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse55 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse56 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse56 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse56 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse57 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse57 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select .cse57 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or .cse14 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse58 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse58 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse58 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse59 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse59 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select .cse59 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse60 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse60 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select .cse60 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) .cse6 (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse61 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse61 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse61 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse62 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse62 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse62 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse63 (store .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse1 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select .cse63 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse49 (bvneg ((_ sign_extend 32) (select (select (store .cse63 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) .cse8) (or (and (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse64 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse64 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse64 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse65 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse65 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse65 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse66 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse66 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse66 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse14)))))))) is different from true [2024-09-08 02:26:32,317 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse48 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse1 (= |c_thr1Thread2of3ForFork0_push_~oldTop~0#1| (select .cse48 |c_~#top~0.offset|)))) (let ((.cse20 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse10 (store |c_#memory_int| |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))) (.cse13 (not .cse1)) (.cse0 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (not .cse0) (let ((.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse2 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsle (_ bv0 32) (select (select .cse2 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse4 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse4 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse4 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (_ bv2 32) (select (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse6 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse7 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse7 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse8 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse8 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse9 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse9 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse11 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse11 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse12 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse13) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse14 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse14 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse15 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse16 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse17 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse18 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse18 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (store .cse18 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse19 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse19 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse13) .cse20 (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse21 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse21 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (store .cse21 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse22 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select (store .cse22 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse13) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse24 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse24 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store .cse24 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse25 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse25 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse26 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse13) (or (and (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse27 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse27 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse27 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse28 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse28 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse29 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse29 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse29 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse1)))) (or (let ((.cse47 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse32 ((_ sign_extend 32) .cse47))) (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse30 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse30 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse30 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse13) (or .cse1 (and (or .cse20 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse31 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (store .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse32) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse33 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (or (bvsle (select (select .cse33 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse32) (_ bv0 64))))))) (or (and (or .cse20 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse32 (bvneg ((_ sign_extend 32) (select (select (let ((.cse34 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse35 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse32 (bvneg ((_ sign_extend 32) (select (select (store .cse35 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse35 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse35 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse13) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse36 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (not (= (_ bv2 32) (select (select .cse36 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse37 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (_ bv0 32) (select (select .cse37 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse38 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (select (select .cse38 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse38 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse38 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (let ((.cse39 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (store .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20))) (or .cse1 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (let ((.cse40 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (store .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))) (or (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse41 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse41 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse41 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse42 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse42 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse42 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse42 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse43 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse43 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse43 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse43 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse44 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse44 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse44 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse44 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse13) (or .cse1 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (let ((.cse45 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (store .cse45 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse45 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse46 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse46 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse46 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) .cse13) (= (bvsrem .cse47 (_ bv2 32)) (_ bv1 32))))) .cse0))))) is different from false [2024-09-08 02:26:34,334 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse48 (select |c_#memory_int| |c_~#top~0.base|))) (let ((.cse1 (= |c_thr1Thread2of3ForFork0_push_~oldTop~0#1| (select .cse48 |c_~#top~0.offset|)))) (let ((.cse20 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse10 (store |c_#memory_int| |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))) (.cse13 (not .cse1)) (.cse0 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (not .cse0) (let ((.cse3 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse2 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsle (_ bv0 32) (select (select .cse2 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse4 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse4 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse4 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_21 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_21))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (_ bv2 32) (select (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse6 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse6 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse7 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse7 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_20 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse8 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_20))) (or (bvsle (_ bv0 32) (select (select (store .cse8 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse9 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse9 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse11 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse11 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse12 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse3 (bvneg ((_ sign_extend 32) (select (select (store .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse13) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse14 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse14 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse15 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_22 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse16 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_22))) (or (bvsle (select (select (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset|)))))))) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse17 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse18 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse18 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (store .cse18 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse19 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse19 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse13) .cse20 (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse21 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse21 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (store .cse21 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse22 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select (store .cse22 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse13) (or (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse24 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse24 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store .cse24 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse25 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse25 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse26 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse13) (or (and (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse27 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse27 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse27 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse28 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse28 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_DerPreprocessor_23 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse29 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_23))) (or (not (= (_ bv2 32) (select (select (store .cse29 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse29 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse1)))) (or (let ((.cse47 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse32 ((_ sign_extend 32) .cse47))) (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse30 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse30 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse30 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) .cse13) (or .cse1 (and (or .cse20 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse31 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (store .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse31 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse32) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_30 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse33 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_30))) (or (bvsle (select (select .cse33 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse33 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse32) (_ bv0 64))))))) (or (and (or .cse20 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse32 (bvneg ((_ sign_extend 32) (select (select (let ((.cse34 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse34 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse35 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse32 (bvneg ((_ sign_extend 32) (select (select (store .cse35 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse35 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse35 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse13) (or .cse1 (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse36 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (not (= (_ bv2 32) (select (select .cse36 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse36 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse37 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (_ bv0 32) (select (select .cse37 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse37 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse38 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (or (bvsle (select (select .cse38 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse38 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse38 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_27 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (_ bv0 32) (select (select (let ((.cse39 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_27))) (store .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse39 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20))) (or .cse1 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_26 (Array (_ BitVec 32) (_ BitVec 32)))) (bvsle (select (select (let ((.cse40 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_26))) (store .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse40 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))) (or (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse41 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse41 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse41 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse20) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse42 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse42 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse42 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse42 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse43 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse43 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse43 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse43 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse44 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse44 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse44 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse44 |c_~#top~0.base|) |c_~#top~0.offset|)))))) .cse13) (or .cse1 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_28 (Array (_ BitVec 32) (_ BitVec 32)))) (not (= (_ bv2 32) (select (select (let ((.cse45 (store |c_#memory_int| |thr1Thread2of3ForFork0_push_~#ret~0#1.base| v_DerPreprocessor_28))) (store .cse45 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse45 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse46 (store .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse10 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse46 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse46 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) .cse13) (= (bvsrem .cse47 (_ bv2 32)) (_ bv1 32))))) .cse0))))) is different from true [2024-09-08 02:26:37,881 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse0 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse3 (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))) (.cse2 (store |c_#memory_int| |c_~#top~0.base| (store (select |c_#memory_int| |c_~#top~0.base|) |c_~#top~0.offset| (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (and (or .cse0 (let ((.cse11 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse4 ((_ sign_extend 32) .cse11))) (and (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse1 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse1 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse1 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse3) (or .cse3 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) .cse4 (bvneg ((_ sign_extend 32) (select (select (let ((.cse5 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse5 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse6 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse6 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse7 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse7 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse7 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse8 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse4 (bvneg ((_ sign_extend 32) (select (select (store .cse8 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse8 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse9 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse10 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (store .cse10 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse10 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (= (bvsrem .cse11 (_ bv2 32)) (_ bv1 32)) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32))) (let ((.cse12 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse12 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset|))))))))) (or (not .cse0) (let ((.cse20 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse13 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (_ bv0 32) (select (select (store .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse13 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse14 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store .cse14 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse15 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse15 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse16 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (_ bv2 32) (select (select (store .cse17 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse18 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (not (= (select (select .cse18 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (store .cse18 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse19 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse20 (bvneg ((_ sign_extend 32) (select (select (store .cse19 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse21 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse20 (bvneg ((_ sign_extend 32) (select (select (store .cse21 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse21 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse22 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsge (bvadd (_ bv63 64) .cse20 (bvneg ((_ sign_extend 32) (select (select (store .cse22 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))) .cse3 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse24 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select (store .cse24 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse24 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse25 (store .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse2 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32))))) (or (bvsle (select (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse25 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))))) is different from true [2024-09-08 02:26:47,269 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse0 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (not .cse0) (let ((.cse2 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_prenex_237 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_235 (_ BitVec 32)) (v_prenex_236 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse1 (let ((.cse3 (let ((.cse4 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse4 |c_~#top~0.base| (store (select .cse4 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse4 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse3 v_prenex_236 (store (select .cse3 v_prenex_236) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store .cse1 v_prenex_235 v_prenex_237) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) .cse2) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse1 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((v_prenex_230 (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_231 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_229 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (let ((.cse6 (let ((.cse7 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse7 |c_~#top~0.base| (store (select .cse7 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse7 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse6 v_prenex_230 (store (select .cse6 v_prenex_230) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse5 v_prenex_229 v_prenex_231) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_226 (_ BitVec 32)) (v_prenex_227 (_ BitVec 32)) (v_prenex_228 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse8 (let ((.cse9 (let ((.cse10 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse10 |c_~#top~0.base| (store (select .cse10 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse10 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse9 v_prenex_227 (store (select .cse9 v_prenex_227) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store .cse8 v_prenex_226 v_prenex_228) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_prenex_213 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_211 (_ BitVec 32)) (v_prenex_212 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse11 (let ((.cse12 (let ((.cse13 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse13 |c_~#top~0.base| (store (select .cse13 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse13 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse12 v_prenex_212 (store (select .cse12 v_prenex_212) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse11 v_prenex_211 v_prenex_213) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_210 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_208 (_ BitVec 32)) (v_prenex_209 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse14 (let ((.cse15 (let ((.cse16 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse16 |c_~#top~0.base| (store (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse16 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse15 v_prenex_209 (store (select .cse15 v_prenex_209) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse14 v_prenex_208 v_prenex_210) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_206 (_ BitVec 32)) (v_prenex_205 (_ BitVec 32)) (v_prenex_207 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (let ((.cse18 (let ((.cse19 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse19 |c_~#top~0.base| (store (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse19 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse18 v_prenex_206 (store (select .cse18 v_prenex_206) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select (store .cse17 v_prenex_205 v_prenex_207) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_217 (_ BitVec 32)) (v_prenex_218 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_219 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse20 (let ((.cse21 (let ((.cse22 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse22 |c_~#top~0.base| (store (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse22 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse21 v_prenex_218 (store (select .cse21 v_prenex_218) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store .cse20 v_prenex_217 v_prenex_219) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse20 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (let ((.cse24 (let ((.cse25 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse25 |c_~#top~0.base| (store (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse25 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_prenex_225 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_224 (_ BitVec 32)) (v_prenex_223 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse26 (let ((.cse27 (let ((.cse28 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse28 |c_~#top~0.base| (store (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse28 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse27 v_prenex_224 (store (select .cse27 v_prenex_224) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse26 v_prenex_223 v_prenex_225) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_222 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_220 (_ BitVec 32)) (v_prenex_221 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse29 (let ((.cse30 (let ((.cse31 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse31 |c_~#top~0.base| (store (select .cse31 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse31 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse30 v_prenex_221 (store (select .cse30 v_prenex_221) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse29 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse29 v_prenex_220 v_prenex_222) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_234 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_233 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_232 (_ BitVec 32))) (let ((.cse32 (let ((.cse33 (let ((.cse34 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse34 |c_~#top~0.base| (store (select .cse34 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse34 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse33 v_prenex_233 (store (select .cse33 v_prenex_233) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse32 v_prenex_232 v_prenex_234) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (_ bv2 32) (select (select .cse32 |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((v_prenex_216 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_215 (_ BitVec 32)) (v_prenex_214 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse35 (let ((.cse36 (let ((.cse37 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse37 |c_~#top~0.base| (store (select .cse37 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse37 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse36 v_prenex_215 (store (select .cse36 v_prenex_215) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse35 v_prenex_214 v_prenex_216) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse35 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))))) (or (let ((.cse90 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse38 (bvsgt (bvadd (_ bv3 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse73 (= (bvsrem .cse90 (_ bv2 32)) (_ bv1 32)))) (and (or (not .cse38) (let ((.cse55 ((_ sign_extend 32) .cse90)) (.cse43 (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse40 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse41 (select .cse40 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse39 (store .cse40 |c_~#top~0.base| (store .cse41 |c_~#top~0.offset| (select (select .cse40 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse39 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse39 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store (let ((.cse42 (store .cse40 |c_~#top~0.base| (store .cse41 |c_~#top~0.offset| .cse43)))) (store .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse45 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse46 (select .cse45 |c_~#top~0.base|))) (or (bvsle (select (select (store (let ((.cse44 (store .cse45 |c_~#top~0.base| (store .cse46 |c_~#top~0.offset| .cse43)))) (store .cse44 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse44 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select (let ((.cse47 (store .cse45 |c_~#top~0.base| (store .cse46 |c_~#top~0.offset| (select (select .cse45 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse47 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse47 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse49 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse50 (select .cse49 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse48 (store .cse49 |c_~#top~0.base| (store .cse50 |c_~#top~0.offset| (select (select .cse49 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse48 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse48 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select (store (let ((.cse51 (store .cse49 |c_~#top~0.base| (store .cse50 |c_~#top~0.offset| .cse43)))) (store .cse51 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse51 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse53 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse54 (select .cse53 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse52 (store .cse53 |c_~#top~0.base| (store .cse54 |c_~#top~0.offset| (select (select .cse53 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse52 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse52 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse56 (store .cse53 |c_~#top~0.base| (store .cse54 |c_~#top~0.offset| .cse43)))) (store .cse56 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse56 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse58 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse59 (select .cse58 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse57 (store .cse58 |c_~#top~0.base| (store .cse59 |c_~#top~0.offset| (select (select .cse58 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse60 (store .cse58 |c_~#top~0.base| (store .cse59 |c_~#top~0.offset| .cse43)))) (store .cse60 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse60 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse62 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse63 (select .cse62 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse61 (store .cse62 |c_~#top~0.base| (store .cse63 |c_~#top~0.offset| (select (select .cse62 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store (let ((.cse64 (store .cse62 |c_~#top~0.base| (store .cse63 |c_~#top~0.offset| .cse43)))) (store .cse64 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse64 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse66 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse67 (select .cse66 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse65 (store .cse66 |c_~#top~0.base| (store .cse67 |c_~#top~0.offset| (select (select .cse66 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse65 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse65 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse68 (store .cse66 |c_~#top~0.base| (store .cse67 |c_~#top~0.offset| .cse43)))) (store .cse68 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse68 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse70 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse71 (select .cse70 |c_~#top~0.base|))) (or (not (= (_ bv2 32) (select (select (store (let ((.cse69 (store .cse70 |c_~#top~0.base| (store .cse71 |c_~#top~0.offset| .cse43)))) (store .cse69 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse69 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select (let ((.cse72 (store .cse70 |c_~#top~0.base| (store .cse71 |c_~#top~0.offset| (select (select .cse70 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse72 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse72 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse73 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse75 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse76 (select .cse75 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse74 (store .cse75 |c_~#top~0.base| (store .cse76 |c_~#top~0.offset| .cse43)))) (store .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (let ((.cse77 (store .cse75 |c_~#top~0.base| (store .cse76 |c_~#top~0.offset| (select (select .cse75 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse77 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse77 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse79 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse80 (select .cse79 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse78 (store .cse79 |c_~#top~0.base| (store .cse80 |c_~#top~0.offset| .cse43)))) (store .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select (let ((.cse81 (store .cse79 |c_~#top~0.base| (store .cse80 |c_~#top~0.offset| (select (select .cse79 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse81 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse81 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse83 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse84 (select .cse83 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse82 (store .cse83 |c_~#top~0.base| (store .cse84 |c_~#top~0.offset| (select (select .cse83 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse82 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse82 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store (let ((.cse85 (store .cse83 |c_~#top~0.base| (store .cse84 |c_~#top~0.offset| .cse43)))) (store .cse85 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse85 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse87 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse88 (select .cse87 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse86 (store .cse87 |c_~#top~0.base| (store .cse88 |c_~#top~0.offset| (select (select .cse87 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse86 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse86 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store (let ((.cse89 (store .cse87 |c_~#top~0.base| (store .cse88 |c_~#top~0.offset| .cse43)))) (store .cse89 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse89 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))))))) (or .cse38 (let ((.cse91 (bvadd (_ bv4 32) c_~next_alloc_idx~0))) (let ((.cse104 ((_ sign_extend 32) .cse91))) (and (= (_ bv1 32) (bvsrem .cse91 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse92 (let ((.cse93 (let ((.cse94 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse94 |c_~#top~0.base| (store (select .cse94 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse94 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse93 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse93 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse92 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse92 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse92 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse95 (let ((.cse96 (let ((.cse97 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse97 |c_~#top~0.base| (store (select .cse97 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse97 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse96 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse96 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse95 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse95 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse98 (let ((.cse99 (let ((.cse100 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse100 |c_~#top~0.base| (store (select .cse100 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse100 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse99 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse99 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse98 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse98 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse73) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse101 (let ((.cse102 (let ((.cse103 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse103 |c_~#top~0.base| (store (select .cse103 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse103 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse102 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse102 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse101 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse101 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse104) (_ bv0 64))) .cse73) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse105 (let ((.cse106 (let ((.cse107 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse107 |c_~#top~0.base| (store (select .cse107 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse107 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse106 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse106 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse105 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse105 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse105 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse104) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse108 (let ((.cse109 (let ((.cse110 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse110 |c_~#top~0.base| (store (select .cse110 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse110 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse109 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse109 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse108 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse108 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse108 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse111 (let ((.cse112 (let ((.cse113 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse113 |c_~#top~0.base| (store (select .cse113 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse113 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse112 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse112 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse111 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse111 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse114 (let ((.cse115 (let ((.cse116 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse116 |c_~#top~0.base| (store (select .cse116 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse116 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse115 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse115 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse114 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse114 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse114 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))))))) .cse0))) is different from false [2024-09-08 02:26:49,326 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse0 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (not .cse0) (let ((.cse2 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_prenex_237 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_235 (_ BitVec 32)) (v_prenex_236 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse1 (let ((.cse3 (let ((.cse4 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse4 |c_~#top~0.base| (store (select .cse4 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse4 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse3 v_prenex_236 (store (select .cse3 v_prenex_236) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store .cse1 v_prenex_235 v_prenex_237) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) .cse2) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse1 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((v_prenex_230 (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_231 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_229 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse5 (let ((.cse6 (let ((.cse7 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse7 |c_~#top~0.base| (store (select .cse7 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse7 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse6 v_prenex_230 (store (select .cse6 v_prenex_230) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse5 v_prenex_229 v_prenex_231) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_226 (_ BitVec 32)) (v_prenex_227 (_ BitVec 32)) (v_prenex_228 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse8 (let ((.cse9 (let ((.cse10 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse10 |c_~#top~0.base| (store (select .cse10 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse10 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse9 v_prenex_227 (store (select .cse9 v_prenex_227) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store .cse8 v_prenex_226 v_prenex_228) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_prenex_213 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_211 (_ BitVec 32)) (v_prenex_212 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse11 (let ((.cse12 (let ((.cse13 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse13 |c_~#top~0.base| (store (select .cse13 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse13 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse12 v_prenex_212 (store (select .cse12 v_prenex_212) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse11 v_prenex_211 v_prenex_213) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse11 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_210 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_208 (_ BitVec 32)) (v_prenex_209 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse14 (let ((.cse15 (let ((.cse16 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse16 |c_~#top~0.base| (store (select .cse16 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse16 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse15 v_prenex_209 (store (select .cse15 v_prenex_209) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select .cse14 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse14 v_prenex_208 v_prenex_210) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_206 (_ BitVec 32)) (v_prenex_205 (_ BitVec 32)) (v_prenex_207 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse17 (let ((.cse18 (let ((.cse19 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse19 |c_~#top~0.base| (store (select .cse19 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse19 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse18 v_prenex_206 (store (select .cse18 v_prenex_206) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select (store .cse17 v_prenex_205 v_prenex_207) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select .cse17 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_217 (_ BitVec 32)) (v_prenex_218 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_219 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse20 (let ((.cse21 (let ((.cse22 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse22 |c_~#top~0.base| (store (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse22 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse21 v_prenex_218 (store (select .cse21 v_prenex_218) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse2 (bvneg ((_ sign_extend 32) (select (select (store .cse20 v_prenex_217 v_prenex_219) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse20 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse23 (let ((.cse24 (let ((.cse25 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse25 |c_~#top~0.base| (store (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse25 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_prenex_225 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_224 (_ BitVec 32)) (v_prenex_223 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse26 (let ((.cse27 (let ((.cse28 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse28 |c_~#top~0.base| (store (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse28 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse27 v_prenex_224 (store (select .cse27 v_prenex_224) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse26 v_prenex_223 v_prenex_225) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_222 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_220 (_ BitVec 32)) (v_prenex_221 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse29 (let ((.cse30 (let ((.cse31 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse31 |c_~#top~0.base| (store (select .cse31 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse31 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse30 v_prenex_221 (store (select .cse30 v_prenex_221) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse29 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse29 v_prenex_220 v_prenex_222) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_234 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_233 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_232 (_ BitVec 32))) (let ((.cse32 (let ((.cse33 (let ((.cse34 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse34 |c_~#top~0.base| (store (select .cse34 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse34 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse33 v_prenex_233 (store (select .cse33 v_prenex_233) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse32 v_prenex_232 v_prenex_234) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (_ bv2 32) (select (select .cse32 |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((v_prenex_216 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_215 (_ BitVec 32)) (v_prenex_214 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse35 (let ((.cse36 (let ((.cse37 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse37 |c_~#top~0.base| (store (select .cse37 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse37 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse36 v_prenex_215 (store (select .cse36 v_prenex_215) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse35 v_prenex_214 v_prenex_216) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse35 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))))) (or (let ((.cse90 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse38 (bvsgt (bvadd (_ bv3 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse73 (= (bvsrem .cse90 (_ bv2 32)) (_ bv1 32)))) (and (or (not .cse38) (let ((.cse55 ((_ sign_extend 32) .cse90)) (.cse43 (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse40 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse41 (select .cse40 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse39 (store .cse40 |c_~#top~0.base| (store .cse41 |c_~#top~0.offset| (select (select .cse40 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse39 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse39 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (_ bv2 32) (select (select (store (let ((.cse42 (store .cse40 |c_~#top~0.base| (store .cse41 |c_~#top~0.offset| .cse43)))) (store .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse45 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse46 (select .cse45 |c_~#top~0.base|))) (or (bvsle (select (select (store (let ((.cse44 (store .cse45 |c_~#top~0.base| (store .cse46 |c_~#top~0.offset| .cse43)))) (store .cse44 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse44 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select (let ((.cse47 (store .cse45 |c_~#top~0.base| (store .cse46 |c_~#top~0.offset| (select (select .cse45 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse47 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse47 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse49 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse50 (select .cse49 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse48 (store .cse49 |c_~#top~0.base| (store .cse50 |c_~#top~0.offset| (select (select .cse49 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse48 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse48 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (_ bv2 32) (select (select (store (let ((.cse51 (store .cse49 |c_~#top~0.base| (store .cse50 |c_~#top~0.offset| .cse43)))) (store .cse51 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse51 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse53 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse54 (select .cse53 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse52 (store .cse53 |c_~#top~0.base| (store .cse54 |c_~#top~0.offset| (select (select .cse53 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse52 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse52 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse56 (store .cse53 |c_~#top~0.base| (store .cse54 |c_~#top~0.offset| .cse43)))) (store .cse56 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse56 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse58 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse59 (select .cse58 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse57 (store .cse58 |c_~#top~0.base| (store .cse59 |c_~#top~0.offset| (select (select .cse58 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse60 (store .cse58 |c_~#top~0.base| (store .cse59 |c_~#top~0.offset| .cse43)))) (store .cse60 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse60 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse62 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse63 (select .cse62 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse61 (store .cse62 |c_~#top~0.base| (store .cse63 |c_~#top~0.offset| (select (select .cse62 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select (store (let ((.cse64 (store .cse62 |c_~#top~0.base| (store .cse63 |c_~#top~0.offset| .cse43)))) (store .cse64 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse64 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse66 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse67 (select .cse66 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse65 (store .cse66 |c_~#top~0.base| (store .cse67 |c_~#top~0.offset| (select (select .cse66 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse65 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse65 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse55 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse68 (store .cse66 |c_~#top~0.base| (store .cse67 |c_~#top~0.offset| .cse43)))) (store .cse68 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse68 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse70 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse71 (select .cse70 |c_~#top~0.base|))) (or (not (= (_ bv2 32) (select (select (store (let ((.cse69 (store .cse70 |c_~#top~0.base| (store .cse71 |c_~#top~0.offset| .cse43)))) (store .cse69 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse69 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (select (select (let ((.cse72 (store .cse70 |c_~#top~0.base| (store .cse71 |c_~#top~0.offset| (select (select .cse70 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse72 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse72 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) .cse73 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse75 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse76 (select .cse75 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse74 (store .cse75 |c_~#top~0.base| (store .cse76 |c_~#top~0.offset| .cse43)))) (store .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (let ((.cse77 (store .cse75 |c_~#top~0.base| (store .cse76 |c_~#top~0.offset| (select (select .cse75 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse77 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse77 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse79 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse80 (select .cse79 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse78 (store .cse79 |c_~#top~0.base| (store .cse80 |c_~#top~0.offset| .cse43)))) (store .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select (let ((.cse81 (store .cse79 |c_~#top~0.base| (store .cse80 |c_~#top~0.offset| (select (select .cse79 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse81 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse81 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse83 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse84 (select .cse83 |c_~#top~0.base|))) (or (bvsle (select (select (let ((.cse82 (store .cse83 |c_~#top~0.base| (store .cse84 |c_~#top~0.offset| (select (select .cse83 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse82 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse82 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store (let ((.cse85 (store .cse83 |c_~#top~0.base| (store .cse84 |c_~#top~0.offset| .cse43)))) (store .cse85 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse85 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse87 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (let ((.cse88 (select .cse87 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse86 (store .cse87 |c_~#top~0.base| (store .cse88 |c_~#top~0.offset| (select (select .cse87 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse86 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse86 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store (let ((.cse89 (store .cse87 |c_~#top~0.base| (store .cse88 |c_~#top~0.offset| .cse43)))) (store .cse89 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse89 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))))))) (or .cse38 (let ((.cse91 (bvadd (_ bv4 32) c_~next_alloc_idx~0))) (let ((.cse104 ((_ sign_extend 32) .cse91))) (and (= (_ bv1 32) (bvsrem .cse91 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse92 (let ((.cse93 (let ((.cse94 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse94 |c_~#top~0.base| (store (select .cse94 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse94 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse93 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse93 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse92 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse92 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select .cse92 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (_ bv2 32) (select (select (let ((.cse95 (let ((.cse96 (let ((.cse97 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse97 |c_~#top~0.base| (store (select .cse97 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse97 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse96 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse96 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse95 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse95 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|)))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse98 (let ((.cse99 (let ((.cse100 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse100 |c_~#top~0.base| (store (select .cse100 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse100 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse99 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse99 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse98 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse98 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse73) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse101 (let ((.cse102 (let ((.cse103 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse103 |c_~#top~0.base| (store (select .cse103 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse103 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse102 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse102 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse101 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse101 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse104) (_ bv0 64))) .cse73) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse105 (let ((.cse106 (let ((.cse107 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse107 |c_~#top~0.base| (store (select .cse107 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse107 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse106 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse106 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse105 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse105 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse105 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse104) (_ bv0 64))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse108 (let ((.cse109 (let ((.cse110 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse110 |c_~#top~0.base| (store (select .cse110 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse110 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse109 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse109 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse108 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse108 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select .cse108 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse111 (let ((.cse112 (let ((.cse113 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse113 |c_~#top~0.base| (store (select .cse113 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse113 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse112 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse112 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse111 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse111 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse114 (let ((.cse115 (let ((.cse116 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread1of3ForFork0_push_~#newTop~0#1.offset| c_~next_alloc_idx~0)))) (store .cse116 |c_~#top~0.base| (store (select .cse116 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse116 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse115 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse115 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse114 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse114 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse90)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse114 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))))))) .cse0))) is different from true [2024-09-08 02:26:55,234 WARN L854 $PredicateComparison]: unable to prove that (let ((.cse79 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse3 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse0 (bvsgt (bvadd (_ bv3 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse19 (= (bvsrem .cse3 (_ bv2 32)) (_ bv1 32)))) (and (or .cse0 (let ((.cse1 (bvadd (_ bv4 32) c_~next_alloc_idx~0))) (let ((.cse10 ((_ sign_extend 32) .cse1))) (and (= (_ bv1 32) (bvsrem .cse1 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse2 (let ((.cse4 (let ((.cse5 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse5 |c_~#top~0.base| (store (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse5 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse4 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse6 (let ((.cse7 (let ((.cse8 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse8 |c_~#top~0.base| (store (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse8 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse7 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse7 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select .cse6 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse9 (let ((.cse11 (let ((.cse12 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse12 |c_~#top~0.base| (store (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse12 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse11 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse11 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse10) (_ bv0 64)) (bvsle (select (select .cse9 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse13 (let ((.cse14 (let ((.cse15 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse15 |c_~#top~0.base| (store (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse15 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse14 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse14 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse16 (let ((.cse17 (let ((.cse18 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse18 |c_~#top~0.base| (store (select .cse18 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse18 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse17 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse17 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse19) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse20 (let ((.cse21 (let ((.cse22 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse22 |c_~#top~0.base| (store (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse22 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse21 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse21 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse20 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse20 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse10) (_ bv0 64))) .cse19) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse23 (let ((.cse24 (let ((.cse25 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse25 |c_~#top~0.base| (store (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse25 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse26 (let ((.cse27 (let ((.cse28 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse28 |c_~#top~0.base| (store (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse28 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse27 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse27 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))))))))) (or (not .cse0) (let ((.cse65 ((_ sign_extend 32) .cse3)) (.cse32 (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse30 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse31 (select .cse30 |c_~#top~0.base|))) (or (not (= (select (select (store (let ((.cse29 (store .cse30 |c_~#top~0.base| (store .cse31 |c_~#top~0.offset| .cse32)))) (store .cse29 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse29 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (let ((.cse33 (store .cse30 |c_~#top~0.base| (store .cse31 |c_~#top~0.offset| (select (select .cse30 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse33 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse33 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse35 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse36 (select .cse35 |c_~#top~0.base|))) (or (bvsle (select (select (store (let ((.cse34 (store .cse35 |c_~#top~0.base| (store .cse36 |c_~#top~0.offset| .cse32)))) (store .cse34 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse34 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (let ((.cse37 (store .cse35 |c_~#top~0.base| (store .cse36 |c_~#top~0.offset| (select (select .cse35 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse37 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse37 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse39 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse40 (select .cse39 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse38 (store .cse39 |c_~#top~0.base| (store .cse40 |c_~#top~0.offset| (select (select .cse39 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse38 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse38 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (store (let ((.cse41 (store .cse39 |c_~#top~0.base| (store .cse40 |c_~#top~0.offset| .cse32)))) (store .cse41 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse41 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse43 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse44 (select .cse43 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse42 (store .cse43 |c_~#top~0.base| (store .cse44 |c_~#top~0.offset| .cse32)))) (store .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select (let ((.cse45 (store .cse43 |c_~#top~0.base| (store .cse44 |c_~#top~0.offset| (select (select .cse43 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse45 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse45 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse47 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse48 (select .cse47 |c_~#top~0.base|))) (or (not (= (select (select (store (let ((.cse46 (store .cse47 |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| .cse32)))) (store .cse46 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse46 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (let ((.cse49 (store .cse47 |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| (select (select .cse47 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse49 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse49 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse51 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse52 (select .cse51 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse50 (store .cse51 |c_~#top~0.base| (store .cse52 |c_~#top~0.offset| (select (select .cse51 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse50 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse50 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (not (= (select (select (store (let ((.cse53 (store .cse51 |c_~#top~0.base| (store .cse52 |c_~#top~0.offset| .cse32)))) (store .cse53 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse53 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse55 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse56 (select .cse55 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse54 (store .cse55 |c_~#top~0.base| (store .cse56 |c_~#top~0.offset| .cse32)))) (store .cse54 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse54 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (let ((.cse57 (store .cse55 |c_~#top~0.base| (store .cse56 |c_~#top~0.offset| (select (select .cse55 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse59 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse60 (select .cse59 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse58 (store .cse59 |c_~#top~0.base| (store .cse60 |c_~#top~0.offset| (select (select .cse59 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse58 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse58 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store (let ((.cse61 (store .cse59 |c_~#top~0.base| (store .cse60 |c_~#top~0.offset| .cse32)))) (store .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse63 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse64 (select .cse63 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse62 (store .cse63 |c_~#top~0.base| (store .cse64 |c_~#top~0.offset| (select (select .cse63 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse62 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse62 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse66 (store .cse63 |c_~#top~0.base| (store .cse64 |c_~#top~0.offset| .cse32)))) (store .cse66 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse66 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse68 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse69 (select .cse68 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse67 (store .cse68 |c_~#top~0.base| (store .cse69 |c_~#top~0.offset| (select (select .cse68 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse67 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse67 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse70 (store .cse68 |c_~#top~0.base| (store .cse69 |c_~#top~0.offset| .cse32)))) (store .cse70 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse70 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse72 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse73 (select .cse72 |c_~#top~0.base|))) (or (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse71 (store .cse72 |c_~#top~0.base| (store .cse73 |c_~#top~0.offset| .cse32)))) (store .cse71 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse71 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select (let ((.cse74 (store .cse72 |c_~#top~0.base| (store .cse73 |c_~#top~0.offset| (select (select .cse72 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse19 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse76 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse77 (select .cse76 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse75 (store .cse76 |c_~#top~0.base| (store .cse77 |c_~#top~0.offset| .cse32)))) (store .cse75 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse75 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (let ((.cse78 (store .cse76 |c_~#top~0.base| (store .cse77 |c_~#top~0.offset| (select (select .cse76 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))))))) .cse79) (or (not .cse79) (let ((.cse81 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_prenex_237 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_235 (_ BitVec 32)) (v_prenex_236 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse80 (let ((.cse82 (let ((.cse83 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse83 |c_~#top~0.base| (store (select .cse83 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse83 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse82 v_prenex_236 (store (select .cse82 v_prenex_236) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store .cse80 v_prenex_235 v_prenex_237) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) .cse81) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse80 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((v_prenex_230 (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_231 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_229 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse84 (let ((.cse85 (let ((.cse86 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse86 |c_~#top~0.base| (store (select .cse86 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse86 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse85 v_prenex_230 (store (select .cse85 v_prenex_230) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse84 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse84 v_prenex_229 v_prenex_231) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_226 (_ BitVec 32)) (v_prenex_227 (_ BitVec 32)) (v_prenex_228 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse87 (let ((.cse88 (let ((.cse89 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse89 |c_~#top~0.base| (store (select .cse89 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse89 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse88 v_prenex_227 (store (select .cse88 v_prenex_227) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse81 (bvneg ((_ sign_extend 32) (select (select (store .cse87 v_prenex_226 v_prenex_228) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse87 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_prenex_213 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_211 (_ BitVec 32)) (v_prenex_212 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse90 (let ((.cse91 (let ((.cse92 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse92 |c_~#top~0.base| (store (select .cse92 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse92 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse91 v_prenex_212 (store (select .cse91 v_prenex_212) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse90 v_prenex_211 v_prenex_213) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse90 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_210 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_208 (_ BitVec 32)) (v_prenex_209 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse93 (let ((.cse94 (let ((.cse95 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse95 |c_~#top~0.base| (store (select .cse95 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse95 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse94 v_prenex_209 (store (select .cse94 v_prenex_209) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select .cse93 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse93 v_prenex_208 v_prenex_210) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_206 (_ BitVec 32)) (v_prenex_205 (_ BitVec 32)) (v_prenex_207 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse96 (let ((.cse97 (let ((.cse98 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse98 |c_~#top~0.base| (store (select .cse98 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse98 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse97 v_prenex_206 (store (select .cse97 v_prenex_206) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select (store .cse96 v_prenex_205 v_prenex_207) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select .cse96 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_217 (_ BitVec 32)) (v_prenex_218 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_219 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse99 (let ((.cse100 (let ((.cse101 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse101 |c_~#top~0.base| (store (select .cse101 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse101 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse100 v_prenex_218 (store (select .cse100 v_prenex_218) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse81 (bvneg ((_ sign_extend 32) (select (select (store .cse99 v_prenex_217 v_prenex_219) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse99 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse102 (let ((.cse103 (let ((.cse104 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse104 |c_~#top~0.base| (store (select .cse104 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse104 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse103 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse103 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse102 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse102 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_prenex_225 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_224 (_ BitVec 32)) (v_prenex_223 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse105 (let ((.cse106 (let ((.cse107 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse107 |c_~#top~0.base| (store (select .cse107 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse107 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse106 v_prenex_224 (store (select .cse106 v_prenex_224) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse105 v_prenex_223 v_prenex_225) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse105 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_222 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_220 (_ BitVec 32)) (v_prenex_221 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse108 (let ((.cse109 (let ((.cse110 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse110 |c_~#top~0.base| (store (select .cse110 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse110 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse109 v_prenex_221 (store (select .cse109 v_prenex_221) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse108 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse108 v_prenex_220 v_prenex_222) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_234 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_233 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_232 (_ BitVec 32))) (let ((.cse111 (let ((.cse112 (let ((.cse113 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse113 |c_~#top~0.base| (store (select .cse113 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse113 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse112 v_prenex_233 (store (select .cse112 v_prenex_233) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse111 v_prenex_232 v_prenex_234) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (_ bv2 32) (select (select .cse111 |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((v_prenex_216 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_215 (_ BitVec 32)) (v_prenex_214 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse114 (let ((.cse115 (let ((.cse116 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse116 |c_~#top~0.base| (store (select .cse116 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse116 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse115 v_prenex_215 (store (select .cse115 v_prenex_215) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse114 v_prenex_214 v_prenex_216) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse114 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))))))) is different from false [2024-09-08 02:26:57,369 WARN L876 $PredicateComparison]: unable to prove that (let ((.cse79 (bvsgt (bvadd (_ bv1 32) c_~next_alloc_idx~0) (_ bv65 32)))) (and (or (let ((.cse3 (bvadd (_ bv2 32) c_~next_alloc_idx~0))) (let ((.cse0 (bvsgt (bvadd (_ bv3 32) c_~next_alloc_idx~0) (_ bv65 32))) (.cse19 (= (bvsrem .cse3 (_ bv2 32)) (_ bv1 32)))) (and (or .cse0 (let ((.cse1 (bvadd (_ bv4 32) c_~next_alloc_idx~0))) (let ((.cse10 ((_ sign_extend 32) .cse1))) (and (= (_ bv1 32) (bvsrem .cse1 (_ bv2 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (select (select (let ((.cse2 (let ((.cse4 (let ((.cse5 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse5 |c_~#top~0.base| (store (select .cse5 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse5 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse4 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse4 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse2 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse6 (let ((.cse7 (let ((.cse8 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse8 |c_~#top~0.base| (store (select .cse8 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse8 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse7 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse7 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select .cse6 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (store .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse6 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse9 (let ((.cse11 (let ((.cse12 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse12 |c_~#top~0.base| (store (select .cse12 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse12 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse11 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse11 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (store .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse9 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse10) (_ bv0 64)) (bvsle (select (select .cse9 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (not (= (select (select (let ((.cse13 (let ((.cse14 (let ((.cse15 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse15 |c_~#top~0.base| (store (select .cse15 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse15 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse14 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse14 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse13 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsle (_ bv0 32) (select (select (let ((.cse16 (let ((.cse17 (let ((.cse18 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse18 |c_~#top~0.base| (store (select .cse18 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse18 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse17 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse17 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse16 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse19) (or (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (bvsge (bvadd (_ bv63 64) (bvneg ((_ sign_extend 32) (select (select (let ((.cse20 (let ((.cse21 (let ((.cse22 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse22 |c_~#top~0.base| (store (select .cse22 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse22 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse21 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse21 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (store .cse20 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse20 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3))) |c_~#top~0.base|) |c_~#top~0.offset|))) .cse10) (_ bv0 64))) .cse19) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse23 (let ((.cse24 (let ((.cse25 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse25 |c_~#top~0.base| (store (select .cse25 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse25 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse24 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse23 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse23 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32))) (let ((.cse26 (let ((.cse27 (let ((.cse28 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (store .cse28 |c_~#top~0.base| (store (select .cse28 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse28 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse27 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse27 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse26 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (store (select .cse26 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) .cse3)) |c_~#top~0.base|) |c_~#top~0.offset|))))))))) (or (not .cse0) (let ((.cse65 ((_ sign_extend 32) .cse3)) (.cse32 (select (select |c_#memory_int| |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))) (and (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse30 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse31 (select .cse30 |c_~#top~0.base|))) (or (not (= (select (select (store (let ((.cse29 (store .cse30 |c_~#top~0.base| (store .cse31 |c_~#top~0.offset| .cse32)))) (store .cse29 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse29 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (let ((.cse33 (store .cse30 |c_~#top~0.base| (store .cse31 |c_~#top~0.offset| (select (select .cse30 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse33 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse33 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse35 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse36 (select .cse35 |c_~#top~0.base|))) (or (bvsle (select (select (store (let ((.cse34 (store .cse35 |c_~#top~0.base| (store .cse36 |c_~#top~0.offset| .cse32)))) (store .cse34 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse34 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (let ((.cse37 (store .cse35 |c_~#top~0.base| (store .cse36 |c_~#top~0.offset| (select (select .cse35 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse37 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse37 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse39 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse40 (select .cse39 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse38 (store .cse39 |c_~#top~0.base| (store .cse40 |c_~#top~0.offset| (select (select .cse39 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse38 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse38 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (select (select (store (let ((.cse41 (store .cse39 |c_~#top~0.base| (store .cse40 |c_~#top~0.offset| .cse32)))) (store .cse41 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse41 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse43 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse44 (select .cse43 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse42 (store .cse43 |c_~#top~0.base| (store .cse44 |c_~#top~0.offset| .cse32)))) (store .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse42 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (not (= (select (select (let ((.cse45 (store .cse43 |c_~#top~0.base| (store .cse44 |c_~#top~0.offset| (select (select .cse43 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse45 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse45 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse47 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse48 (select .cse47 |c_~#top~0.base|))) (or (not (= (select (select (store (let ((.cse46 (store .cse47 |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| .cse32)))) (store .cse46 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse46 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select (let ((.cse49 (store .cse47 |c_~#top~0.base| (store .cse48 |c_~#top~0.offset| (select (select .cse47 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse49 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse49 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse51 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse52 (select .cse51 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse50 (store .cse51 |c_~#top~0.base| (store .cse52 |c_~#top~0.offset| (select (select .cse51 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse50 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse50 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (not (= (select (select (store (let ((.cse53 (store .cse51 |c_~#top~0.base| (store .cse52 |c_~#top~0.offset| .cse32)))) (store .cse53 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse53 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse55 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse56 (select .cse55 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse54 (store .cse55 |c_~#top~0.base| (store .cse56 |c_~#top~0.offset| .cse32)))) (store .cse54 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse54 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (let ((.cse57 (store .cse55 |c_~#top~0.base| (store .cse56 |c_~#top~0.offset| (select (select .cse55 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse57 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse59 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse60 (select .cse59 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse58 (store .cse59 |c_~#top~0.base| (store .cse60 |c_~#top~0.offset| (select (select .cse59 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse58 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse58 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (store (let ((.cse61 (store .cse59 |c_~#top~0.base| (store .cse60 |c_~#top~0.offset| .cse32)))) (store .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse61 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse63 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse64 (select .cse63 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (let ((.cse62 (store .cse63 |c_~#top~0.base| (store .cse64 |c_~#top~0.offset| (select (select .cse63 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse62 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse62 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse66 (store .cse63 |c_~#top~0.base| (store .cse64 |c_~#top~0.offset| .cse32)))) (store .cse66 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse66 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse68 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse69 (select .cse68 |c_~#top~0.base|))) (or (not (= (select (select (let ((.cse67 (store .cse68 |c_~#top~0.base| (store .cse69 |c_~#top~0.offset| (select (select .cse68 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse67 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse67 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse70 (store .cse68 |c_~#top~0.base| (store .cse69 |c_~#top~0.offset| .cse32)))) (store .cse70 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse70 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse72 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse73 (select .cse72 |c_~#top~0.base|))) (or (bvsge (bvadd (_ bv63 64) .cse65 (bvneg ((_ sign_extend 32) (select (select (store (let ((.cse71 (store .cse72 |c_~#top~0.base| (store .cse73 |c_~#top~0.offset| .cse32)))) (store .cse71 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse71 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select (let ((.cse74 (store .cse72 |c_~#top~0.base| (store .cse73 |c_~#top~0.offset| (select (select .cse72 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse74 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))) .cse19 (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse76 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (store (select |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base|) (_ bv0 32) c_~next_alloc_idx~0)))) (let ((.cse77 (select .cse76 |c_~#top~0.base|))) (or (bvsle (_ bv0 32) (select (select (store (let ((.cse75 (store .cse76 |c_~#top~0.base| (store .cse77 |c_~#top~0.offset| .cse32)))) (store .cse75 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse75 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select (let ((.cse78 (store .cse76 |c_~#top~0.base| (store .cse77 |c_~#top~0.offset| (select (select .cse76 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|))))) (store .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse78 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)))))))))))) .cse79) (or (not .cse79) (let ((.cse81 ((_ sign_extend 32) c_~next_alloc_idx~0))) (and (bvsle c_~next_alloc_idx~0 (_ bv66 32)) (forall ((v_prenex_237 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_235 (_ BitVec 32)) (v_prenex_236 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse80 (let ((.cse82 (let ((.cse83 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse83 |c_~#top~0.base| (store (select .cse83 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse83 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse82 v_prenex_236 (store (select .cse82 v_prenex_236) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (bvneg ((_ sign_extend 32) (select (select (store .cse80 v_prenex_235 v_prenex_237) |c_~#top~0.base|) |c_~#top~0.offset|))) (_ bv63 64) .cse81) (_ bv0 64)) (bvsle (_ bv0 32) (select (select .cse80 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((v_prenex_230 (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_231 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_229 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse84 (let ((.cse85 (let ((.cse86 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse86 |c_~#top~0.base| (store (select .cse86 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse86 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse85 v_prenex_230 (store (select .cse85 v_prenex_230) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select .cse84 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (select (select (store .cse84 v_prenex_229 v_prenex_231) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_226 (_ BitVec 32)) (v_prenex_227 (_ BitVec 32)) (v_prenex_228 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse87 (let ((.cse88 (let ((.cse89 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse89 |c_~#top~0.base| (store (select .cse89 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse89 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse88 v_prenex_227 (store (select .cse88 v_prenex_227) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse81 (bvneg ((_ sign_extend 32) (select (select (store .cse87 v_prenex_226 v_prenex_228) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (bvsle (select (select .cse87 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((v_prenex_213 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_211 (_ BitVec 32)) (v_prenex_212 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse90 (let ((.cse91 (let ((.cse92 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse92 |c_~#top~0.base| (store (select .cse92 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse92 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse91 v_prenex_212 (store (select .cse91 v_prenex_212) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse90 v_prenex_211 v_prenex_213) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (bvsle (_ bv0 32) (select (select .cse90 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_210 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_208 (_ BitVec 32)) (v_prenex_209 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse93 (let ((.cse94 (let ((.cse95 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse95 |c_~#top~0.base| (store (select .cse95 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse95 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse94 v_prenex_209 (store (select .cse94 v_prenex_209) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select .cse93 |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (_ bv0 32) (select (select (store .cse93 v_prenex_208 v_prenex_210) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_206 (_ BitVec 32)) (v_prenex_205 (_ BitVec 32)) (v_prenex_207 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse96 (let ((.cse97 (let ((.cse98 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse98 |c_~#top~0.base| (store (select .cse98 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse98 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse97 v_prenex_206 (store (select .cse97 v_prenex_206) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (select (select (store .cse96 v_prenex_205 v_prenex_207) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32))) (bvsle (_ bv0 32) (select (select .cse96 |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_217 (_ BitVec 32)) (v_prenex_218 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_219 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse99 (let ((.cse100 (let ((.cse101 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse101 |c_~#top~0.base| (store (select .cse101 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse101 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse100 v_prenex_218 (store (select .cse100 v_prenex_218) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsge (bvadd (_ bv63 64) .cse81 (bvneg ((_ sign_extend 32) (select (select (store .cse99 v_prenex_217 v_prenex_219) |c_~#top~0.base|) |c_~#top~0.offset|)))) (_ bv0 64)) (not (= (select (select .cse99 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((|thr1Thread3of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (|thr1Thread2of3ForFork0_push_~#ret~0#1.base| (_ BitVec 32)) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_DerPreprocessor_19 (Array (_ BitVec 32) (_ BitVec 32))) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse102 (let ((.cse103 (let ((.cse104 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse104 |c_~#top~0.base| (store (select .cse104 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse104 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse103 |thr1Thread2of3ForFork0_push_~#ret~0#1.base| (store (select .cse103 |thr1Thread2of3ForFork0_push_~#ret~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (select (select (store .cse102 |thr1Thread3of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_19) |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32)) (not (= (select (select .cse102 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv2 32)))))) (forall ((v_prenex_225 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_224 (_ BitVec 32)) (v_prenex_223 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse105 (let ((.cse106 (let ((.cse107 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse107 |c_~#top~0.base| (store (select .cse107 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse107 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse106 v_prenex_224 (store (select .cse106 v_prenex_224) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select (store .cse105 v_prenex_223 v_prenex_225) |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (select (select .cse105 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_222 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_220 (_ BitVec 32)) (v_prenex_221 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse108 (let ((.cse109 (let ((.cse110 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse110 |c_~#top~0.base| (store (select .cse110 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse110 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse109 v_prenex_221 (store (select .cse109 v_prenex_221) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (bvsle (_ bv0 32) (select (select .cse108 |c_~#top~0.base|) |c_~#top~0.offset|)) (bvsle (_ bv0 32) (select (select (store .cse108 v_prenex_220 v_prenex_222) |c_~#top~0.base|) |c_~#top~0.offset|))))) (forall ((|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_234 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_233 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32))) (v_prenex_232 (_ BitVec 32))) (let ((.cse111 (let ((.cse112 (let ((.cse113 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse113 |c_~#top~0.base| (store (select .cse113 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse113 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse112 v_prenex_233 (store (select .cse112 v_prenex_233) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse111 v_prenex_232 v_prenex_234) |c_~#top~0.base|) |c_~#top~0.offset|))) (not (= (_ bv2 32) (select (select .cse111 |c_~#top~0.base|) |c_~#top~0.offset|)))))) (forall ((v_prenex_216 (Array (_ BitVec 32) (_ BitVec 32))) (|thr1Thread1of3ForFork0_push_~#newTop~0#1.base| (_ BitVec 32)) (v_prenex_215 (_ BitVec 32)) (v_prenex_214 (_ BitVec 32)) (v_DerPreprocessor_31 (Array (_ BitVec 32) (_ BitVec 32)))) (let ((.cse114 (let ((.cse115 (let ((.cse116 (store |c_#memory_int| |thr1Thread1of3ForFork0_push_~#newTop~0#1.base| v_DerPreprocessor_31))) (store .cse116 |c_~#top~0.base| (store (select .cse116 |c_~#top~0.base|) |c_~#top~0.offset| (select (select .cse116 |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.base|) |c_thr1Thread2of3ForFork0_push_~#newTop~0#1.offset|)))))) (store .cse115 v_prenex_215 (store (select .cse115 v_prenex_215) |c_thr1Thread2of3ForFork0_push_~#ret~0#1.offset| (_ bv1 32)))))) (or (not (= (_ bv2 32) (select (select (store .cse114 v_prenex_214 v_prenex_216) |c_~#top~0.base|) |c_~#top~0.offset|))) (bvsle (select (select .cse114 |c_~#top~0.base|) |c_~#top~0.offset|) (_ bv66 32))))) (= (_ bv1 32) (bvsrem c_~next_alloc_idx~0 (_ bv2 32)))))))) is different from true [2024-09-08 02:27:18,794 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:27:18,794 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 2 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 57 [2024-09-08 02:27:18,871 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:27:18,872 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 1 case distinctions, treesize of input 9 treesize of output 8 [2024-09-08 02:29:36,996 WARN L293 SmtUtils]: Spent 1.81m on a formula simplification that was a NOOP. DAG size: 1353 (called from [L 346] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.arrays.Elim1Store.elim1) [2024-09-08 02:29:36,998 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-09-08 02:29:37,014 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 26 select indices, 26 select index equivalence classes, 0 disjoint index pairs (out of 325 index pairs), introduced 26 new quantified variables, introduced 325 case distinctions, treesize of input 596712 treesize of output 592956 [2024-09-08 02:30:08,171 WARN L293 SmtUtils]: Spent 31.12s on a formula simplification. DAG size of input: 12962 DAG size of output: 5823 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:08,469 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 54702 treesize of output 54574 [2024-09-08 02:30:15,798 WARN L293 SmtUtils]: Spent 7.32s on a formula simplification. DAG size of input: 5818 DAG size of output: 5816 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:16,053 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 54582 treesize of output 54454 [2024-09-08 02:30:21,978 WARN L293 SmtUtils]: Spent 5.91s on a formula simplification that was a NOOP. DAG size: 5801 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:22,229 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 54646 treesize of output 54518 [2024-09-08 02:30:32,026 WARN L293 SmtUtils]: Spent 9.78s on a formula simplification. DAG size of input: 5784 DAG size of output: 5780 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:32,256 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 54534 treesize of output 54406 [2024-09-08 02:30:41,765 WARN L293 SmtUtils]: Spent 9.50s on a formula simplification. DAG size of input: 5771 DAG size of output: 5769 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:41,981 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 54558 treesize of output 54430 [2024-09-08 02:30:51,641 WARN L293 SmtUtils]: Spent 9.65s on a formula simplification. DAG size of input: 5744 DAG size of output: 5732 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:51,862 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 54446 treesize of output 54318 [2024-09-08 02:30:57,918 WARN L293 SmtUtils]: Spent 6.05s on a formula simplification that was a NOOP. DAG size: 5691 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:30:58,128 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 54286 treesize of output 54158 [2024-09-08 02:31:07,774 WARN L293 SmtUtils]: Spent 9.63s on a formula simplification. DAG size of input: 5682 DAG size of output: 5680 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:07,985 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 54054 treesize of output 53926 [2024-09-08 02:31:17,014 WARN L293 SmtUtils]: Spent 9.02s on a formula simplification. DAG size of input: 5671 DAG size of output: 5669 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:17,231 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 53846 treesize of output 53718 [2024-09-08 02:31:23,291 WARN L293 SmtUtils]: Spent 6.05s on a formula simplification that was a NOOP. DAG size: 5668 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:23,481 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 53734 treesize of output 53606 [2024-09-08 02:31:30,852 WARN L293 SmtUtils]: Spent 7.36s on a formula simplification. DAG size of input: 5665 DAG size of output: 5661 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:31,062 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 53494 treesize of output 53366 [2024-09-08 02:31:38,711 WARN L293 SmtUtils]: Spent 7.64s on a formula simplification. DAG size of input: 5652 DAG size of output: 5650 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:38,950 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 53262 treesize of output 53134 [2024-09-08 02:31:45,479 WARN L293 SmtUtils]: Spent 6.51s on a formula simplification. DAG size of input: 5619 DAG size of output: 5597 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:45,689 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 53070 treesize of output 52942 [2024-09-08 02:31:53,506 WARN L293 SmtUtils]: Spent 7.80s on a formula simplification. DAG size of input: 5594 DAG size of output: 5590 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:31:53,739 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 52862 treesize of output 52734 [2024-09-08 02:31:59,999 WARN L293 SmtUtils]: Spent 6.25s on a formula simplification that was a NOOP. DAG size: 5589 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:00,241 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 52734 treesize of output 52606 [2024-09-08 02:32:06,425 WARN L293 SmtUtils]: Spent 6.17s on a formula simplification that was a NOOP. DAG size: 5588 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:06,644 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 52574 treesize of output 52446 [2024-09-08 02:32:13,971 WARN L293 SmtUtils]: Spent 7.31s on a formula simplification. DAG size of input: 5559 DAG size of output: 5539 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:14,204 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 52406 treesize of output 52278 [2024-09-08 02:32:20,317 WARN L293 SmtUtils]: Spent 6.10s on a formula simplification that was a NOOP. DAG size: 5538 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:20,535 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 52278 treesize of output 52150 [2024-09-08 02:32:26,593 WARN L293 SmtUtils]: Spent 6.05s on a formula simplification that was a NOOP. DAG size: 5537 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:26,852 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 52166 treesize of output 52038 [2024-09-08 02:32:36,774 WARN L293 SmtUtils]: Spent 9.91s on a formula simplification. DAG size of input: 5532 DAG size of output: 5530 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:36,994 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 51990 treesize of output 51862 [2024-09-08 02:32:44,477 WARN L293 SmtUtils]: Spent 7.47s on a formula simplification. DAG size of input: 5525 DAG size of output: 5517 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:44,705 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 51702 treesize of output 51574 [2024-09-08 02:32:50,790 WARN L293 SmtUtils]: Spent 6.07s on a formula simplification that was a NOOP. DAG size: 5516 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:51,013 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 51574 treesize of output 51446 [2024-09-08 02:32:57,023 WARN L293 SmtUtils]: Spent 6.00s on a formula simplification that was a NOOP. DAG size: 5515 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:32:57,260 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 51462 treesize of output 51334 [2024-09-08 02:33:07,527 WARN L293 SmtUtils]: Spent 10.26s on a formula simplification. DAG size of input: 5510 DAG size of output: 5508 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:07,781 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 51094 treesize of output 50966 [2024-09-08 02:33:13,998 WARN L293 SmtUtils]: Spent 6.21s on a formula simplification that was a NOOP. DAG size: 5497 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:14,237 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 50966 treesize of output 50838 [2024-09-08 02:33:20,338 WARN L293 SmtUtils]: Spent 6.09s on a formula simplification that was a NOOP. DAG size: 5496 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:20,543 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 50758 treesize of output 50630 [2024-09-08 02:33:26,615 WARN L293 SmtUtils]: Spent 6.06s on a formula simplification that was a NOOP. DAG size: 5465 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:26,862 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 50662 treesize of output 50534 [2024-09-08 02:33:36,159 WARN L293 SmtUtils]: Spent 9.29s on a formula simplification. DAG size of input: 5460 DAG size of output: 5420 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:36,384 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 50374 treesize of output 50246 [2024-09-08 02:33:42,252 WARN L293 SmtUtils]: Spent 5.86s on a formula simplification that was a NOOP. DAG size: 5419 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:42,490 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 50182 treesize of output 50054 [2024-09-08 02:33:52,884 WARN L293 SmtUtils]: Spent 10.38s on a formula simplification. DAG size of input: 5407 DAG size of output: 5396 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:53,122 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 49974 treesize of output 49846 [2024-09-08 02:33:58,924 WARN L293 SmtUtils]: Spent 5.79s on a formula simplification that was a NOOP. DAG size: 5395 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:33:59,156 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 49878 treesize of output 49750 [2024-09-08 02:34:07,132 WARN L293 SmtUtils]: Spent 7.96s on a formula simplification. DAG size of input: 5392 DAG size of output: 5364 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:07,367 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49622 treesize of output 49494 [2024-09-08 02:34:15,579 WARN L293 SmtUtils]: Spent 8.20s on a formula simplification. DAG size of input: 5361 DAG size of output: 5313 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:15,793 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 49334 treesize of output 49206 [2024-09-08 02:34:21,363 WARN L293 SmtUtils]: Spent 5.56s on a formula simplification that was a NOOP. DAG size: 5312 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:21,591 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 49142 treesize of output 49014 [2024-09-08 02:34:29,560 WARN L293 SmtUtils]: Spent 7.96s on a formula simplification. DAG size of input: 5303 DAG size of output: 5301 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:29,771 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 48902 treesize of output 48774 [2024-09-08 02:34:37,493 WARN L293 SmtUtils]: Spent 7.71s on a formula simplification. DAG size of input: 5292 DAG size of output: 5284 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:37,707 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 48734 treesize of output 48606 [2024-09-08 02:34:43,775 WARN L293 SmtUtils]: Spent 6.06s on a formula simplification that was a NOOP. DAG size: 5283 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:44,053 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 48638 treesize of output 48606 [2024-09-08 02:34:50,232 WARN L293 SmtUtils]: Spent 6.17s on a formula simplification that was a NOOP. DAG size: 5271 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:50,485 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 48606 treesize of output 48574 [2024-09-08 02:34:56,621 WARN L293 SmtUtils]: Spent 6.13s on a formula simplification that was a NOOP. DAG size: 5270 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:34:56,906 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 48534 treesize of output 48502 [2024-09-08 02:35:02,899 WARN L293 SmtUtils]: Spent 5.98s on a formula simplification that was a NOOP. DAG size: 5259 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:03,167 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 48486 treesize of output 48454 [2024-09-08 02:35:14,029 WARN L293 SmtUtils]: Spent 10.85s on a formula simplification. DAG size of input: 5250 DAG size of output: 5248 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:14,369 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 48434 treesize of output 48402 [2024-09-08 02:35:20,378 WARN L293 SmtUtils]: Spent 6.00s on a formula simplification that was a NOOP. DAG size: 5247 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:20,630 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 48402 treesize of output 48370 [2024-09-08 02:35:26,559 WARN L293 SmtUtils]: Spent 5.92s on a formula simplification that was a NOOP. DAG size: 5246 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:26,811 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 48370 treesize of output 48338 [2024-09-08 02:35:32,727 WARN L293 SmtUtils]: Spent 5.91s on a formula simplification that was a NOOP. DAG size: 5245 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:33,002 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 48346 treesize of output 48314 [2024-09-08 02:35:43,753 WARN L293 SmtUtils]: Spent 10.74s on a formula simplification. DAG size of input: 5240 DAG size of output: 5237 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:44,014 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 48274 treesize of output 48242 [2024-09-08 02:35:49,736 WARN L293 SmtUtils]: Spent 5.71s on a formula simplification that was a NOOP. DAG size: 5236 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:50,023 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 48226 treesize of output 48194 [2024-09-08 02:35:59,160 WARN L293 SmtUtils]: Spent 9.12s on a formula simplification. DAG size of input: 5227 DAG size of output: 5224 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:35:59,444 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 48182 treesize of output 48150 [2024-09-08 02:36:08,891 WARN L293 SmtUtils]: Spent 9.44s on a formula simplification. DAG size of input: 5221 DAG size of output: 5216 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:09,158 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 48110 treesize of output 48078 [2024-09-08 02:36:15,264 WARN L293 SmtUtils]: Spent 6.10s on a formula simplification that was a NOOP. DAG size: 5215 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:15,520 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 48078 treesize of output 48046 [2024-09-08 02:36:21,291 WARN L293 SmtUtils]: Spent 5.76s on a formula simplification that was a NOOP. DAG size: 5214 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:21,549 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 48102 treesize of output 48070 [2024-09-08 02:36:29,486 WARN L293 SmtUtils]: Spent 7.93s on a formula simplification. DAG size of input: 5203 DAG size of output: 5200 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:29,769 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 48034 treesize of output 48002 [2024-09-08 02:36:38,939 WARN L293 SmtUtils]: Spent 9.16s on a formula simplification. DAG size of input: 5191 DAG size of output: 5188 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:39,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 47982 treesize of output 47950 [2024-09-08 02:36:44,783 WARN L293 SmtUtils]: Spent 5.59s on a formula simplification that was a NOOP. DAG size: 5187 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:45,028 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 47950 treesize of output 47918 [2024-09-08 02:36:50,673 WARN L293 SmtUtils]: Spent 5.63s on a formula simplification that was a NOOP. DAG size: 5186 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:36:50,938 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 47926 treesize of output 47894 [2024-09-08 02:37:02,090 WARN L293 SmtUtils]: Spent 11.14s on a formula simplification. DAG size of input: 5183 DAG size of output: 5177 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:02,344 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 47854 treesize of output 47822 [2024-09-08 02:37:08,309 WARN L293 SmtUtils]: Spent 5.96s on a formula simplification that was a NOOP. DAG size: 5176 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:08,581 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 47878 treesize of output 47846 [2024-09-08 02:37:18,679 WARN L293 SmtUtils]: Spent 10.09s on a formula simplification. DAG size of input: 5165 DAG size of output: 5162 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:18,925 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 47826 treesize of output 47794 [2024-09-08 02:37:24,868 WARN L293 SmtUtils]: Spent 5.93s on a formula simplification that was a NOOP. DAG size: 5161 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:25,150 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 47802 treesize of output 47770 [2024-09-08 02:37:36,740 WARN L293 SmtUtils]: Spent 11.58s on a formula simplification. DAG size of input: 5156 DAG size of output: 5153 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:37,033 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 47714 treesize of output 47682 [2024-09-08 02:37:48,793 WARN L293 SmtUtils]: Spent 11.75s on a formula simplification. DAG size of input: 5144 DAG size of output: 5141 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2024-09-08 02:37:49,049 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 47662 treesize of output 47630 [2024-09-08 02:37:55,064 WARN L293 SmtUtils]: Spent 6.01s on a formula simplification that was a NOOP. DAG size: 5140 (called from [L 731] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) Killed by 15