./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c7c6ca5d Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash ceb2af5016fd0ad74653237fbc44a2b3541e4ff971325e3807dab6f19c05af6d --- Real Ultimate output --- This is Ultimate 0.2.5-?-c7c6ca5-m [2024-11-09 02:46:21,844 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-09 02:46:21,895 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-09 02:46:21,898 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-09 02:46:21,900 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-09 02:46:21,918 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-09 02:46:21,919 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-09 02:46:21,919 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-09 02:46:21,919 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-09 02:46:21,920 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-09 02:46:21,920 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-09 02:46:21,920 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-09 02:46:21,921 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-09 02:46:21,921 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-09 02:46:21,921 INFO L153 SettingsManager]: * Use SBE=true [2024-11-09 02:46:21,921 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-09 02:46:21,922 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-09 02:46:21,924 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-09 02:46:21,924 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-09 02:46:21,924 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-09 02:46:21,925 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-09 02:46:21,925 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-09 02:46:21,925 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-09 02:46:21,925 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-09 02:46:21,929 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-09 02:46:21,929 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-09 02:46:21,929 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-09 02:46:21,929 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-09 02:46:21,930 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-09 02:46:21,930 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-09 02:46:21,930 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-09 02:46:21,930 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-09 02:46:21,930 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 02:46:21,930 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-09 02:46:21,930 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-09 02:46:21,931 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-09 02:46:21,932 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-09 02:46:21,932 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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/UAutomizer-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.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> ceb2af5016fd0ad74653237fbc44a2b3541e4ff971325e3807dab6f19c05af6d [2024-11-09 02:46:22,133 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-09 02:46:22,154 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-09 02:46:22,156 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-09 02:46:22,157 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-09 02:46:22,157 INFO L274 PluginConnector]: CDTParser initialized [2024-11-09 02:46:22,158 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c [2024-11-09 02:46:23,338 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-09 02:46:23,491 INFO L384 CDTParser]: Found 1 translation units. [2024-11-09 02:46:23,491 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c [2024-11-09 02:46:23,498 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/34f9b2a62/0eb883a629374bd3bc323fe97101815a/FLAGa4d147cff [2024-11-09 02:46:23,509 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/34f9b2a62/0eb883a629374bd3bc323fe97101815a [2024-11-09 02:46:23,511 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-09 02:46:23,512 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-09 02:46:23,513 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-09 02:46:23,513 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-09 02:46:23,520 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-09 02:46:23,521 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,521 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2280c558 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23, skipping insertion in model container [2024-11-09 02:46:23,521 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,540 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-09 02:46:23,757 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c[3463,3476] [2024-11-09 02:46:23,763 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 02:46:23,769 INFO L200 MainTranslator]: Completed pre-run [2024-11-09 02:46:23,785 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c[3463,3476] [2024-11-09 02:46:23,787 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 02:46:23,799 INFO L204 MainTranslator]: Completed translation [2024-11-09 02:46:23,799 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23 WrapperNode [2024-11-09 02:46:23,799 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-09 02:46:23,800 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-09 02:46:23,800 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-09 02:46:23,800 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-09 02:46:23,805 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,814 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,835 INFO L138 Inliner]: procedures = 24, calls = 40, calls flagged for inlining = 16, calls inlined = 18, statements flattened = 239 [2024-11-09 02:46:23,835 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-09 02:46:23,836 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-09 02:46:23,836 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-09 02:46:23,836 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-09 02:46:23,843 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,844 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,850 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,866 INFO L175 MemorySlicer]: Split 9 memory accesses to 2 slices as follows [2, 7]. 78 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0]. The 2 writes are split as follows [0, 2]. [2024-11-09 02:46:23,866 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,867 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,871 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,874 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,875 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,880 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,882 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-09 02:46:23,883 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-09 02:46:23,883 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-09 02:46:23,883 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-09 02:46:23,884 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (1/1) ... [2024-11-09 02:46:23,893 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 02:46:23,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:23,913 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-09 02:46:23,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-09 02:46:23,955 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-11-09 02:46:23,956 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-11-09 02:46:23,956 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2024-11-09 02:46:23,956 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-11-09 02:46:23,956 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-11-09 02:46:23,957 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-11-09 02:46:23,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-09 02:46:23,957 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-09 02:46:23,957 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-09 02:46:23,957 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-09 02:46:23,958 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-11-09 02:46:24,049 INFO L238 CfgBuilder]: Building ICFG [2024-11-09 02:46:24,050 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-09 02:46:24,293 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-11-09 02:46:24,294 INFO L287 CfgBuilder]: Performing block encoding [2024-11-09 02:46:24,481 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-09 02:46:24,481 INFO L316 CfgBuilder]: Removed 5 assume(true) statements. [2024-11-09 02:46:24,481 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 02:46:24 BoogieIcfgContainer [2024-11-09 02:46:24,482 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-09 02:46:24,485 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-09 02:46:24,485 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-09 02:46:24,488 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-09 02:46:24,488 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.11 02:46:23" (1/3) ... [2024-11-09 02:46:24,489 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@773eda81 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 02:46:24, skipping insertion in model container [2024-11-09 02:46:24,489 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:46:23" (2/3) ... [2024-11-09 02:46:24,489 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@773eda81 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 02:46:24, skipping insertion in model container [2024-11-09 02:46:24,490 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 02:46:24" (3/3) ... [2024-11-09 02:46:24,490 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-horseshoe.wvr.c [2024-11-09 02:46:24,505 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-09 02:46:24,505 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-11-09 02:46:24,506 INFO L489 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-11-09 02:46:24,564 INFO L143 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2024-11-09 02:46:24,614 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 47 places, 44 transitions, 109 flow [2024-11-09 02:46:24,635 INFO L124 PetriNetUnfolderBase]: 7/41 cut-off events. [2024-11-09 02:46:24,635 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-11-09 02:46:24,639 INFO L83 FinitePrefix]: Finished finitePrefix Result has 54 conditions, 41 events. 7/41 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 79 event pairs, 0 based on Foata normal form. 0/33 useless extension candidates. Maximal degree in co-relation 33. Up to 2 conditions per place. [2024-11-09 02:46:24,639 INFO L82 GeneralOperation]: Start removeDead. Operand has 47 places, 44 transitions, 109 flow [2024-11-09 02:46:24,641 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 43 places, 40 transitions, 98 flow [2024-11-09 02:46:24,652 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-09 02:46:24,657 INFO L333 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=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@2c6a2d63, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-09 02:46:24,658 INFO L334 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2024-11-09 02:46:24,671 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-11-09 02:46:24,672 INFO L124 PetriNetUnfolderBase]: 7/39 cut-off events. [2024-11-09 02:46:24,673 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-11-09 02:46:24,673 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:24,673 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:24,674 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:24,677 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:24,677 INFO L85 PathProgramCache]: Analyzing trace with hash -1497833839, now seen corresponding path program 1 times [2024-11-09 02:46:24,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:24,685 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [424616675] [2024-11-09 02:46:24,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:24,685 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:24,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:24,886 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:24,886 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:24,886 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [424616675] [2024-11-09 02:46:24,887 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [424616675] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:24,887 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:46:24,887 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-09 02:46:24,888 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1316849055] [2024-11-09 02:46:24,889 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:24,894 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-11-09 02:46:24,898 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:24,920 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-11-09 02:46:24,921 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-11-09 02:46:24,922 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:24,924 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 40 transitions, 98 flow. Second operand has 2 states, 2 states have (on average 24.5) internal successors, (49), 2 states have internal predecessors, (49), 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-11-09 02:46:24,924 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:24,924 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:24,925 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:25,112 INFO L124 PetriNetUnfolderBase]: 727/1249 cut-off events. [2024-11-09 02:46:25,112 INFO L125 PetriNetUnfolderBase]: For 64/64 co-relation queries the response was YES. [2024-11-09 02:46:25,120 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2343 conditions, 1249 events. 727/1249 cut-off events. For 64/64 co-relation queries the response was YES. Maximal size of possible extension queue 71. Compared 6233 event pairs, 595 based on Foata normal form. 130/1232 useless extension candidates. Maximal degree in co-relation 2178. Up to 991 conditions per place. [2024-11-09 02:46:25,127 INFO L140 encePairwiseOnDemand]: 42/44 looper letters, 28 selfloop transitions, 0 changer transitions 0/38 dead transitions. [2024-11-09 02:46:25,128 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 38 transitions, 150 flow [2024-11-09 02:46:25,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-11-09 02:46:25,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2024-11-09 02:46:25,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 56 transitions. [2024-11-09 02:46:25,137 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6363636363636364 [2024-11-09 02:46:25,138 INFO L175 Difference]: Start difference. First operand has 43 places, 40 transitions, 98 flow. Second operand 2 states and 56 transitions. [2024-11-09 02:46:25,139 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 38 transitions, 150 flow [2024-11-09 02:46:25,144 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 38 transitions, 138 flow, removed 0 selfloop flow, removed 6 redundant places. [2024-11-09 02:46:25,165 INFO L231 Difference]: Finished difference. Result has 38 places, 38 transitions, 82 flow [2024-11-09 02:46:25,166 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=82, PETRI_DIFFERENCE_MINUEND_PLACES=37, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=82, PETRI_PLACES=38, PETRI_TRANSITIONS=38} [2024-11-09 02:46:25,169 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, -5 predicate places. [2024-11-09 02:46:25,169 INFO L471 AbstractCegarLoop]: Abstraction has has 38 places, 38 transitions, 82 flow [2024-11-09 02:46:25,170 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 24.5) internal successors, (49), 2 states have internal predecessors, (49), 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-11-09 02:46:25,170 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:25,170 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:25,170 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-09 02:46:25,170 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:25,171 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:25,171 INFO L85 PathProgramCache]: Analyzing trace with hash 1767931675, now seen corresponding path program 1 times [2024-11-09 02:46:25,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:25,172 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719869941] [2024-11-09 02:46:25,172 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:25,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:25,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:25,316 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:25,316 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:25,316 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1719869941] [2024-11-09 02:46:25,317 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1719869941] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:25,317 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:46:25,317 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-09 02:46:25,317 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [509724892] [2024-11-09 02:46:25,318 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:25,319 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-09 02:46:25,320 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:25,320 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 02:46:25,320 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 02:46:25,321 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:25,321 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 38 places, 38 transitions, 82 flow. Second operand has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 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-11-09 02:46:25,322 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:25,322 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:25,322 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:25,457 INFO L124 PetriNetUnfolderBase]: 733/1234 cut-off events. [2024-11-09 02:46:25,457 INFO L125 PetriNetUnfolderBase]: For 12/12 co-relation queries the response was YES. [2024-11-09 02:46:25,460 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2309 conditions, 1234 events. 733/1234 cut-off events. For 12/12 co-relation queries the response was YES. Maximal size of possible extension queue 71. Compared 5933 event pairs, 189 based on Foata normal form. 27/1182 useless extension candidates. Maximal degree in co-relation 2306. Up to 875 conditions per place. [2024-11-09 02:46:25,464 INFO L140 encePairwiseOnDemand]: 40/44 looper letters, 37 selfloop transitions, 3 changer transitions 0/50 dead transitions. [2024-11-09 02:46:25,464 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 50 transitions, 188 flow [2024-11-09 02:46:25,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 02:46:25,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-09 02:46:25,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 80 transitions. [2024-11-09 02:46:25,466 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6060606060606061 [2024-11-09 02:46:25,466 INFO L175 Difference]: Start difference. First operand has 38 places, 38 transitions, 82 flow. Second operand 3 states and 80 transitions. [2024-11-09 02:46:25,466 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 50 transitions, 188 flow [2024-11-09 02:46:25,467 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 40 places, 50 transitions, 188 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-11-09 02:46:25,468 INFO L231 Difference]: Finished difference. Result has 41 places, 40 transitions, 101 flow [2024-11-09 02:46:25,469 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=82, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=101, PETRI_PLACES=41, PETRI_TRANSITIONS=40} [2024-11-09 02:46:25,470 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, -2 predicate places. [2024-11-09 02:46:25,470 INFO L471 AbstractCegarLoop]: Abstraction has has 41 places, 40 transitions, 101 flow [2024-11-09 02:46:25,471 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 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-11-09 02:46:25,471 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:25,471 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:25,471 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-09 02:46:25,471 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:25,472 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:25,473 INFO L85 PathProgramCache]: Analyzing trace with hash 1846619617, now seen corresponding path program 2 times [2024-11-09 02:46:25,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:25,473 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [54161915] [2024-11-09 02:46:25,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:25,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:25,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:25,555 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:25,555 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:25,556 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [54161915] [2024-11-09 02:46:25,556 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [54161915] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:25,556 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:46:25,556 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-09 02:46:25,556 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [966444004] [2024-11-09 02:46:25,556 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:25,557 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-09 02:46:25,557 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:25,557 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 02:46:25,557 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 02:46:25,558 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:25,558 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 40 transitions, 101 flow. Second operand has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 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-11-09 02:46:25,558 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:25,558 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:25,558 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:25,685 INFO L124 PetriNetUnfolderBase]: 663/1213 cut-off events. [2024-11-09 02:46:25,685 INFO L125 PetriNetUnfolderBase]: For 203/205 co-relation queries the response was YES. [2024-11-09 02:46:25,687 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2455 conditions, 1213 events. 663/1213 cut-off events. For 203/205 co-relation queries the response was YES. Maximal size of possible extension queue 54. Compared 5983 event pairs, 248 based on Foata normal form. 26/1147 useless extension candidates. Maximal degree in co-relation 2450. Up to 555 conditions per place. [2024-11-09 02:46:25,691 INFO L140 encePairwiseOnDemand]: 41/44 looper letters, 40 selfloop transitions, 2 changer transitions 0/52 dead transitions. [2024-11-09 02:46:25,691 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 43 places, 52 transitions, 217 flow [2024-11-09 02:46:25,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 02:46:25,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-09 02:46:25,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 80 transitions. [2024-11-09 02:46:25,694 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6060606060606061 [2024-11-09 02:46:25,694 INFO L175 Difference]: Start difference. First operand has 41 places, 40 transitions, 101 flow. Second operand 3 states and 80 transitions. [2024-11-09 02:46:25,694 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 43 places, 52 transitions, 217 flow [2024-11-09 02:46:25,695 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 52 transitions, 214 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-11-09 02:46:25,696 INFO L231 Difference]: Finished difference. Result has 43 places, 41 transitions, 110 flow [2024-11-09 02:46:25,696 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=98, PETRI_DIFFERENCE_MINUEND_PLACES=40, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=40, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=110, PETRI_PLACES=43, PETRI_TRANSITIONS=41} [2024-11-09 02:46:25,697 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 0 predicate places. [2024-11-09 02:46:25,697 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 41 transitions, 110 flow [2024-11-09 02:46:25,697 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 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-11-09 02:46:25,698 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:25,698 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:25,698 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-11-09 02:46:25,698 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:25,698 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:25,699 INFO L85 PathProgramCache]: Analyzing trace with hash 1902711549, now seen corresponding path program 3 times [2024-11-09 02:46:25,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:25,699 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1406303376] [2024-11-09 02:46:25,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:25,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:25,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:25,830 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:25,830 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:25,831 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1406303376] [2024-11-09 02:46:25,831 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1406303376] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:25,831 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:46:25,831 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-09 02:46:25,831 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1128322024] [2024-11-09 02:46:25,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:25,831 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-11-09 02:46:25,832 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:25,832 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 02:46:25,832 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-09 02:46:25,832 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:25,832 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 41 transitions, 110 flow. Second operand has 4 states, 4 states have (on average 19.0) internal successors, (76), 4 states have internal predecessors, (76), 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-11-09 02:46:25,832 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:25,832 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:25,832 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:25,982 INFO L124 PetriNetUnfolderBase]: 712/1311 cut-off events. [2024-11-09 02:46:25,982 INFO L125 PetriNetUnfolderBase]: For 284/286 co-relation queries the response was YES. [2024-11-09 02:46:25,983 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2784 conditions, 1311 events. 712/1311 cut-off events. For 284/286 co-relation queries the response was YES. Maximal size of possible extension queue 53. Compared 6460 event pairs, 521 based on Foata normal form. 27/1244 useless extension candidates. Maximal degree in co-relation 2778. Up to 950 conditions per place. [2024-11-09 02:46:25,987 INFO L140 encePairwiseOnDemand]: 37/44 looper letters, 30 selfloop transitions, 2 changer transitions 15/57 dead transitions. [2024-11-09 02:46:25,987 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 57 transitions, 239 flow [2024-11-09 02:46:25,987 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-09 02:46:25,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-09 02:46:25,989 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 111 transitions. [2024-11-09 02:46:25,990 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5045454545454545 [2024-11-09 02:46:25,990 INFO L175 Difference]: Start difference. First operand has 43 places, 41 transitions, 110 flow. Second operand 5 states and 111 transitions. [2024-11-09 02:46:25,990 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 57 transitions, 239 flow [2024-11-09 02:46:25,991 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 57 transitions, 237 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-11-09 02:46:25,992 INFO L231 Difference]: Finished difference. Result has 49 places, 42 transitions, 128 flow [2024-11-09 02:46:25,992 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=108, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=41, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=39, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=128, PETRI_PLACES=49, PETRI_TRANSITIONS=42} [2024-11-09 02:46:25,993 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 6 predicate places. [2024-11-09 02:46:25,993 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 42 transitions, 128 flow [2024-11-09 02:46:25,994 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 19.0) internal successors, (76), 4 states have internal predecessors, (76), 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-11-09 02:46:25,994 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:25,994 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:25,994 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-11-09 02:46:25,994 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:25,995 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:25,995 INFO L85 PathProgramCache]: Analyzing trace with hash -1465505519, now seen corresponding path program 1 times [2024-11-09 02:46:25,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:25,995 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [671035607] [2024-11-09 02:46:25,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:25,995 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:26,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:26,087 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:26,088 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:26,088 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [671035607] [2024-11-09 02:46:26,088 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [671035607] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:26,088 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:46:26,088 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-09 02:46:26,088 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [411123970] [2024-11-09 02:46:26,088 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:26,089 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-11-09 02:46:26,089 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:26,089 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 02:46:26,090 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-09 02:46:26,090 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:26,090 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 49 places, 42 transitions, 128 flow. Second operand has 4 states, 4 states have (on average 19.25) internal successors, (77), 4 states have internal predecessors, (77), 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-11-09 02:46:26,090 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:26,090 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:26,090 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:26,223 INFO L124 PetriNetUnfolderBase]: 905/1634 cut-off events. [2024-11-09 02:46:26,223 INFO L125 PetriNetUnfolderBase]: For 471/475 co-relation queries the response was YES. [2024-11-09 02:46:26,226 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3561 conditions, 1634 events. 905/1634 cut-off events. For 471/475 co-relation queries the response was YES. Maximal size of possible extension queue 69. Compared 8428 event pairs, 676 based on Foata normal form. 32/1572 useless extension candidates. Maximal degree in co-relation 3552. Up to 948 conditions per place. [2024-11-09 02:46:26,230 INFO L140 encePairwiseOnDemand]: 38/44 looper letters, 29 selfloop transitions, 4 changer transitions 19/62 dead transitions. [2024-11-09 02:46:26,230 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 51 places, 62 transitions, 294 flow [2024-11-09 02:46:26,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-09 02:46:26,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-09 02:46:26,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 113 transitions. [2024-11-09 02:46:26,231 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5136363636363637 [2024-11-09 02:46:26,231 INFO L175 Difference]: Start difference. First operand has 49 places, 42 transitions, 128 flow. Second operand 5 states and 113 transitions. [2024-11-09 02:46:26,231 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 51 places, 62 transitions, 294 flow [2024-11-09 02:46:26,233 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 62 transitions, 274 flow, removed 9 selfloop flow, removed 3 redundant places. [2024-11-09 02:46:26,233 INFO L231 Difference]: Finished difference. Result has 50 places, 43 transitions, 136 flow [2024-11-09 02:46:26,234 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=116, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=42, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=136, PETRI_PLACES=50, PETRI_TRANSITIONS=43} [2024-11-09 02:46:26,234 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 7 predicate places. [2024-11-09 02:46:26,234 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 43 transitions, 136 flow [2024-11-09 02:46:26,234 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 19.25) internal successors, (77), 4 states have internal predecessors, (77), 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-11-09 02:46:26,235 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:26,235 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:26,235 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-11-09 02:46:26,235 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:26,235 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:26,235 INFO L85 PathProgramCache]: Analyzing trace with hash -2091232520, now seen corresponding path program 1 times [2024-11-09 02:46:26,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:26,236 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2029828210] [2024-11-09 02:46:26,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:26,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:26,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:27,551 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:27,552 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:27,552 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2029828210] [2024-11-09 02:46:27,552 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2029828210] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:46:27,552 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1281249391] [2024-11-09 02:46:27,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:27,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:27,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:27,556 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:46:27,557 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2024-11-09 02:46:27,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:27,645 INFO L255 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 39 conjuncts are in the unsatisfiable core [2024-11-09 02:46:27,651 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:46:27,795 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 23 treesize of output 1 [2024-11-09 02:46:28,276 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:28,276 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 02:46:28,923 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-09 02:46:28,923 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 194 treesize of output 188 [2024-11-09 02:46:28,981 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-09 02:46:28,982 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 35 treesize of output 31 [2024-11-09 02:46:29,048 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-09 02:46:29,049 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 153 treesize of output 125 [2024-11-09 02:46:29,465 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:29,465 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1281249391] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 02:46:29,465 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 02:46:29,465 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 12, 12] total 35 [2024-11-09 02:46:29,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [77630435] [2024-11-09 02:46:29,466 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 02:46:29,466 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2024-11-09 02:46:29,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:29,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2024-11-09 02:46:29,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=1149, Unknown=0, NotChecked=0, Total=1260 [2024-11-09 02:46:29,591 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 44 [2024-11-09 02:46:29,592 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 43 transitions, 136 flow. Second operand has 36 states, 36 states have (on average 9.38888888888889) internal successors, (338), 36 states have internal predecessors, (338), 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-11-09 02:46:29,592 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:29,592 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 44 [2024-11-09 02:46:29,592 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:34,398 INFO L124 PetriNetUnfolderBase]: 4005/6304 cut-off events. [2024-11-09 02:46:34,398 INFO L125 PetriNetUnfolderBase]: For 1326/1330 co-relation queries the response was YES. [2024-11-09 02:46:34,406 INFO L83 FinitePrefix]: Finished finitePrefix Result has 13845 conditions, 6304 events. 4005/6304 cut-off events. For 1326/1330 co-relation queries the response was YES. Maximal size of possible extension queue 275. Compared 34270 event pairs, 199 based on Foata normal form. 4/5915 useless extension candidates. Maximal degree in co-relation 13836. Up to 1679 conditions per place. [2024-11-09 02:46:34,426 INFO L140 encePairwiseOnDemand]: 28/44 looper letters, 330 selfloop transitions, 97 changer transitions 4/435 dead transitions. [2024-11-09 02:46:34,426 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 95 places, 435 transitions, 2022 flow [2024-11-09 02:46:34,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2024-11-09 02:46:34,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 46 states. [2024-11-09 02:46:34,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 755 transitions. [2024-11-09 02:46:34,471 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.3730237154150198 [2024-11-09 02:46:34,472 INFO L175 Difference]: Start difference. First operand has 50 places, 43 transitions, 136 flow. Second operand 46 states and 755 transitions. [2024-11-09 02:46:34,472 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 95 places, 435 transitions, 2022 flow [2024-11-09 02:46:34,478 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 92 places, 435 transitions, 2004 flow, removed 5 selfloop flow, removed 3 redundant places. [2024-11-09 02:46:34,482 INFO L231 Difference]: Finished difference. Result has 102 places, 140 transitions, 751 flow [2024-11-09 02:46:34,482 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=126, PETRI_DIFFERENCE_MINUEND_PLACES=47, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=15, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=46, PETRI_FLOW=751, PETRI_PLACES=102, PETRI_TRANSITIONS=140} [2024-11-09 02:46:34,483 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 59 predicate places. [2024-11-09 02:46:34,484 INFO L471 AbstractCegarLoop]: Abstraction has has 102 places, 140 transitions, 751 flow [2024-11-09 02:46:34,485 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 36 states have (on average 9.38888888888889) internal successors, (338), 36 states have internal predecessors, (338), 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-11-09 02:46:34,485 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:34,485 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:34,498 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2024-11-09 02:46:34,689 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2024-11-09 02:46:34,690 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:34,690 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:34,691 INFO L85 PathProgramCache]: Analyzing trace with hash 188674062, now seen corresponding path program 2 times [2024-11-09 02:46:34,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:34,691 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1038850017] [2024-11-09 02:46:34,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:34,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:34,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:35,770 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 02:46:35,771 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:35,771 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1038850017] [2024-11-09 02:46:35,771 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1038850017] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:46:35,771 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [132919448] [2024-11-09 02:46:35,771 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 02:46:35,771 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:35,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:35,773 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:46:35,774 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-11-09 02:46:35,858 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-09 02:46:35,858 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 02:46:35,861 INFO L255 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 23 conjuncts are in the unsatisfiable core [2024-11-09 02:46:35,863 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:46:36,198 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-11-09 02:46:36,198 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-09 02:46:36,198 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [132919448] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:36,198 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-09 02:46:36,198 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [14] total 21 [2024-11-09 02:46:36,198 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2129158892] [2024-11-09 02:46:36,199 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:36,199 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2024-11-09 02:46:36,199 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:36,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2024-11-09 02:46:36,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=408, Unknown=0, NotChecked=0, Total=462 [2024-11-09 02:46:36,234 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 44 [2024-11-09 02:46:36,234 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 102 places, 140 transitions, 751 flow. Second operand has 9 states, 9 states have (on average 12.11111111111111) internal successors, (109), 9 states have internal predecessors, (109), 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-11-09 02:46:36,234 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:36,234 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 44 [2024-11-09 02:46:36,234 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:36,724 INFO L124 PetriNetUnfolderBase]: 3354/5668 cut-off events. [2024-11-09 02:46:36,724 INFO L125 PetriNetUnfolderBase]: For 6592/6596 co-relation queries the response was YES. [2024-11-09 02:46:36,733 INFO L83 FinitePrefix]: Finished finitePrefix Result has 15831 conditions, 5668 events. 3354/5668 cut-off events. For 6592/6596 co-relation queries the response was YES. Maximal size of possible extension queue 248. Compared 33907 event pairs, 881 based on Foata normal form. 96/5747 useless extension candidates. Maximal degree in co-relation 15813. Up to 3392 conditions per place. [2024-11-09 02:46:36,751 INFO L140 encePairwiseOnDemand]: 35/44 looper letters, 130 selfloop transitions, 31 changer transitions 2/171 dead transitions. [2024-11-09 02:46:36,751 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 101 places, 171 transitions, 1117 flow [2024-11-09 02:46:36,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-11-09 02:46:36,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-11-09 02:46:36,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 163 transitions. [2024-11-09 02:46:36,752 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.4630681818181818 [2024-11-09 02:46:36,752 INFO L175 Difference]: Start difference. First operand has 102 places, 140 transitions, 751 flow. Second operand 8 states and 163 transitions. [2024-11-09 02:46:36,752 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 101 places, 171 transitions, 1117 flow [2024-11-09 02:46:36,775 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 95 places, 171 transitions, 1005 flow, removed 45 selfloop flow, removed 6 redundant places. [2024-11-09 02:46:36,776 INFO L231 Difference]: Finished difference. Result has 100 places, 120 transitions, 679 flow [2024-11-09 02:46:36,777 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=482, PETRI_DIFFERENCE_MINUEND_PLACES=88, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=109, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=22, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=80, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=679, PETRI_PLACES=100, PETRI_TRANSITIONS=120} [2024-11-09 02:46:36,777 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 57 predicate places. [2024-11-09 02:46:36,777 INFO L471 AbstractCegarLoop]: Abstraction has has 100 places, 120 transitions, 679 flow [2024-11-09 02:46:36,778 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 12.11111111111111) internal successors, (109), 9 states have internal predecessors, (109), 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-11-09 02:46:36,778 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:36,778 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:36,790 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-11-09 02:46:36,978 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable6 [2024-11-09 02:46:36,979 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:36,979 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:36,979 INFO L85 PathProgramCache]: Analyzing trace with hash -295622918, now seen corresponding path program 1 times [2024-11-09 02:46:36,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:36,980 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1017565401] [2024-11-09 02:46:36,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:36,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:36,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:37,067 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:37,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:37,067 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1017565401] [2024-11-09 02:46:37,067 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1017565401] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:46:37,068 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [601881292] [2024-11-09 02:46:37,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:37,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:37,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:37,071 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:46:37,072 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-11-09 02:46:37,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:37,146 INFO L255 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-09 02:46:37,147 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:46:37,189 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:37,190 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 02:46:37,243 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:37,244 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [601881292] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 02:46:37,244 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 02:46:37,244 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 11 [2024-11-09 02:46:37,244 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1414178156] [2024-11-09 02:46:37,246 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 02:46:37,247 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2024-11-09 02:46:37,247 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:37,247 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2024-11-09 02:46:37,248 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=90, Unknown=0, NotChecked=0, Total=132 [2024-11-09 02:46:37,248 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:37,248 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 100 places, 120 transitions, 679 flow. Second operand has 12 states, 12 states have (on average 16.5) internal successors, (198), 12 states have internal predecessors, (198), 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-11-09 02:46:37,248 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:37,248 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:37,248 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:37,690 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][109], [Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), 50#true, 498#true, Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 338#(and (= (+ ~t~0 1) 0) (= ~s~0 0) (not (= |thread3Thread1of1ForFork1_~k~0#1| 0))), 10#L122-1true, Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), 34#L65-2true, Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), 27#L92true, Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 54#(<= ~q1_back~0 ~q1_front~0), 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), 375#true]) [2024-11-09 02:46:37,690 INFO L294 olderBase$Statistics]: this new event has 34 ancestors and is cut-off event [2024-11-09 02:46:37,690 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2024-11-09 02:46:37,690 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2024-11-09 02:46:37,690 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2024-11-09 02:46:37,717 INFO L124 PetriNetUnfolderBase]: 3488/6915 cut-off events. [2024-11-09 02:46:37,717 INFO L125 PetriNetUnfolderBase]: For 10395/10458 co-relation queries the response was YES. [2024-11-09 02:46:37,731 INFO L83 FinitePrefix]: Finished finitePrefix Result has 18551 conditions, 6915 events. 3488/6915 cut-off events. For 10395/10458 co-relation queries the response was YES. Maximal size of possible extension queue 354. Compared 52579 event pairs, 1949 based on Foata normal form. 282/7047 useless extension candidates. Maximal degree in co-relation 18530. Up to 2907 conditions per place. [2024-11-09 02:46:37,745 INFO L140 encePairwiseOnDemand]: 38/44 looper letters, 113 selfloop transitions, 8 changer transitions 9/171 dead transitions. [2024-11-09 02:46:37,745 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 106 places, 171 transitions, 1170 flow [2024-11-09 02:46:37,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-09 02:46:37,746 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2024-11-09 02:46:37,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 157 transitions. [2024-11-09 02:46:37,747 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5097402597402597 [2024-11-09 02:46:37,747 INFO L175 Difference]: Start difference. First operand has 100 places, 120 transitions, 679 flow. Second operand 7 states and 157 transitions. [2024-11-09 02:46:37,747 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 106 places, 171 transitions, 1170 flow [2024-11-09 02:46:37,790 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 104 places, 171 transitions, 1148 flow, removed 4 selfloop flow, removed 2 redundant places. [2024-11-09 02:46:37,792 INFO L231 Difference]: Finished difference. Result has 107 places, 121 transitions, 720 flow [2024-11-09 02:46:37,792 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=664, PETRI_DIFFERENCE_MINUEND_PLACES=98, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=120, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=112, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=720, PETRI_PLACES=107, PETRI_TRANSITIONS=121} [2024-11-09 02:46:37,792 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 64 predicate places. [2024-11-09 02:46:37,792 INFO L471 AbstractCegarLoop]: Abstraction has has 107 places, 121 transitions, 720 flow [2024-11-09 02:46:37,793 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 16.5) internal successors, (198), 12 states have internal predecessors, (198), 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-11-09 02:46:37,793 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:37,793 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:37,807 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2024-11-09 02:46:37,997 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:37,998 INFO L396 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:37,998 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:37,998 INFO L85 PathProgramCache]: Analyzing trace with hash 1105036102, now seen corresponding path program 2 times [2024-11-09 02:46:37,998 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:37,999 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1598022346] [2024-11-09 02:46:37,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:37,999 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:38,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:38,300 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:38,300 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:38,300 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1598022346] [2024-11-09 02:46:38,300 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1598022346] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:46:38,300 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [273421001] [2024-11-09 02:46:38,300 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 02:46:38,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:38,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:38,302 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:46:38,303 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-11-09 02:46:38,374 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 02:46:38,375 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 02:46:38,376 INFO L255 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-11-09 02:46:38,378 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:46:39,046 INFO L349 Elim1Store]: treesize reduction 25, result has 49.0 percent of original size [2024-11-09 02:46:39,047 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 47 treesize of output 38 [2024-11-09 02:46:39,112 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:39,113 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 02:46:39,585 INFO L349 Elim1Store]: treesize reduction 9, result has 90.3 percent of original size [2024-11-09 02:46:39,585 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 75 treesize of output 110 [2024-11-09 02:46:39,855 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:39,855 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [273421001] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 02:46:39,855 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 02:46:39,855 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 12, 13] total 31 [2024-11-09 02:46:39,855 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [772819768] [2024-11-09 02:46:39,855 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 02:46:39,856 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2024-11-09 02:46:39,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:39,856 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2024-11-09 02:46:39,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=140, Invalid=852, Unknown=0, NotChecked=0, Total=992 [2024-11-09 02:46:39,898 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 44 [2024-11-09 02:46:39,899 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 107 places, 121 transitions, 720 flow. Second operand has 32 states, 32 states have (on average 10.96875) internal successors, (351), 32 states have internal predecessors, (351), 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-11-09 02:46:39,899 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:39,899 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 44 [2024-11-09 02:46:39,899 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:46:47,610 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:46:53,180 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:46:55,674 INFO L124 PetriNetUnfolderBase]: 23440/37414 cut-off events. [2024-11-09 02:46:55,674 INFO L125 PetriNetUnfolderBase]: For 73748/74008 co-relation queries the response was YES. [2024-11-09 02:46:55,768 INFO L83 FinitePrefix]: Finished finitePrefix Result has 114617 conditions, 37414 events. 23440/37414 cut-off events. For 73748/74008 co-relation queries the response was YES. Maximal size of possible extension queue 1356. Compared 276247 event pairs, 2470 based on Foata normal form. 565/37936 useless extension candidates. Maximal degree in co-relation 114593. Up to 5933 conditions per place. [2024-11-09 02:46:55,912 INFO L140 encePairwiseOnDemand]: 27/44 looper letters, 851 selfloop transitions, 358 changer transitions 3/1218 dead transitions. [2024-11-09 02:46:55,912 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 174 places, 1218 transitions, 8637 flow [2024-11-09 02:46:55,913 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 68 states. [2024-11-09 02:46:55,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2024-11-09 02:46:55,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 1403 transitions. [2024-11-09 02:46:55,919 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.46891711229946526 [2024-11-09 02:46:55,919 INFO L175 Difference]: Start difference. First operand has 107 places, 121 transitions, 720 flow. Second operand 68 states and 1403 transitions. [2024-11-09 02:46:55,920 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 174 places, 1218 transitions, 8637 flow [2024-11-09 02:46:56,310 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 170 places, 1218 transitions, 8240 flow, removed 194 selfloop flow, removed 4 redundant places. [2024-11-09 02:46:56,319 INFO L231 Difference]: Finished difference. Result has 221 places, 546 transitions, 5366 flow [2024-11-09 02:46:56,319 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=691, PETRI_DIFFERENCE_MINUEND_PLACES=103, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=121, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=30, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=53, PETRI_DIFFERENCE_SUBTRAHEND_STATES=68, PETRI_FLOW=5366, PETRI_PLACES=221, PETRI_TRANSITIONS=546} [2024-11-09 02:46:56,320 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 178 predicate places. [2024-11-09 02:46:56,320 INFO L471 AbstractCegarLoop]: Abstraction has has 221 places, 546 transitions, 5366 flow [2024-11-09 02:46:56,320 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 10.96875) internal successors, (351), 32 states have internal predecessors, (351), 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-11-09 02:46:56,320 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:46:56,320 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:46:56,338 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2024-11-09 02:46:56,524 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:56,525 INFO L396 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:46:56,525 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:46:56,525 INFO L85 PathProgramCache]: Analyzing trace with hash -816661134, now seen corresponding path program 1 times [2024-11-09 02:46:56,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:46:56,525 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1785610193] [2024-11-09 02:46:56,525 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:56,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:46:56,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:56,697 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:46:56,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:46:56,698 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1785610193] [2024-11-09 02:46:56,698 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1785610193] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:46:56,698 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [512389023] [2024-11-09 02:46:56,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:46:56,699 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:46:56,699 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:46:56,700 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:46:56,701 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-11-09 02:46:56,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:46:56,770 INFO L255 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 02:46:56,771 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:46:56,810 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-09 02:46:56,811 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-09 02:46:56,811 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [512389023] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:46:56,811 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-09 02:46:56,811 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [6] total 8 [2024-11-09 02:46:56,811 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [892534211] [2024-11-09 02:46:56,811 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:46:56,811 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-11-09 02:46:56,812 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:46:56,812 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 02:46:56,812 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2024-11-09 02:46:56,812 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-11-09 02:46:56,812 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 221 places, 546 transitions, 5366 flow. Second operand has 4 states, 4 states have (on average 19.75) internal successors, (79), 4 states have internal predecessors, (79), 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-11-09 02:46:56,813 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:46:56,813 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-11-09 02:46:56,813 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:47:01,701 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][511], [6#L121-4true, 1136#true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 12#thread1EXITtrue, 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 13#L77true]) [2024-11-09 02:47:01,702 INFO L294 olderBase$Statistics]: this new event has 41 ancestors and is cut-off event [2024-11-09 02:47:01,702 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-11-09 02:47:01,702 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-11-09 02:47:01,702 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-11-09 02:47:01,706 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][543], [6#L121-4true, 1136#true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 12#thread1EXITtrue, 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), 34#L65-2true, Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)))]) [2024-11-09 02:47:01,707 INFO L294 olderBase$Statistics]: this new event has 42 ancestors and is cut-off event [2024-11-09 02:47:01,707 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-11-09 02:47:01,707 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-11-09 02:47:01,707 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-11-09 02:47:01,998 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][511], [18#L122true, 1136#true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 12#thread1EXITtrue, 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 13#L77true]) [2024-11-09 02:47:01,998 INFO L294 olderBase$Statistics]: this new event has 42 ancestors and is cut-off event [2024-11-09 02:47:01,998 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-11-09 02:47:01,999 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-11-09 02:47:01,999 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-11-09 02:47:02,003 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][543], [18#L122true, 1136#true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 12#thread1EXITtrue, 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), 34#L65-2true, Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)))]) [2024-11-09 02:47:02,004 INFO L294 olderBase$Statistics]: this new event has 43 ancestors and is cut-off event [2024-11-09 02:47:02,004 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-11-09 02:47:02,004 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-11-09 02:47:02,004 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-11-09 02:47:02,136 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][511], [1136#true, 10#L122-1true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 13#L77true]) [2024-11-09 02:47:02,137 INFO L294 olderBase$Statistics]: this new event has 43 ancestors and is cut-off event [2024-11-09 02:47:02,137 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-11-09 02:47:02,137 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-11-09 02:47:02,137 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-11-09 02:47:02,140 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([712] L88-->L92: Formula: (and (not (= (ite (and (< v_~q2_front~0_81 v_~q2_back~0_90) (< v_~q2_front~0_81 v_~n2~0_56) (<= 0 v_~q2_front~0_81)) 1 0) 0)) (= (select (select |v_#memory_int#1_82| v_~q2~0.base_79) (+ v_~q2~0.offset_79 (* 4 v_~q2_front~0_81))) |v_thread3Thread1of1ForFork1_~k~0#1_3|) (= (+ v_~q2_front~0_81 1) v_~q2_front~0_80)) InVars {~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, ~q2_front~0=v_~q2_front~0_81, ~q2~0.base=v_~q2~0.base_79, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} OutVars{thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork1_#t~mem10#1=|v_thread3Thread1of1ForFork1_#t~mem10#1_1|, ~n2~0=v_~n2~0_56, ~q2~0.offset=v_~q2~0.offset_79, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork1_#t~post11#1=|v_thread3Thread1of1ForFork1_#t~post11#1_1|, ~q2_front~0=v_~q2_front~0_80, ~q2~0.base=v_~q2~0.base_79, thread3Thread1of1ForFork1_~k~0#1=|v_thread3Thread1of1ForFork1_~k~0#1_3|, #memory_int#1=|v_#memory_int#1_82|, ~q2_back~0=v_~q2_back~0_90} AuxVars[] AssignedVars[thread3Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork1_#t~mem10#1, thread3Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork1_#t~post11#1, ~q2_front~0, thread3Thread1of1ForFork1_~k~0#1][543], [1136#true, 10#L122-1true, 27#L92true, Black: 54#(<= ~q1_back~0 ~q1_front~0), 301#(or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))), Black: 1018#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_33 Int) (v_~q1_back~0_145 Int) (v_subst_32 Int)) (and (<= v_~q1_back~0_145 0) (= 2 (select (select |#memory_int#1| v_subst_33) (+ (* v_~q1_back~0_145 4) v_subst_32))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0)), Black: 996#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1008#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= ~t~0 0) (exists ((v_subst_26 Int) (v_~q1_front~0_103 Int) (v_subst_27 Int) (v_~q1_back~0_145 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_27) (+ (* v_~q1_back~0_145 4) v_subst_26))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (= ~s~0 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1030#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (forall ((v_subst_37 Int)) (or (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_37)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_37 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1064#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_45 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_45)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_45 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1074#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1010#(and (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1040#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (+ (* 2 ~t~0) 2) ~s~0) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 62#(and (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 0)), Black: 1024#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1006#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_25 Int)) (or (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_25 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)) (= (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_25)) 2) (* 2 ~t~0) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1014#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (exists ((v_~q1_front~0_103 Int) (v_subst_29 Int) (v_~q1_back~0_145 Int) (v_subst_30 Int)) (and (= 2 (select (select |#memory_int#1| v_subst_30) (+ (* v_~q1_back~0_145 4) v_subst_29))) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 992#(and (<= ~q1_front~0 ~q1_back~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (exists ((v_subst_15 Int) (v_~q1_front~0_103 Int) (v_subst_16 Int) (v_~q1_back~0_145 Int)) (and (<= (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_front~0_103 4) v_subst_15)) |thread2Thread1of1ForFork0_~j~0#1|) (<= (+ v_~q1_front~0_103 1) ~n1~0) (<= (+ v_~q1_back~0_145 1) ~q1_back~0) (= 2 (select (select |#memory_int#1| v_subst_16) (+ (* v_~q1_back~0_145 4) v_subst_15))) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 1050#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (forall ((v_subst_41 Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_41)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_41 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), 50#true, Black: 1062#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 900#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1036#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 982#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 2)) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1066#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 889#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), Black: 732#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 872#(or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1012#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_28 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_28)) 2) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_28 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 721#(and (<= ~n1~0 1) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1))), Black: 1052#(and (= (+ (* 2 ~t~0) 2) ~s~0) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 502#(<= ~n1~0 1), Black: 942#(or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))), Black: 885#(or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 1046#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 907#(or (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), Black: 725#true, Black: 980#(and (<= ~q1_front~0 ~q1_back~0) (<= ~n1~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 2) (= ~t~0 0) (or (< ~q1_front~0 0) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1044#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_40 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_40))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_40 (* ~q2_back~0 4))) 1) |thread2Thread1of1ForFork0_~j~0#1|)))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((v_subst_39 Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_39)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) ~s~0)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_39 (* ~q2_back~0 4))) 1)))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1048#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1)))), Black: 1016#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)) (or (forall ((v_subst_31 Int)) (or (= (+ (* 2 ~t~0) 2 (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_31)))) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_31 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1078#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 896#(or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)), 375#true, Black: 1038#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1042#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (forall ((v_subst_38 Int)) (or (= (+ (* 2 ~t~0) (* 2 (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) v_subst_38))) 2) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ v_subst_38 (* ~q2_back~0 4))) 1))))) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0))), Black: 1056#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 1084#(and (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 1034#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread3Thread1of1ForFork1_~k~0#1| 1) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 1058#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= (+ (* 2 ~t~0) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0) (< 0 |thread2Thread1of1ForFork0_~j~0#1|))), Black: 929#(or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))))) (< ~n1~0 (+ ~q1_back~0 1))), Black: 1072#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0)), Black: 1026#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 990#(and (<= ~q1_front~0 ~q1_back~0) (or (forall ((~q2~0.offset Int)) (or (not (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1))) (= (+ 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) |thread2Thread1of1ForFork0_~j~0#1|))) (< ~q1_back~0 0) (< ~n1~0 (+ ~q1_back~0 1)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 859#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 1022#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (= (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) (exists ((v_~q1_front~0_103 Int) (v_subst_36 Int) (v_subst_35 Int) (v_~q1_back~0_145 Int)) (and (= (select (select |#memory_int#1| v_subst_36) (+ (* v_~q1_back~0_145 4) v_subst_35)) 2) (<= v_~q1_back~0_145 0) (<= 0 v_~q1_front~0_103) (<= v_~q1_front~0_103 v_~q1_back~0_145))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= 2 ~s~0) (= ~t~0 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 986#(and (<= ~q1_front~0 ~q1_back~0) (= ~q1~0.offset 0) (= ~t~0 0) (or (< ~q1_front~0 0) (forall ((~q2~0.offset Int)) (or (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))) (= (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) (+ (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1)))) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q2_back~0 ~q2_front~0) (<= ~n1~0 2) (= ~s~0 0)), Black: 455#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), Black: 308#(and (<= ~n2~0 1) (<= |ULTIMATE.start_create_fresh_int_array_~i~1#1| 1) (= ~t~0 0) (<= (+ |ULTIMATE.start_create_fresh_int_array_~i~1#1| ~n1~0) (+ |ULTIMATE.start_create_fresh_int_array_~size#1| 1)) (= ~q1_back~0 ~q1_front~0) (= ~q2_back~0 ~q2_front~0) (<= ~n2~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~s~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 1028#(and (= (+ (* 2 ~t~0) 2) ~s~0) (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 994#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (= ~q1~0.offset 0) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 463#(and (= (+ |thread3Thread1of1ForFork1_~k~0#1| 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0)), Black: 336#(and (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (= (+ (* 2 ~t~0) (* 2 |thread3Thread1of1ForFork1_~k~0#1|) 2) ~s~0)), Black: 467#(and (= (+ ~t~0 1) 0) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~s~0 0)), Black: 1004#(and (or (< ~q1_front~0 0) (< ~n1~0 (+ ~q1_front~0 2)) (= ~q1_back~0 ~q1_front~0) (< ~n1~0 (+ ~q1_back~0 2))) (or (< ~q1_front~0 1) (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 3))) (or (= |thread2Thread1of1ForFork0_~j~0#1| 2) (< ~n1~0 (+ ~q1_back~0 1))) (= ~q1~0.offset 0) (or (< ~q1_front~0 0) (< ~q1_back~0 (+ ~q1_front~0 1)) (forall ((~q2~0.offset Int)) (or (= (+ (* 2 ~t~0) (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (* ~q1_front~0 4))))) (< ~n1~0 (+ ~q1_back~0 1))) (or (< ~q1_back~0 1) (not (= ~q1_front~0 0)) (< ~n1~0 3))), Black: 459#(and (exists ((~q1~0.offset Int) (v_~q1_front~0_101 Int) (~q1~0.base Int)) (= (select (select |#memory_int#1| ~q1~0.base) (+ (* v_~q1_front~0_101 4) ~q1~0.offset)) 0)) (= |thread2Thread1of1ForFork0_~j~0#1| 0) (= ~t~0 0) (= ~s~0 0) (= (+ (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 1) 0)), Black: 439#(and (= (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4))) 0) (= ~t~0 0) (= ~q2_back~0 ~q2_front~0) (= ~s~0 0)), 34#L65-2true, Black: 320#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0)))), Black: 328#(and (exists ((v_~q1_front~0_100 Int) (v_subst_9 Int) (v_subst_10 Int)) (= (select (select |#memory_int#1| v_subst_10) (+ (* v_~q1_front~0_100 4) v_subst_9)) 0)) (or (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| ~q1~0.base) (+ ~q1~0.offset (* ~q1_front~0 4)))) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0)) (<= 0 |thread2Thread1of1ForFork0_~j~0#1|) (= ~t~0 0) (= 0 ~q2_front~0) (= |thread2Thread1of1ForFork0_~j~0#1| (+ (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset) 1)) (= |thread2Thread1of1ForFork0_~j~0#1| ~s~0) (or (forall ((v_subst_8 Int) (v_subst_7 Int)) (or (< (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1) (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_front~0 4) v_subst_7))) (not (= (select (select |#memory_int#1| v_subst_8) (+ (* ~q1_back~0 4) v_subst_7)) 0)))) (= (+ (* 2 (select (select |#memory_int#1| ~q2~0.base) ~q2~0.offset)) 1) (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) ~s~0)) (< 0 (+ (select (select |#memory_int#1| ~q2~0.base) (+ ~q2~0.offset (* ~q2_back~0 4))) 1)) (< ~n2~0 (+ ~q2_back~0 1)) (< ~q2_back~0 0))), Black: 91#(= (+ (* 2 ~t~0) 2) ~s~0), Black: 234#(or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)), 1002#(and (or (not (= ~q1_front~0 0)) (= (select (select |#memory_int#1| ~q1~0.base) 0) 2) (< ~n1~0 (+ ~q1_back~0 1))) (or (< (+ ~q1_front~0 ~n1~0) (+ ~q1_back~0 2)) (< ~q1_front~0 1)) (= ~q1~0.offset 0) (= |thread2Thread1of1ForFork0_~j~0#1| 2)), Black: 340#(and (or (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) (+ |thread2Thread1of1ForFork0_~j~0#1| ~s~0)) (< 0 |thread2Thread1of1ForFork0_~j~0#1|)) (or (and (= 0 ~q2_front~0) (= ~q1_back~0 ~q1_front~0) (= (* 2 ~t~0) ~s~0)) (not (= ~q2_back~0 0))) (or (< 0 |thread2Thread1of1ForFork0_~j~0#1|) (= (+ (* 2 ~t~0) 2 (* (select (select |#memory_int#1| ~q2~0.base) (+ (* 4 ~q2_front~0) ~q2~0.offset)) 2)) ~s~0)))]) [2024-11-09 02:47:02,141 INFO L294 olderBase$Statistics]: this new event has 44 ancestors and is cut-off event [2024-11-09 02:47:02,141 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-11-09 02:47:02,141 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-11-09 02:47:02,141 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-11-09 02:47:02,677 INFO L124 PetriNetUnfolderBase]: 20209/37670 cut-off events. [2024-11-09 02:47:02,677 INFO L125 PetriNetUnfolderBase]: For 609594/611242 co-relation queries the response was YES. [2024-11-09 02:47:02,956 INFO L83 FinitePrefix]: Finished finitePrefix Result has 178230 conditions, 37670 events. 20209/37670 cut-off events. For 609594/611242 co-relation queries the response was YES. Maximal size of possible extension queue 1348. Compared 344781 event pairs, 4388 based on Foata normal form. 1313/38396 useless extension candidates. Maximal degree in co-relation 178157. Up to 10612 conditions per place. [2024-11-09 02:47:03,144 INFO L140 encePairwiseOnDemand]: 41/44 looper letters, 511 selfloop transitions, 68 changer transitions 53/750 dead transitions. [2024-11-09 02:47:03,144 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 219 places, 750 transitions, 8953 flow [2024-11-09 02:47:03,145 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-09 02:47:03,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-11-09 02:47:03,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 116 transitions. [2024-11-09 02:47:03,145 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6590909090909091 [2024-11-09 02:47:03,145 INFO L175 Difference]: Start difference. First operand has 221 places, 546 transitions, 5366 flow. Second operand 4 states and 116 transitions. [2024-11-09 02:47:03,145 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 219 places, 750 transitions, 8953 flow [2024-11-09 02:47:07,568 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 216 places, 750 transitions, 7884 flow, removed 531 selfloop flow, removed 3 redundant places. [2024-11-09 02:47:07,575 INFO L231 Difference]: Finished difference. Result has 218 places, 482 transitions, 4568 flow [2024-11-09 02:47:07,575 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=4272, PETRI_DIFFERENCE_MINUEND_PLACES=213, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=492, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=29, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=429, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=4568, PETRI_PLACES=218, PETRI_TRANSITIONS=482} [2024-11-09 02:47:07,575 INFO L277 CegarLoopForPetriNet]: 43 programPoint places, 175 predicate places. [2024-11-09 02:47:07,575 INFO L471 AbstractCegarLoop]: Abstraction has has 218 places, 482 transitions, 4568 flow [2024-11-09 02:47:07,576 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 19.75) internal successors, (79), 4 states have internal predecessors, (79), 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-11-09 02:47:07,576 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:47:07,576 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:47:07,587 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2024-11-09 02:47:07,776 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2024-11-09 02:47:07,776 INFO L396 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-11-09 02:47:07,777 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:47:07,777 INFO L85 PathProgramCache]: Analyzing trace with hash 1784712248, now seen corresponding path program 3 times [2024-11-09 02:47:07,777 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:47:07,777 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865118781] [2024-11-09 02:47:07,777 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:47:07,777 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:47:07,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:47:08,087 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:47:08,088 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:47:08,088 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1865118781] [2024-11-09 02:47:08,088 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1865118781] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 02:47:08,088 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [548970541] [2024-11-09 02:47:08,088 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 02:47:08,088 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 02:47:08,089 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:47:08,090 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 02:47:08,091 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2024-11-09 02:47:08,169 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2024-11-09 02:47:08,169 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 02:47:08,171 INFO L255 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 36 conjuncts are in the unsatisfiable core [2024-11-09 02:47:08,172 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 02:47:08,703 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:47:08,703 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 02:47:09,069 INFO L349 Elim1Store]: treesize reduction 13, result has 86.0 percent of original size [2024-11-09 02:47:09,069 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 76 treesize of output 107 [2024-11-09 02:47:09,248 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 02:47:09,248 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [548970541] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 02:47:09,248 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 02:47:09,248 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 12, 13] total 31 [2024-11-09 02:47:09,249 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1195013740] [2024-11-09 02:47:09,249 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 02:47:09,249 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2024-11-09 02:47:09,249 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:47:09,250 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2024-11-09 02:47:09,250 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=837, Unknown=0, NotChecked=0, Total=992 [2024-11-09 02:47:09,311 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 44 [2024-11-09 02:47:09,311 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 218 places, 482 transitions, 4568 flow. Second operand has 32 states, 32 states have (on average 10.875) internal successors, (348), 32 states have internal predecessors, (348), 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-11-09 02:47:09,311 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:47:09,311 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 44 [2024-11-09 02:47:09,311 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:47:12,697 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.50s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:47:17,035 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [0, 1] [2024-11-09 02:47:18,948 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.23s for a HTC check with result INVALID. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:47:20,875 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.05s for a HTC check with result INVALID. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:47:23,902 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.36s for a HTC check with result INVALID. Formula has sorts [Array, Bool, Int], hasArrays=true, hasNonlinArith=false, quantifiers [1] [2024-11-09 02:47:40,655 INFO L124 PetriNetUnfolderBase]: 71469/111981 cut-off events. [2024-11-09 02:47:40,655 INFO L125 PetriNetUnfolderBase]: For 1769385/1771033 co-relation queries the response was YES. [2024-11-09 02:47:42,318 INFO L83 FinitePrefix]: Finished finitePrefix Result has 542061 conditions, 111981 events. 71469/111981 cut-off events. For 1769385/1771033 co-relation queries the response was YES. Maximal size of possible extension queue 2865. Compared 914727 event pairs, 10736 based on Foata normal form. 1303/113233 useless extension candidates. Maximal degree in co-relation 541985. Up to 37566 conditions per place. [2024-11-09 02:47:42,764 INFO L140 encePairwiseOnDemand]: 28/44 looper letters, 1276 selfloop transitions, 736 changer transitions 4/2021 dead transitions. [2024-11-09 02:47:42,764 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 248 places, 2021 transitions, 23660 flow [2024-11-09 02:47:42,765 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 61 states. [2024-11-09 02:47:42,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2024-11-09 02:47:42,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 1248 transitions. [2024-11-09 02:47:42,768 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.46497764530551416 [2024-11-09 02:47:42,768 INFO L175 Difference]: Start difference. First operand has 218 places, 482 transitions, 4568 flow. Second operand 61 states and 1248 transitions. [2024-11-09 02:47:42,768 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 248 places, 2021 transitions, 23660 flow