./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/weaver/popl20-more-array-sum2.wvr.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 7724a2de Calling Ultimate with: /root/.sdkman/candidates/java/current/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 ../../../trunk/examples/svcomp/weaver/popl20-more-array-sum2.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 6d47c8696b49948f6f8f53dd9eda6f4e0281717fd9a29e264a19ded5493fa577 --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-7724a2d-m [2024-06-27 16:53:54,861 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-27 16:53:54,917 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-27 16:53:54,921 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-27 16:53:54,921 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-27 16:53:54,935 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-27 16:53:54,936 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-27 16:53:54,936 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-27 16:53:54,936 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-27 16:53:54,937 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-27 16:53:54,937 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-27 16:53:54,937 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-27 16:53:54,938 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-27 16:53:54,938 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-27 16:53:54,938 INFO L153 SettingsManager]: * Use SBE=true [2024-06-27 16:53:54,939 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-27 16:53:54,939 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-27 16:53:54,939 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-27 16:53:54,939 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-27 16:53:54,940 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-27 16:53:54,940 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-27 16:53:54,940 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-27 16:53:54,941 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-27 16:53:54,941 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-27 16:53:54,941 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-27 16:53:54,941 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-27 16:53:54,942 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-27 16:53:54,942 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-27 16:53:54,942 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-27 16:53:54,942 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-27 16:53:54,943 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-27 16:53:54,943 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-27 16:53:54,943 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 16:53:54,943 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-27 16:53:54,943 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-27 16:53:54,944 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-27 16:53:54,944 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-27 16:53:54,944 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-27 16:53:54,944 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-27 16:53:54,944 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-27 16:53:54,945 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-27 16:53:54,945 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-27 16:53:54,945 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-27 16:53:54,945 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 -> 6d47c8696b49948f6f8f53dd9eda6f4e0281717fd9a29e264a19ded5493fa577 [2024-06-27 16:53:55,112 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-27 16:53:55,132 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-27 16:53:55,134 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-27 16:53:55,135 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-27 16:53:55,135 INFO L274 PluginConnector]: CDTParser initialized [2024-06-27 16:53:55,136 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/weaver/popl20-more-array-sum2.wvr.c [2024-06-27 16:53:56,141 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-27 16:53:56,298 INFO L384 CDTParser]: Found 1 translation units. [2024-06-27 16:53:56,299 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-more-array-sum2.wvr.c [2024-06-27 16:53:56,309 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/adf492c08/374e7c5584864e4099418defb2369ca1/FLAGf9a51433d [2024-06-27 16:53:56,322 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/adf492c08/374e7c5584864e4099418defb2369ca1 [2024-06-27 16:53:56,324 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-27 16:53:56,325 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-06-27 16:53:56,326 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-27 16:53:56,326 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-27 16:53:56,330 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-27 16:53:56,332 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,333 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5060130 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56, skipping insertion in model container [2024-06-27 16:53:56,333 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,352 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-27 16:53:56,508 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-more-array-sum2.wvr.c[2638,2651] [2024-06-27 16:53:56,516 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 16:53:56,522 INFO L202 MainTranslator]: Completed pre-run [2024-06-27 16:53:56,540 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-more-array-sum2.wvr.c[2638,2651] [2024-06-27 16:53:56,542 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 16:53:56,555 INFO L206 MainTranslator]: Completed translation [2024-06-27 16:53:56,555 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56 WrapperNode [2024-06-27 16:53:56,555 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-27 16:53:56,556 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-27 16:53:56,556 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-27 16:53:56,556 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-27 16:53:56,561 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,568 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,589 INFO L138 Inliner]: procedures = 24, calls = 37, calls flagged for inlining = 16, calls inlined = 28, statements flattened = 264 [2024-06-27 16:53:56,590 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-27 16:53:56,590 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-27 16:53:56,590 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-27 16:53:56,590 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-27 16:53:56,599 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,599 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,602 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,615 INFO L175 MemorySlicer]: Split 10 memory accesses to 2 slices as follows [2, 8]. 80 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-06-27 16:53:56,616 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,616 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,625 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,642 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,643 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,644 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,647 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-27 16:53:56,654 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-27 16:53:56,655 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-27 16:53:56,655 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-27 16:53:56,656 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (1/1) ... [2024-06-27 16:53:56,660 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 16:53:56,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:53:56,683 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-06-27 16:53:56,730 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-06-27 16:53:56,754 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-27 16:53:56,754 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-06-27 16:53:56,754 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-06-27 16:53:56,754 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-06-27 16:53:56,754 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-06-27 16:53:56,755 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2024-06-27 16:53:56,755 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2024-06-27 16:53:56,756 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-27 16:53:56,756 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-27 16:53:56,756 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-06-27 16:53:56,756 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-06-27 16:53:56,756 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-06-27 16:53:56,757 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-06-27 16:53:56,757 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-06-27 16:53:56,757 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-27 16:53:56,757 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-27 16:53:56,758 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-06-27 16:53:56,758 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-06-27 16:53:56,760 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-27 16:53:56,864 INFO L244 CfgBuilder]: Building ICFG [2024-06-27 16:53:56,866 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-27 16:53:57,172 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-27 16:53:57,172 INFO L293 CfgBuilder]: Performing block encoding [2024-06-27 16:53:57,502 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-27 16:53:57,502 INFO L320 CfgBuilder]: Removed 5 assume(true) statements. [2024-06-27 16:53:57,503 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 04:53:57 BoogieIcfgContainer [2024-06-27 16:53:57,503 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-27 16:53:57,505 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-27 16:53:57,506 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-27 16:53:57,508 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-27 16:53:57,508 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.06 04:53:56" (1/3) ... [2024-06-27 16:53:57,509 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7911eb82 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 04:53:57, skipping insertion in model container [2024-06-27 16:53:57,509 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 04:53:56" (2/3) ... [2024-06-27 16:53:57,510 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7911eb82 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 04:53:57, skipping insertion in model container [2024-06-27 16:53:57,510 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 04:53:57" (3/3) ... [2024-06-27 16:53:57,511 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-more-array-sum2.wvr.c [2024-06-27 16:53:57,518 WARN L146 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-06-27 16:53:57,524 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-27 16:53:57,525 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-06-27 16:53:57,525 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-27 16:53:57,580 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2024-06-27 16:53:57,608 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 40 places, 35 transitions, 91 flow [2024-06-27 16:53:57,640 INFO L124 PetriNetUnfolderBase]: 5/32 cut-off events. [2024-06-27 16:53:57,641 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-06-27 16:53:57,644 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45 conditions, 32 events. 5/32 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 39 event pairs, 0 based on Foata normal form. 0/26 useless extension candidates. Maximal degree in co-relation 24. Up to 2 conditions per place. [2024-06-27 16:53:57,644 INFO L82 GeneralOperation]: Start removeDead. Operand has 40 places, 35 transitions, 91 flow [2024-06-27 16:53:57,647 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 36 places, 31 transitions, 80 flow [2024-06-27 16:53:57,659 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-27 16:53:57,677 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=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;@6948512d, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-27 16:53:57,677 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2024-06-27 16:53:57,692 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-27 16:53:57,692 INFO L124 PetriNetUnfolderBase]: 5/30 cut-off events. [2024-06-27 16:53:57,692 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-06-27 16:53:57,692 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:53:57,693 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 16:53:57,693 INFO L420 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-06-27 16:53:57,698 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:53:57,698 INFO L85 PathProgramCache]: Analyzing trace with hash 1493741134, now seen corresponding path program 1 times [2024-06-27 16:53:57,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:53:57,705 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [168618537] [2024-06-27 16:53:57,705 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:53:57,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:53:57,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:53:58,067 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:53:58,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:53:58,068 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [168618537] [2024-06-27 16:53:58,068 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [168618537] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 16:53:58,068 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 16:53:58,068 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-27 16:53:58,069 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [200194748] [2024-06-27 16:53:58,070 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 16:53:58,076 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 16:53:58,079 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:53:58,099 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 16:53:58,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 16:53:58,113 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 35 [2024-06-27 16:53:58,115 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 31 transitions, 80 flow. Second operand has 4 states, 4 states have (on average 11.75) internal successors, (47), 4 states have internal predecessors, (47), 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-06-27 16:53:58,115 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:53:58,115 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 35 [2024-06-27 16:53:58,116 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:53:58,357 INFO L124 PetriNetUnfolderBase]: 431/669 cut-off events. [2024-06-27 16:53:58,358 INFO L125 PetriNetUnfolderBase]: For 58/58 co-relation queries the response was YES. [2024-06-27 16:53:58,363 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1364 conditions, 669 events. 431/669 cut-off events. For 58/58 co-relation queries the response was YES. Maximal size of possible extension queue 50. Compared 2570 event pairs, 306 based on Foata normal form. 1/662 useless extension candidates. Maximal degree in co-relation 1201. Up to 625 conditions per place. [2024-06-27 16:53:58,367 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 25 selfloop transitions, 4 changer transitions 1/34 dead transitions. [2024-06-27 16:53:58,367 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 39 places, 34 transitions, 146 flow [2024-06-27 16:53:58,369 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 16:53:58,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 16:53:58,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 61 transitions. [2024-06-27 16:53:58,377 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4357142857142857 [2024-06-27 16:53:58,378 INFO L175 Difference]: Start difference. First operand has 36 places, 31 transitions, 80 flow. Second operand 4 states and 61 transitions. [2024-06-27 16:53:58,378 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 39 places, 34 transitions, 146 flow [2024-06-27 16:53:58,381 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 33 places, 34 transitions, 134 flow, removed 0 selfloop flow, removed 6 redundant places. [2024-06-27 16:53:58,383 INFO L231 Difference]: Finished difference. Result has 35 places, 33 transitions, 94 flow [2024-06-27 16:53:58,384 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=68, PETRI_DIFFERENCE_MINUEND_PLACES=30, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=94, PETRI_PLACES=35, PETRI_TRANSITIONS=33} [2024-06-27 16:53:58,388 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, -1 predicate places. [2024-06-27 16:53:58,389 INFO L495 AbstractCegarLoop]: Abstraction has has 35 places, 33 transitions, 94 flow [2024-06-27 16:53:58,389 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 11.75) internal successors, (47), 4 states have internal predecessors, (47), 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-06-27 16:53:58,389 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:53:58,389 INFO L208 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] [2024-06-27 16:53:58,389 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-27 16:53:58,390 INFO L420 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-06-27 16:53:58,390 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:53:58,390 INFO L85 PathProgramCache]: Analyzing trace with hash -431074273, now seen corresponding path program 1 times [2024-06-27 16:53:58,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:53:58,390 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1009276643] [2024-06-27 16:53:58,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:53:58,390 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:53:58,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:53:58,557 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-27 16:53:58,558 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:53:58,558 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1009276643] [2024-06-27 16:53:58,558 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1009276643] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:53:58,558 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1834956248] [2024-06-27 16:53:58,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:53:58,558 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:53:58,559 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:53:58,561 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-06-27 16:53:58,589 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-06-27 16:53:58,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:53:58,646 INFO L262 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 6 conjunts are in the unsatisfiable core [2024-06-27 16:53:58,650 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:53:58,729 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-27 16:53:58,729 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:53:58,760 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-27 16:53:58,761 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1834956248] provided 1 perfect and 1 imperfect interpolant sequences [2024-06-27 16:53:58,761 INFO L185 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2024-06-27 16:53:58,761 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5, 4] total 9 [2024-06-27 16:53:58,762 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1219574562] [2024-06-27 16:53:58,762 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 16:53:58,762 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 16:53:58,762 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:53:58,763 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 16:53:58,764 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2024-06-27 16:53:58,768 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:53:58,769 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 33 transitions, 94 flow. Second operand has 5 states, 5 states have (on average 10.2) internal successors, (51), 5 states have internal predecessors, (51), 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-06-27 16:53:58,769 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:53:58,769 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:53:58,769 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:53:58,894 INFO L124 PetriNetUnfolderBase]: 627/935 cut-off events. [2024-06-27 16:53:58,895 INFO L125 PetriNetUnfolderBase]: For 8/8 co-relation queries the response was YES. [2024-06-27 16:53:58,896 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1888 conditions, 935 events. 627/935 cut-off events. For 8/8 co-relation queries the response was YES. Maximal size of possible extension queue 59. Compared 3689 event pairs, 219 based on Foata normal form. 0/890 useless extension candidates. Maximal degree in co-relation 1866. Up to 462 conditions per place. [2024-06-27 16:53:58,899 INFO L140 encePairwiseOnDemand]: 29/35 looper letters, 39 selfloop transitions, 5 changer transitions 0/47 dead transitions. [2024-06-27 16:53:58,899 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 47 transitions, 212 flow [2024-06-27 16:53:58,899 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 16:53:58,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 16:53:58,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 74 transitions. [2024-06-27 16:53:58,900 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4228571428571429 [2024-06-27 16:53:58,900 INFO L175 Difference]: Start difference. First operand has 35 places, 33 transitions, 94 flow. Second operand 5 states and 74 transitions. [2024-06-27 16:53:58,900 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 47 transitions, 212 flow [2024-06-27 16:53:58,901 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 47 transitions, 204 flow, removed 2 selfloop flow, removed 2 redundant places. [2024-06-27 16:53:58,902 INFO L231 Difference]: Finished difference. Result has 38 places, 34 transitions, 109 flow [2024-06-27 16:53:58,902 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=86, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=33, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=109, PETRI_PLACES=38, PETRI_TRANSITIONS=34} [2024-06-27 16:53:58,902 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 2 predicate places. [2024-06-27 16:53:58,902 INFO L495 AbstractCegarLoop]: Abstraction has has 38 places, 34 transitions, 109 flow [2024-06-27 16:53:58,903 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 10.2) internal successors, (51), 5 states have internal predecessors, (51), 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-06-27 16:53:58,903 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:53:58,903 INFO L208 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] [2024-06-27 16:53:58,914 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2024-06-27 16:53:59,115 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:53:59,116 INFO L420 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-06-27 16:53:59,116 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:53:59,116 INFO L85 PathProgramCache]: Analyzing trace with hash -1711154332, now seen corresponding path program 1 times [2024-06-27 16:53:59,116 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:53:59,116 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [113196089] [2024-06-27 16:53:59,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:53:59,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:53:59,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:53:59,234 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-06-27 16:53:59,234 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:53:59,234 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [113196089] [2024-06-27 16:53:59,234 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [113196089] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 16:53:59,235 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 16:53:59,235 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-27 16:53:59,235 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [273555427] [2024-06-27 16:53:59,235 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 16:53:59,235 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 16:53:59,235 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:53:59,236 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 16:53:59,236 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 16:53:59,240 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:53:59,240 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 38 places, 34 transitions, 109 flow. Second operand has 4 states, 4 states have (on average 11.75) internal successors, (47), 4 states have internal predecessors, (47), 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-06-27 16:53:59,240 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:53:59,240 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:53:59,240 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:53:59,383 INFO L124 PetriNetUnfolderBase]: 747/1095 cut-off events. [2024-06-27 16:53:59,383 INFO L125 PetriNetUnfolderBase]: For 405/405 co-relation queries the response was YES. [2024-06-27 16:53:59,384 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2528 conditions, 1095 events. 747/1095 cut-off events. For 405/405 co-relation queries the response was YES. Maximal size of possible extension queue 54. Compared 4093 event pairs, 296 based on Foata normal form. 0/1040 useless extension candidates. Maximal degree in co-relation 2499. Up to 559 conditions per place. [2024-06-27 16:53:59,389 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 38 selfloop transitions, 4 changer transitions 0/46 dead transitions. [2024-06-27 16:53:59,389 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 41 places, 46 transitions, 229 flow [2024-06-27 16:53:59,389 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 16:53:59,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 16:53:59,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 65 transitions. [2024-06-27 16:53:59,391 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4642857142857143 [2024-06-27 16:53:59,391 INFO L175 Difference]: Start difference. First operand has 38 places, 34 transitions, 109 flow. Second operand 4 states and 65 transitions. [2024-06-27 16:53:59,391 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 41 places, 46 transitions, 229 flow [2024-06-27 16:53:59,392 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 46 transitions, 221 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-06-27 16:53:59,393 INFO L231 Difference]: Finished difference. Result has 41 places, 35 transitions, 124 flow [2024-06-27 16:53:59,393 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=103, PETRI_DIFFERENCE_MINUEND_PLACES=36, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=124, PETRI_PLACES=41, PETRI_TRANSITIONS=35} [2024-06-27 16:53:59,394 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 5 predicate places. [2024-06-27 16:53:59,394 INFO L495 AbstractCegarLoop]: Abstraction has has 41 places, 35 transitions, 124 flow [2024-06-27 16:53:59,394 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 11.75) internal successors, (47), 4 states have internal predecessors, (47), 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-06-27 16:53:59,394 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:53:59,394 INFO L208 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] [2024-06-27 16:53:59,395 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-27 16:53:59,395 INFO L420 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-06-27 16:53:59,395 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:53:59,395 INFO L85 PathProgramCache]: Analyzing trace with hash 505817667, now seen corresponding path program 1 times [2024-06-27 16:53:59,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:53:59,398 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [151884009] [2024-06-27 16:53:59,399 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:53:59,399 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:53:59,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:54:00,458 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:00,458 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:54:00,459 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [151884009] [2024-06-27 16:54:00,459 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [151884009] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:54:00,459 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [647300532] [2024-06-27 16:54:00,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:54:00,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:54:00,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:54:00,460 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-06-27 16:54:00,480 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-06-27 16:54:00,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:54:00,549 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 40 conjunts are in the unsatisfiable core [2024-06-27 16:54:00,551 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:54:00,643 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 15 treesize of output 1 [2024-06-27 16:54:00,852 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:00,852 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 27 treesize of output 23 [2024-06-27 16:54:00,861 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:00,861 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:54:01,052 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:01,053 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 248 treesize of output 232 [2024-06-27 16:54:01,296 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:01,296 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 214 treesize of output 182 [2024-06-27 16:54:01,706 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:01,707 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [647300532] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:54:01,707 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:54:01,707 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 28 [2024-06-27 16:54:01,707 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1349768320] [2024-06-27 16:54:01,707 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:54:01,708 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2024-06-27 16:54:01,708 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:54:01,709 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2024-06-27 16:54:01,709 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=123, Invalid=689, Unknown=0, NotChecked=0, Total=812 [2024-06-27 16:54:01,920 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:54:01,920 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 35 transitions, 124 flow. Second operand has 29 states, 29 states have (on average 8.206896551724139) internal successors, (238), 29 states have internal predecessors, (238), 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-06-27 16:54:01,920 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:54:01,920 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:54:01,920 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:54:03,115 INFO L124 PetriNetUnfolderBase]: 2093/3170 cut-off events. [2024-06-27 16:54:03,116 INFO L125 PetriNetUnfolderBase]: For 1189/1189 co-relation queries the response was YES. [2024-06-27 16:54:03,120 INFO L83 FinitePrefix]: Finished finitePrefix Result has 7942 conditions, 3170 events. 2093/3170 cut-off events. For 1189/1189 co-relation queries the response was YES. Maximal size of possible extension queue 142. Compared 15122 event pairs, 105 based on Foata normal form. 2/3169 useless extension candidates. Maximal degree in co-relation 4295. Up to 1479 conditions per place. [2024-06-27 16:54:03,129 INFO L140 encePairwiseOnDemand]: 23/35 looper letters, 142 selfloop transitions, 50 changer transitions 2/198 dead transitions. [2024-06-27 16:54:03,129 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 60 places, 198 transitions, 1020 flow [2024-06-27 16:54:03,130 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-06-27 16:54:03,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2024-06-27 16:54:03,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 312 transitions. [2024-06-27 16:54:03,131 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.44571428571428573 [2024-06-27 16:54:03,131 INFO L175 Difference]: Start difference. First operand has 41 places, 35 transitions, 124 flow. Second operand 20 states and 312 transitions. [2024-06-27 16:54:03,132 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 60 places, 198 transitions, 1020 flow [2024-06-27 16:54:03,135 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 58 places, 198 transitions, 999 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-27 16:54:03,136 INFO L231 Difference]: Finished difference. Result has 69 places, 81 transitions, 445 flow [2024-06-27 16:54:03,137 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=120, PETRI_DIFFERENCE_MINUEND_PLACES=39, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=35, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=8, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=22, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=445, PETRI_PLACES=69, PETRI_TRANSITIONS=81} [2024-06-27 16:54:03,137 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 33 predicate places. [2024-06-27 16:54:03,137 INFO L495 AbstractCegarLoop]: Abstraction has has 69 places, 81 transitions, 445 flow [2024-06-27 16:54:03,138 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 8.206896551724139) internal successors, (238), 29 states have internal predecessors, (238), 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-06-27 16:54:03,138 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:54:03,138 INFO L208 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] [2024-06-27 16:54:03,166 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-06-27 16:54:03,369 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2024-06-27 16:54:03,370 INFO L420 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-06-27 16:54:03,370 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:54:03,370 INFO L85 PathProgramCache]: Analyzing trace with hash -345259615, now seen corresponding path program 2 times [2024-06-27 16:54:03,370 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:54:03,371 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1558093070] [2024-06-27 16:54:03,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:54:03,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:54:03,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:54:04,031 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:04,032 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:54:04,032 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1558093070] [2024-06-27 16:54:04,032 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1558093070] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:54:04,032 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2110566632] [2024-06-27 16:54:04,032 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-06-27 16:54:04,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:54:04,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:54:04,034 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-06-27 16:54:04,060 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-06-27 16:54:04,117 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-06-27 16:54:04,117 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:54:04,119 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 41 conjunts are in the unsatisfiable core [2024-06-27 16:54:04,121 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:54:04,193 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 15 treesize of output 1 [2024-06-27 16:54:04,357 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:04,357 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 27 treesize of output 19 [2024-06-27 16:54:04,363 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:04,363 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:54:04,518 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:04,518 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 256 treesize of output 240 [2024-06-27 16:54:04,743 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:54:04,743 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 50 [2024-06-27 16:54:04,787 INFO L349 Elim1Store]: treesize reduction 5, result has 82.8 percent of original size [2024-06-27 16:54:04,788 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 156 treesize of output 139 [2024-06-27 16:54:04,895 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:04,895 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 283 treesize of output 243 [2024-06-27 16:54:04,906 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:04,906 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 182 treesize of output 134 [2024-06-27 16:54:05,042 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:05,042 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2110566632] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:54:05,042 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:54:05,042 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 25 [2024-06-27 16:54:05,043 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1274949337] [2024-06-27 16:54:05,043 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:54:05,043 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2024-06-27 16:54:05,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:54:05,044 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-06-27 16:54:05,044 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=544, Unknown=0, NotChecked=0, Total=650 [2024-06-27 16:54:05,213 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:54:05,214 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 69 places, 81 transitions, 445 flow. Second operand has 26 states, 26 states have (on average 8.653846153846153) internal successors, (225), 26 states have internal predecessors, (225), 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-06-27 16:54:05,214 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:54:05,214 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:54:05,214 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:54:06,401 INFO L124 PetriNetUnfolderBase]: 2621/3922 cut-off events. [2024-06-27 16:54:06,401 INFO L125 PetriNetUnfolderBase]: For 4966/4966 co-relation queries the response was YES. [2024-06-27 16:54:06,408 INFO L83 FinitePrefix]: Finished finitePrefix Result has 12389 conditions, 3922 events. 2621/3922 cut-off events. For 4966/4966 co-relation queries the response was YES. Maximal size of possible extension queue 180. Compared 19196 event pairs, 321 based on Foata normal form. 1/3919 useless extension candidates. Maximal degree in co-relation 8014. Up to 2806 conditions per place. [2024-06-27 16:54:06,421 INFO L140 encePairwiseOnDemand]: 22/35 looper letters, 138 selfloop transitions, 58 changer transitions 1/201 dead transitions. [2024-06-27 16:54:06,421 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 88 places, 201 transitions, 1313 flow [2024-06-27 16:54:06,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-06-27 16:54:06,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2024-06-27 16:54:06,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 275 transitions. [2024-06-27 16:54:06,423 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.39285714285714285 [2024-06-27 16:54:06,423 INFO L175 Difference]: Start difference. First operand has 69 places, 81 transitions, 445 flow. Second operand 20 states and 275 transitions. [2024-06-27 16:54:06,423 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 88 places, 201 transitions, 1313 flow [2024-06-27 16:54:06,434 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 86 places, 201 transitions, 1285 flow, removed 10 selfloop flow, removed 2 redundant places. [2024-06-27 16:54:06,436 INFO L231 Difference]: Finished difference. Result has 96 places, 122 transitions, 872 flow [2024-06-27 16:54:06,437 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=417, PETRI_DIFFERENCE_MINUEND_PLACES=67, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=81, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=22, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=872, PETRI_PLACES=96, PETRI_TRANSITIONS=122} [2024-06-27 16:54:06,437 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 60 predicate places. [2024-06-27 16:54:06,437 INFO L495 AbstractCegarLoop]: Abstraction has has 96 places, 122 transitions, 872 flow [2024-06-27 16:54:06,438 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 8.653846153846153) internal successors, (225), 26 states have internal predecessors, (225), 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-06-27 16:54:06,438 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:54:06,438 INFO L208 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] [2024-06-27 16:54:06,450 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2024-06-27 16:54:06,649 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:54:06,650 INFO L420 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-06-27 16:54:06,650 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:54:06,650 INFO L85 PathProgramCache]: Analyzing trace with hash -1290033085, now seen corresponding path program 3 times [2024-06-27 16:54:06,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:54:06,651 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1633912035] [2024-06-27 16:54:06,651 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:54:06,651 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:54:06,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:54:07,320 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:07,320 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:54:07,320 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1633912035] [2024-06-27 16:54:07,320 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1633912035] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:54:07,321 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1026864978] [2024-06-27 16:54:07,321 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-06-27 16:54:07,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:54:07,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:54:07,322 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-06-27 16:54:07,352 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-06-27 16:54:07,421 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2024-06-27 16:54:07,421 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:54:07,423 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 42 conjunts are in the unsatisfiable core [2024-06-27 16:54:07,425 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:54:07,502 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 15 treesize of output 1 [2024-06-27 16:54:07,772 INFO L349 Elim1Store]: treesize reduction 24, result has 57.9 percent of original size [2024-06-27 16:54:07,772 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 31 treesize of output 43 [2024-06-27 16:54:07,825 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:07,825 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:54:08,045 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:08,045 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 256 treesize of output 240 [2024-06-27 16:54:08,259 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:08,259 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 289 treesize of output 243 [2024-06-27 16:54:08,268 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:54:08,268 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 178 treesize of output 142 [2024-06-27 16:54:08,414 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:54:08,415 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1026864978] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:54:08,415 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:54:08,415 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12, 12] total 30 [2024-06-27 16:54:08,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [235832364] [2024-06-27 16:54:08,415 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:54:08,416 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2024-06-27 16:54:08,418 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:54:08,418 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2024-06-27 16:54:08,419 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=162, Invalid=768, Unknown=0, NotChecked=0, Total=930 [2024-06-27 16:54:08,469 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 35 [2024-06-27 16:54:08,469 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 96 places, 122 transitions, 872 flow. Second operand has 31 states, 31 states have (on average 7.419354838709677) internal successors, (230), 31 states have internal predecessors, (230), 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-06-27 16:54:08,469 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:54:08,469 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 35 [2024-06-27 16:54:08,469 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:54:12,615 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-06-27 16:54:16,623 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-06-27 16:54:20,626 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-06-27 16:54:24,630 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-06-27 16:54:28,634 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-06-27 16:54:32,643 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-06-27 16:54:36,648 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-06-27 16:54:40,651 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-06-27 16:54:44,655 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-06-27 16:54:48,658 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-06-27 16:54:52,660 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-06-27 16:54:56,663 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-06-27 16:55:00,666 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-06-27 16:55:04,669 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-06-27 16:55:08,672 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-06-27 16:55:12,676 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-06-27 16:55:14,477 INFO L124 PetriNetUnfolderBase]: 5007/7210 cut-off events. [2024-06-27 16:55:14,478 INFO L125 PetriNetUnfolderBase]: For 14525/14534 co-relation queries the response was YES. [2024-06-27 16:55:14,497 INFO L83 FinitePrefix]: Finished finitePrefix Result has 25670 conditions, 7210 events. 5007/7210 cut-off events. For 14525/14534 co-relation queries the response was YES. Maximal size of possible extension queue 305. Compared 36255 event pairs, 414 based on Foata normal form. 10/7219 useless extension candidates. Maximal degree in co-relation 21564. Up to 3565 conditions per place. [2024-06-27 16:55:14,531 INFO L140 encePairwiseOnDemand]: 20/35 looper letters, 218 selfloop transitions, 141 changer transitions 4/365 dead transitions. [2024-06-27 16:55:14,532 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 125 places, 365 transitions, 2727 flow [2024-06-27 16:55:14,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2024-06-27 16:55:14,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2024-06-27 16:55:14,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 427 transitions. [2024-06-27 16:55:14,536 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4066666666666667 [2024-06-27 16:55:14,536 INFO L175 Difference]: Start difference. First operand has 96 places, 122 transitions, 872 flow. Second operand 30 states and 427 transitions. [2024-06-27 16:55:14,536 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 125 places, 365 transitions, 2727 flow [2024-06-27 16:55:14,572 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 119 places, 365 transitions, 2676 flow, removed 18 selfloop flow, removed 6 redundant places. [2024-06-27 16:55:14,579 INFO L231 Difference]: Finished difference. Result has 128 places, 202 transitions, 1893 flow [2024-06-27 16:55:14,580 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=833, PETRI_DIFFERENCE_MINUEND_PLACES=90, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=122, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=75, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=30, PETRI_FLOW=1893, PETRI_PLACES=128, PETRI_TRANSITIONS=202} [2024-06-27 16:55:14,580 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 92 predicate places. [2024-06-27 16:55:14,580 INFO L495 AbstractCegarLoop]: Abstraction has has 128 places, 202 transitions, 1893 flow [2024-06-27 16:55:14,581 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 7.419354838709677) internal successors, (230), 31 states have internal predecessors, (230), 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-06-27 16:55:14,581 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:55:14,581 INFO L208 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] [2024-06-27 16:55:14,595 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2024-06-27 16:55:14,791 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:55:14,792 INFO L420 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-06-27 16:55:14,793 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:55:14,793 INFO L85 PathProgramCache]: Analyzing trace with hash 454165277, now seen corresponding path program 4 times [2024-06-27 16:55:14,793 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:55:14,793 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1769655216] [2024-06-27 16:55:14,793 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:55:14,793 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:55:14,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:55:15,443 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:55:15,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:55:15,444 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1769655216] [2024-06-27 16:55:15,444 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1769655216] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:55:15,444 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1218712896] [2024-06-27 16:55:15,444 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-06-27 16:55:15,444 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:55:15,444 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:55:15,445 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-06-27 16:55:15,446 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-06-27 16:55:15,550 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-06-27 16:55:15,550 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:55:15,552 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 51 conjunts are in the unsatisfiable core [2024-06-27 16:55:15,556 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:55:15,564 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-06-27 16:55:15,600 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 15 treesize of output 1 [2024-06-27 16:55:15,628 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-06-27 16:55:15,629 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-06-27 16:55:15,665 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-06-27 16:55:15,906 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 11 [2024-06-27 16:55:15,913 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:55:15,913 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:55:20,149 INFO L349 Elim1Store]: treesize reduction 28, result has 64.6 percent of original size [2024-06-27 16:55:20,149 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 2926 treesize of output 2016 [2024-06-27 16:55:20,207 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:55:20,208 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 861 treesize of output 789 [2024-06-27 16:55:51,552 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,554 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 36 [2024-06-27 16:55:51,564 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 28 [2024-06-27 16:55:51,583 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 235 treesize of output 207 [2024-06-27 16:55:51,609 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,614 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,622 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,630 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,638 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,646 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,649 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,660 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,669 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,675 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,680 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,683 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,694 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,697 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,700 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,707 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,720 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,722 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,732 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,735 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,745 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,747 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,764 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,767 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,772 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,774 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,781 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,782 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,784 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,786 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,790 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,792 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,797 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:51,799 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:51,811 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,814 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 66 treesize of output 50 [2024-06-27 16:55:51,822 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,825 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 15 [2024-06-27 16:55:51,831 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,871 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,883 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,894 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,902 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,910 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,920 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,924 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 27 [2024-06-27 16:55:51,930 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,933 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 27 [2024-06-27 16:55:51,939 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,942 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 37 [2024-06-27 16:55:51,948 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,959 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,969 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:51,996 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,003 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,013 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,021 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 52 treesize of output 40 [2024-06-27 16:55:52,029 INFO L173 IndexEqualityManager]: detected equality via solver [2024-06-27 16:55:52,033 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:52,046 WARN L214 Elim1Store]: Array PQE input equivalent to true [2024-06-27 16:55:52,057 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,060 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 30 [2024-06-27 16:55:52,068 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,070 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-06-27 16:55:52,075 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-06-27 16:55:52,078 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 23 [2024-06-27 16:55:52,369 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:55:52,370 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 0 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 15 case distinctions, treesize of input 3934 treesize of output 2932 [2024-06-27 16:55:54,208 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:55:54,208 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1218712896] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:55:54,208 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:55:54,208 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 10, 10] total 29 [2024-06-27 16:55:54,209 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1197006698] [2024-06-27 16:55:54,209 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:55:54,209 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2024-06-27 16:55:54,209 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:55:54,209 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2024-06-27 16:55:54,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=130, Invalid=740, Unknown=0, NotChecked=0, Total=870 [2024-06-27 16:55:54,994 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:55:54,994 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 128 places, 202 transitions, 1893 flow. Second operand has 30 states, 30 states have (on average 8.166666666666666) internal successors, (245), 30 states have internal predecessors, (245), 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-06-27 16:55:54,994 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:55:54,994 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:55:54,994 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:55:57,324 INFO L124 PetriNetUnfolderBase]: 4184/6279 cut-off events. [2024-06-27 16:55:57,324 INFO L125 PetriNetUnfolderBase]: For 25466/25475 co-relation queries the response was YES. [2024-06-27 16:55:57,345 INFO L83 FinitePrefix]: Finished finitePrefix Result has 27352 conditions, 6279 events. 4184/6279 cut-off events. For 25466/25475 co-relation queries the response was YES. Maximal size of possible extension queue 304. Compared 33567 event pairs, 597 based on Foata normal form. 9/6287 useless extension candidates. Maximal degree in co-relation 25082. Up to 5237 conditions per place. [2024-06-27 16:55:57,367 INFO L140 encePairwiseOnDemand]: 22/35 looper letters, 212 selfloop transitions, 71 changer transitions 1/288 dead transitions. [2024-06-27 16:55:57,368 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 143 places, 288 transitions, 2964 flow [2024-06-27 16:55:57,369 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-06-27 16:55:57,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2024-06-27 16:55:57,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 219 transitions. [2024-06-27 16:55:57,370 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.39107142857142857 [2024-06-27 16:55:57,370 INFO L175 Difference]: Start difference. First operand has 128 places, 202 transitions, 1893 flow. Second operand 16 states and 219 transitions. [2024-06-27 16:55:57,370 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 143 places, 288 transitions, 2964 flow [2024-06-27 16:55:57,454 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 127 places, 288 transitions, 2767 flow, removed 59 selfloop flow, removed 16 redundant places. [2024-06-27 16:55:57,463 INFO L231 Difference]: Finished difference. Result has 130 places, 227 transitions, 2150 flow [2024-06-27 16:55:57,464 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=1706, PETRI_DIFFERENCE_MINUEND_PLACES=112, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=202, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=53, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=144, PETRI_DIFFERENCE_SUBTRAHEND_STATES=16, PETRI_FLOW=2150, PETRI_PLACES=130, PETRI_TRANSITIONS=227} [2024-06-27 16:55:57,465 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 94 predicate places. [2024-06-27 16:55:57,465 INFO L495 AbstractCegarLoop]: Abstraction has has 130 places, 227 transitions, 2150 flow [2024-06-27 16:55:57,466 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 30 states, 30 states have (on average 8.166666666666666) internal successors, (245), 30 states have internal predecessors, (245), 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-06-27 16:55:57,466 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:55:57,466 INFO L208 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] [2024-06-27 16:55:57,482 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-06-27 16:55:57,678 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:55:57,678 INFO L420 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-06-27 16:55:57,679 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:55:57,679 INFO L85 PathProgramCache]: Analyzing trace with hash -1150803803, now seen corresponding path program 5 times [2024-06-27 16:55:57,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:55:57,679 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [413969600] [2024-06-27 16:55:57,679 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:55:57,679 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:55:57,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:55:58,212 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:55:58,212 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:55:58,212 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [413969600] [2024-06-27 16:55:58,212 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [413969600] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:55:58,213 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [186425270] [2024-06-27 16:55:58,213 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-06-27 16:55:58,213 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:55:58,213 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:55:58,220 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-06-27 16:55:58,280 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-06-27 16:55:58,360 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2024-06-27 16:55:58,361 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:55:58,362 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 36 conjunts are in the unsatisfiable core [2024-06-27 16:55:58,364 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:55:58,417 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 15 treesize of output 1 [2024-06-27 16:55:58,759 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:55:58,760 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 33 treesize of output 81 [2024-06-27 16:55:58,843 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-27 16:55:58,843 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:55:59,193 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:55:59,194 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [186425270] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:55:59,194 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:55:59,194 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 9] total 30 [2024-06-27 16:55:59,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1959203381] [2024-06-27 16:55:59,194 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:55:59,195 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2024-06-27 16:55:59,197 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:55:59,197 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2024-06-27 16:55:59,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=772, Unknown=0, NotChecked=0, Total=930 [2024-06-27 16:55:59,251 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 35 [2024-06-27 16:55:59,252 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 130 places, 227 transitions, 2150 flow. Second operand has 31 states, 31 states have (on average 7.290322580645161) internal successors, (226), 31 states have internal predecessors, (226), 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-06-27 16:55:59,253 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:55:59,253 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 35 [2024-06-27 16:55:59,253 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:01,782 INFO L124 PetriNetUnfolderBase]: 7526/10742 cut-off events. [2024-06-27 16:56:01,782 INFO L125 PetriNetUnfolderBase]: For 44477/44491 co-relation queries the response was YES. [2024-06-27 16:56:01,824 INFO L83 FinitePrefix]: Finished finitePrefix Result has 46910 conditions, 10742 events. 7526/10742 cut-off events. For 44477/44491 co-relation queries the response was YES. Maximal size of possible extension queue 476. Compared 57231 event pairs, 519 based on Foata normal form. 13/10753 useless extension candidates. Maximal degree in co-relation 44076. Up to 6205 conditions per place. [2024-06-27 16:56:01,864 INFO L140 encePairwiseOnDemand]: 18/35 looper letters, 285 selfloop transitions, 257 changer transitions 1/545 dead transitions. [2024-06-27 16:56:01,865 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 161 places, 545 transitions, 5497 flow [2024-06-27 16:56:01,865 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2024-06-27 16:56:01,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2024-06-27 16:56:01,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 423 transitions. [2024-06-27 16:56:01,867 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.3776785714285714 [2024-06-27 16:56:01,867 INFO L175 Difference]: Start difference. First operand has 130 places, 227 transitions, 2150 flow. Second operand 32 states and 423 transitions. [2024-06-27 16:56:01,867 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 161 places, 545 transitions, 5497 flow [2024-06-27 16:56:02,026 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 152 places, 545 transitions, 5393 flow, removed 35 selfloop flow, removed 9 redundant places. [2024-06-27 16:56:02,033 INFO L231 Difference]: Finished difference. Result has 163 places, 385 transitions, 4700 flow [2024-06-27 16:56:02,033 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=2056, PETRI_DIFFERENCE_MINUEND_PLACES=121, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=227, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=109, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=51, PETRI_DIFFERENCE_SUBTRAHEND_STATES=32, PETRI_FLOW=4700, PETRI_PLACES=163, PETRI_TRANSITIONS=385} [2024-06-27 16:56:02,036 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 127 predicate places. [2024-06-27 16:56:02,036 INFO L495 AbstractCegarLoop]: Abstraction has has 163 places, 385 transitions, 4700 flow [2024-06-27 16:56:02,036 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 7.290322580645161) internal successors, (226), 31 states have internal predecessors, (226), 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-06-27 16:56:02,037 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:02,037 INFO L208 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] [2024-06-27 16:56:02,055 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:02,252 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:02,252 INFO L420 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-06-27 16:56:02,253 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:02,253 INFO L85 PathProgramCache]: Analyzing trace with hash 341767801, now seen corresponding path program 6 times [2024-06-27 16:56:02,253 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:02,253 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1149503332] [2024-06-27 16:56:02,253 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:02,253 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:02,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:02,967 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:56:02,968 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:02,968 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1149503332] [2024-06-27 16:56:02,968 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1149503332] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:02,968 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290275538] [2024-06-27 16:56:02,968 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-06-27 16:56:02,968 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:02,968 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:02,969 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:02,982 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2024-06-27 16:56:03,064 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2024-06-27 16:56:03,064 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:03,066 INFO L262 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 42 conjunts are in the unsatisfiable core [2024-06-27 16:56:03,071 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:03,150 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 15 treesize of output 1 [2024-06-27 16:56:03,321 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:56:03,321 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 27 treesize of output 19 [2024-06-27 16:56:03,328 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:56:03,328 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:03,488 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:56:03,488 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 256 treesize of output 240 [2024-06-27 16:56:03,639 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:56:03,639 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 112 treesize of output 104 [2024-06-27 16:56:03,645 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-06-27 16:56:03,647 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 96 treesize of output 72 [2024-06-27 16:56:03,779 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 16:56:03,779 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290275538] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:03,779 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:03,779 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 10, 10] total 26 [2024-06-27 16:56:03,779 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [941831749] [2024-06-27 16:56:03,779 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:03,779 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2024-06-27 16:56:03,780 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:03,780 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-06-27 16:56:03,780 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=592, Unknown=0, NotChecked=0, Total=702 [2024-06-27 16:56:03,912 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:56:03,912 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 163 places, 385 transitions, 4700 flow. Second operand has 27 states, 27 states have (on average 8.407407407407407) internal successors, (227), 27 states have internal predecessors, (227), 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-06-27 16:56:03,912 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:03,912 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:56:03,912 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:05,917 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][262], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, 651#true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), 6#L49true, Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,918 INFO L294 olderBase$Statistics]: this new event has 24 ancestors and is cut-off event [2024-06-27 16:56:05,918 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,918 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,918 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:05,918 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][263], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 30#L69true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), 1360#true, Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, 651#true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,919 INFO L294 olderBase$Statistics]: this new event has 24 ancestors and is cut-off event [2024-06-27 16:56:05,919 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,919 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,919 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:05,955 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][262], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), 1360#true, Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), 6#L49true, Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,956 INFO L294 olderBase$Statistics]: this new event has 25 ancestors and is cut-off event [2024-06-27 16:56:05,956 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,956 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2024-06-27 16:56:05,956 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,956 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][263], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 30#L69true, 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 651#true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,957 INFO L294 olderBase$Statistics]: this new event has 25 ancestors and is cut-off event [2024-06-27 16:56:05,957 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,957 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,957 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2024-06-27 16:56:05,981 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][262], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), 6#L49true, Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 8#thread2EXITtrue, Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,982 INFO L294 olderBase$Statistics]: this new event has 26 ancestors and is cut-off event [2024-06-27 16:56:05,982 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,982 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,982 INFO L297 olderBase$Statistics]: existing Event has 22 ancestors and is cut-off event [2024-06-27 16:56:05,982 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][263], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 30#L69true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), 1360#true, Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 8#thread2EXITtrue, Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,983 INFO L294 olderBase$Statistics]: this new event has 26 ancestors and is cut-off event [2024-06-27 16:56:05,983 INFO L297 olderBase$Statistics]: existing Event has 22 ancestors and is cut-off event [2024-06-27 16:56:05,983 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,983 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:05,989 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][262], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, 6#L49true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 8#thread2EXITtrue, Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,990 INFO L294 olderBase$Statistics]: this new event has 27 ancestors and is cut-off event [2024-06-27 16:56:05,990 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:05,990 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,990 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,990 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][263], [Black: 630#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), 30#L69true, 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 651#true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 8#thread2EXITtrue, Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:05,990 INFO L294 olderBase$Statistics]: this new event has 27 ancestors and is cut-off event [2024-06-27 16:56:05,990 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:05,991 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:05,991 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:06,002 INFO L124 PetriNetUnfolderBase]: 7096/10394 cut-off events. [2024-06-27 16:56:06,002 INFO L125 PetriNetUnfolderBase]: For 78327/78786 co-relation queries the response was YES. [2024-06-27 16:56:06,050 INFO L83 FinitePrefix]: Finished finitePrefix Result has 56368 conditions, 10394 events. 7096/10394 cut-off events. For 78327/78786 co-relation queries the response was YES. Maximal size of possible extension queue 537. Compared 58341 event pairs, 669 based on Foata normal form. 345/10660 useless extension candidates. Maximal degree in co-relation 53917. Up to 7904 conditions per place. [2024-06-27 16:56:06,092 INFO L140 encePairwiseOnDemand]: 22/35 looper letters, 377 selfloop transitions, 190 changer transitions 1/574 dead transitions. [2024-06-27 16:56:06,093 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 188 places, 574 transitions, 7428 flow [2024-06-27 16:56:06,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2024-06-27 16:56:06,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2024-06-27 16:56:06,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 359 transitions. [2024-06-27 16:56:06,094 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.3945054945054945 [2024-06-27 16:56:06,094 INFO L175 Difference]: Start difference. First operand has 163 places, 385 transitions, 4700 flow. Second operand 26 states and 359 transitions. [2024-06-27 16:56:06,095 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 188 places, 574 transitions, 7428 flow [2024-06-27 16:56:06,596 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 183 places, 574 transitions, 6643 flow, removed 380 selfloop flow, removed 5 redundant places. [2024-06-27 16:56:06,602 INFO L231 Difference]: Finished difference. Result has 188 places, 462 transitions, 5606 flow [2024-06-27 16:56:06,602 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=4147, PETRI_DIFFERENCE_MINUEND_PLACES=158, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=385, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=125, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=246, PETRI_DIFFERENCE_SUBTRAHEND_STATES=26, PETRI_FLOW=5606, PETRI_PLACES=188, PETRI_TRANSITIONS=462} [2024-06-27 16:56:06,603 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 152 predicate places. [2024-06-27 16:56:06,603 INFO L495 AbstractCegarLoop]: Abstraction has has 188 places, 462 transitions, 5606 flow [2024-06-27 16:56:06,603 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 8.407407407407407) internal successors, (227), 27 states have internal predecessors, (227), 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-06-27 16:56:06,603 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:06,603 INFO L208 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] [2024-06-27 16:56:06,614 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2024-06-27 16:56:06,814 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:06,814 INFO L420 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-06-27 16:56:06,815 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:06,815 INFO L85 PathProgramCache]: Analyzing trace with hash -927377725, now seen corresponding path program 7 times [2024-06-27 16:56:06,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:06,815 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477387045] [2024-06-27 16:56:06,815 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:06,815 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:06,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:06,982 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:06,982 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:06,982 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [477387045] [2024-06-27 16:56:06,983 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [477387045] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:06,983 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1312461304] [2024-06-27 16:56:06,983 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-06-27 16:56:06,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:06,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:06,984 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:07,023 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2024-06-27 16:56:07,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:07,081 INFO L262 TraceCheckSpWp]: Trace formula consists of 247 conjuncts, 10 conjunts are in the unsatisfiable core [2024-06-27 16:56:07,082 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:07,142 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:07,142 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:07,208 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:07,209 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1312461304] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:07,209 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:07,209 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 15 [2024-06-27 16:56:07,209 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [285376845] [2024-06-27 16:56:07,209 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:07,209 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2024-06-27 16:56:07,210 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:07,211 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2024-06-27 16:56:07,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=178, Unknown=0, NotChecked=0, Total=240 [2024-06-27 16:56:07,269 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 35 [2024-06-27 16:56:07,270 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 188 places, 462 transitions, 5606 flow. Second operand has 16 states, 16 states have (on average 9.375) internal successors, (150), 16 states have internal predecessors, (150), 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-06-27 16:56:07,270 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:07,270 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 35 [2024-06-27 16:56:07,270 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:09,029 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][287], [30#L69true, 1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 1602#(<= 2 ~N~0), 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 1372#(and (= ~res2~0 ~res1~0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1576#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1373#(= ~res2~0 ~res1~0), Black: 1578#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 1370#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:09,030 INFO L294 olderBase$Statistics]: this new event has 25 ancestors and is cut-off event [2024-06-27 16:56:09,030 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:09,030 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:09,030 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:09,030 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][288], [1360#true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 1602#(<= 2 ~N~0), 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), 16#L91-4true, Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), 6#L49true, Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 1372#(and (= ~res2~0 ~res1~0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1576#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1373#(= ~res2~0 ~res1~0), Black: 1578#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 1370#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:09,031 INFO L294 olderBase$Statistics]: this new event has 25 ancestors and is cut-off event [2024-06-27 16:56:09,031 INFO L297 olderBase$Statistics]: existing Event has 23 ancestors and is cut-off event [2024-06-27 16:56:09,031 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:09,031 INFO L297 olderBase$Statistics]: existing Event has 20 ancestors and is cut-off event [2024-06-27 16:56:09,133 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([856] L49-->L51: Formula: (let ((.cse0 (+ |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483648)) (.cse3 (* |v_thread1Thread1of1ForFork1_~i~0#1_7| 4))) (let ((.cse1 (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ 2147483647 v_~res1~0_52))) (.cse2 (select (select |v_#memory_int#1_91| v_~B~0.base_92) (+ .cse3 v_~B~0.offset_92))) (.cse4 (<= v_~res1~0_52 .cse0))) (and (not (= (ite (or (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| 2147483647) (<= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_52)) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) (<= v_~res1~0_52 |v_thread1Thread1of1ForFork1_plus_#res#1_1|)) 1 0) 0)) (<= v_~res1~0_51 2147483647) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| v_~res1~0_51) (<= 0 (+ v_~res1~0_51 2147483648)) .cse1 (not (= (ite (or .cse1 (<= .cse2 0)) 1 0) 0)) (= |v_thread1Thread1of1ForFork1_plus_#res#1_1| (+ (select (select |v_#memory_int#1_91| v_~A~0.base_112) (+ .cse3 v_~A~0.offset_112)) .cse2 v_~res1~0_52)) (not (= (ite (or .cse4 (<= 0 .cse2)) 1 0) 0)) .cse4))) InVars {~res1~0=v_~res1~0_52, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, #memory_int#1=|v_#memory_int#1_91|, ~B~0.offset=v_~B~0.offset_92} OutVars{~res1~0=v_~res1~0_51, ~A~0.base=v_~A~0.base_112, ~B~0.base=v_~B~0.base_92, thread1Thread1of1ForFork1_#t~ret3#1=|v_thread1Thread1of1ForFork1_#t~ret3#1_1|, thread1Thread1of1ForFork1_#t~ret4#1=|v_thread1Thread1of1ForFork1_#t~ret4#1_1|, thread1Thread1of1ForFork1_plus_~b#1=|v_thread1Thread1of1ForFork1_plus_~b#1_1|, thread1Thread1of1ForFork1_#t~mem2#1=|v_thread1Thread1of1ForFork1_#t~mem2#1_1|, thread1Thread1of1ForFork1_plus_#in~a#1=|v_thread1Thread1of1ForFork1_plus_#in~a#1_1|, #memory_int#1=|v_#memory_int#1_91|, ~A~0.offset=v_~A~0.offset_112, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1_1|, thread1Thread1of1ForFork1_~i~0#1=|v_thread1Thread1of1ForFork1_~i~0#1_7|, thread1Thread1of1ForFork1_plus_~a#1=|v_thread1Thread1of1ForFork1_plus_~a#1_1|, thread1Thread1of1ForFork1_#t~mem1#1=|v_thread1Thread1of1ForFork1_#t~mem1#1_1|, thread1Thread1of1ForFork1_plus_#in~b#1=|v_thread1Thread1of1ForFork1_plus_#in~b#1_1|, ~B~0.offset=v_~B~0.offset_92, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1=|v_thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1_1|, thread1Thread1of1ForFork1_plus_#res#1=|v_thread1Thread1of1ForFork1_plus_#res#1_1|} AuxVars[] AssignedVars[~res1~0, thread1Thread1of1ForFork1_#t~ret3#1, thread1Thread1of1ForFork1_assume_abort_if_not_#in~cond#1, thread1Thread1of1ForFork1_#t~ret4#1, thread1Thread1of1ForFork1_plus_~b#1, thread1Thread1of1ForFork1_#t~mem2#1, thread1Thread1of1ForFork1_plus_#in~a#1, thread1Thread1of1ForFork1_plus_~a#1, thread1Thread1of1ForFork1_#t~mem1#1, thread1Thread1of1ForFork1_plus_#in~b#1, thread1Thread1of1ForFork1_assume_abort_if_not_~cond#1, thread1Thread1of1ForFork1_plus_#res#1][287], [30#L69true, Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), 1360#true, Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 1602#(<= 2 ~N~0), 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 1372#(and (= ~res2~0 ~res1~0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1576#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1373#(= ~res2~0 ~res1~0), Black: 1578#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 1370#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, 28#L51true, Black: 55#(<= 1 ~N~0), Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:09,133 INFO L294 olderBase$Statistics]: this new event has 26 ancestors and is cut-off event [2024-06-27 16:56:09,133 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:09,133 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2024-06-27 16:56:09,134 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:09,134 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([866] L69-->L71: Formula: (let ((.cse7 (* |v_thread3Thread1of1ForFork0_~i~2#1_7| 4))) (let ((.cse6 (select (select |v_#memory_int#1_79| v_~A~0.base_92) (+ v_~A~0.offset_92 .cse7))) (.cse4 (select (select |v_#memory_int#1_79| v_~B~0.base_74) (+ v_~B~0.offset_74 .cse7)))) (let ((.cse0 (+ .cse6 .cse4))) (let ((.cse2 (<= 0 (+ |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483648))) (.cse1 (<= |v_thread3Thread1of1ForFork0_plus_#res#1_1| 2147483647)) (.cse3 (<= 0 (+ .cse6 .cse4 2147483648))) (.cse5 (<= .cse0 2147483647))) (and (not (= (ite (or (<= .cse0 0) .cse1) 1 0) 0)) (not (= (ite (or (<= 0 .cse0) .cse2) 1 0) 0)) .cse3 .cse2 .cse1 (not (= (ite (or (<= 0 .cse4) .cse3) 1 0) 0)) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| v_~res2~0_91) .cse5 (not (= 0 (ite (or .cse5 (<= .cse4 0)) 1 0))) (= |v_thread3Thread1of1ForFork0_plus_#res#1_1| (+ .cse6 .cse4 v_~res2~0_92))))))) InVars {~A~0.base=v_~A~0.base_92, ~B~0.base=v_~B~0.base_74, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_92} OutVars{~A~0.base=v_~A~0.base_92, thread3Thread1of1ForFork0_#t~ret13#1=|v_thread3Thread1of1ForFork0_#t~ret13#1_1|, thread3Thread1of1ForFork0_plus_#res#1=|v_thread3Thread1of1ForFork0_plus_#res#1_1|, ~B~0.base=v_~B~0.base_74, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1_1|, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1=|v_thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1_1|, thread3Thread1of1ForFork0_#t~ret14#1=|v_thread3Thread1of1ForFork0_#t~ret14#1_1|, thread3Thread1of1ForFork0_~i~2#1=|v_thread3Thread1of1ForFork0_~i~2#1_7|, #memory_int#1=|v_#memory_int#1_79|, thread3Thread1of1ForFork0_#t~mem11#1=|v_thread3Thread1of1ForFork0_#t~mem11#1_1|, thread3Thread1of1ForFork0_plus_~a#1=|v_thread3Thread1of1ForFork0_plus_~a#1_1|, ~A~0.offset=v_~A~0.offset_92, thread3Thread1of1ForFork0_plus_#in~a#1=|v_thread3Thread1of1ForFork0_plus_#in~a#1_1|, thread3Thread1of1ForFork0_plus_#in~b#1=|v_thread3Thread1of1ForFork0_plus_#in~b#1_1|, thread3Thread1of1ForFork0_#t~mem12#1=|v_thread3Thread1of1ForFork0_#t~mem12#1_1|, thread3Thread1of1ForFork0_plus_~b#1=|v_thread3Thread1of1ForFork0_plus_~b#1_1|, ~B~0.offset=v_~B~0.offset_74, ~res2~0=v_~res2~0_91} AuxVars[] AssignedVars[thread3Thread1of1ForFork0_#t~ret13#1, thread3Thread1of1ForFork0_plus_#res#1, thread3Thread1of1ForFork0_#t~mem11#1, thread3Thread1of1ForFork0_plus_~a#1, thread3Thread1of1ForFork0_assume_abort_if_not_#in~cond#1, thread3Thread1of1ForFork0_assume_abort_if_not_~cond#1, thread3Thread1of1ForFork0_plus_#in~a#1, thread3Thread1of1ForFork0_plus_#in~b#1, thread3Thread1of1ForFork0_#t~ret14#1, thread3Thread1of1ForFork0_#t~mem12#1, thread3Thread1of1ForFork0_plus_~b#1, ~res2~0][288], [Black: 638#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))))), 1360#true, Black: 626#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 544#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset)))), Black: 624#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 498#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 636#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 439#(= ~res2~0 ~res1~0), 1110#true, 1602#(<= 2 ~N~0), 893#true, Black: 211#(= ~res2~0 ~res1~0), Black: 205#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), Black: 407#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 411#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0) (= ~M~0 0)), Black: 399#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= ~A~0.offset 0) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (<= ~N~0 1) (= ~res2~0 0) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), Black: 403#(and (= ~res2~0 ~res1~0) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 405#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (<= ~N~0 1) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 335#(= ~res1~0 (+ (select (select |#memory_int#1| ~A~0.base) (+ ~A~0.offset (* ~M~0 4))) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ ~B~0.offset (* ~M~0 4))))), Black: 393#(and (<= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 1) (<= 1 |ULTIMATE.start_create_fresh_int_array_~size#1|) (or (and (= ~N~0 1) (= (select |#valid| |ULTIMATE.start_create_fresh_int_array_~arr~0#1.base|) 1)) (not (= |ULTIMATE.start_create_fresh_int_array_~size#1| 1))) (= ~res1~0 0) (= ~res2~0 0) (<= ~N~0 |ULTIMATE.start_create_fresh_int_array_~size#1|) (= |ULTIMATE.start_create_fresh_int_array_~arr~0#1.offset| 0)), 651#true, Black: 409#(and (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (<= ~N~0 1) (= ~res2~0 0) (= ~M~0 0)), 6#L49true, Black: 401#(and (= ~res2~0 ~res1~0) (or (< |ULTIMATE.start_create_fresh_int_array_~i~3#1| |ULTIMATE.start_create_fresh_int_array_~size#1|) (< ~N~0 2))), Black: 1372#(and (= ~res2~0 ~res1~0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1576#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1373#(= ~res2~0 ~res1~0), Black: 1578#(and (= ~res2~0 ~res1~0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 1370#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), 10#L92true, Black: 45#(and (= |ULTIMATE.start_create_fresh_int_array_~size#1| ~N~0) (= |ULTIMATE.start_create_fresh_int_array_~i~3#1| 0)), 27#$Ultimate##0true, 427#true, 199#true, Black: 55#(<= 1 ~N~0), 20#L71true, Black: 193#(<= (+ ~M~0 1) ~N~0), Black: 1142#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0)), Black: 1236#(or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)), Black: 1332#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< 1 ~N~0)) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1330#(and (or (< ~N~0 (+ |thread3Thread1of1ForFork0_~i~2#1| 1)) (forall ((v_subst_3 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_3) (* |thread3Thread1of1ForFork0_~i~2#1| 4)) (select (select |#memory_int#1| ~B~0.base) (* |thread3Thread1of1ForFork0_~i~2#1| 4))) (+ (select (select |#memory_int#1| v_subst_3) 0) (select (select |#memory_int#1| ~B~0.base) 0)))) (< 1 ~N~0)) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_4 Int)) (and (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_4)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_4)))) (<= 0 v_subst_4) (<= (+ v_subst_4 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1346#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0)), Black: 1340#(and (or (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)))) (< 1 ~N~0)) (= ~res2~0 ~res1~0) (<= |thread1Thread1of1ForFork1_~i~0#1| 1) (or (= ~N~0 1) (< 1 ~N~0))), Black: 1318#(and (<= (+ ~M~0 1) ~N~0) (<= 0 ~M~0) (= ~A~0.offset 0) (= ~res1~0 0) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1123#(= ~res2~0 ~res1~0), Black: 1342#(and (or (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset)))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (< |thread1Thread1of1ForFork1_~i~0#1| ~N~0) (= ~res2~0 ~res1~0)) (or (forall ((v_subst_7 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_7) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| v_subst_7) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (< (+ |thread1Thread1of1ForFork1_~i~0#1| 1) ~N~0)) (or (forall ((v_subst_8 Int)) (= (+ ~res2~0 (select (select |#memory_int#1| v_subst_8) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| v_subst_8) ~A~0.offset) (select (select |#memory_int#1| ~B~0.base) ~B~0.offset)))) (< 1 ~N~0))), Black: 1326#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (exists ((v_subst_2 Int)) (and (<= 0 v_subst_2) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) (* 4 v_subst_2)) (select (select |#memory_int#1| ~A~0.base) (* 4 v_subst_2)))) (<= (+ v_subst_2 1) ~N~0))) (= ~res1~0 0) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 1106#(and (= ~res2~0 ~res1~0) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 906#(= ~res2~0 ~res1~0), Black: 1104#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~B~0.offset 0) (= ~res1~0 0) (not (= ~A~0.base ~B~0.base)) (= ~res2~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 859#(and (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 863#(and (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (= ~res2~0 ~res1~0) (or (= ~N~0 1) (< ~N~0 1)) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~B~0.base) (+ (* ~N~0 4) ~B~0.offset (- 4))) ~res2~0 (select (select |#memory_int#1| ~A~0.base) (+ (* ~N~0 4) ~A~0.offset (- 4)))) (+ ~res1~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset))))), Black: 662#(= ~res2~0 ~res1~0), Black: 881#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 1) (= |thread3Thread1of1ForFork0_~i~2#1| 1))), Black: 873#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0) (= |thread1Thread1of1ForFork1_~i~0#1| 0)), Black: 877#(and (= ~res2~0 ~res1~0) (= ~N~0 1) (<= |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ ~res2~0 (select (select |#memory_int#1| ~B~0.base) ~B~0.offset) (select (select |#memory_int#1| ~A~0.base) ~A~0.offset)) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))) (or (< |thread3Thread1of1ForFork0_~i~2#1| 0) (forall ((~A~0.base Int)) (= (+ (select (select |#memory_int#1| ~A~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~A~0.offset)) ~res2~0 (select (select |#memory_int#1| ~B~0.base) (+ (* |thread3Thread1of1ForFork0_~i~2#1| 4) ~B~0.offset))) (+ (select (select |#memory_int#1| ~B~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~B~0.offset)) ~res1~0 (select (select |#memory_int#1| ~A~0.base) (+ (* 4 |thread1Thread1of1ForFork1_~i~0#1|) ~A~0.offset))))))), Black: 875#(and (= |thread3Thread1of1ForFork0_~i~2#1| 0) (= ~A~0.offset 0) (= ~N~0 1) (= ~B~0.offset 0) (= ~res1~0 (+ (select (select |#memory_int#1| ~B~0.base) 0) (select (select |#memory_int#1| ~A~0.base) 0))) (= ~res2~0 0)), Black: 768#(or (< |thread3Thread1of1ForFork0_~i~2#1| ~N~0) (= ~res2~0 ~res1~0))]) [2024-06-27 16:56:09,134 INFO L294 olderBase$Statistics]: this new event has 26 ancestors and is cut-off event [2024-06-27 16:56:09,134 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:09,134 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2024-06-27 16:56:09,135 INFO L297 olderBase$Statistics]: existing Event has 21 ancestors and is cut-off event [2024-06-27 16:56:09,236 INFO L124 PetriNetUnfolderBase]: 7963/11940 cut-off events. [2024-06-27 16:56:09,237 INFO L125 PetriNetUnfolderBase]: For 94581/95632 co-relation queries the response was YES. [2024-06-27 16:56:09,294 INFO L83 FinitePrefix]: Finished finitePrefix Result has 63773 conditions, 11940 events. 7963/11940 cut-off events. For 94581/95632 co-relation queries the response was YES. Maximal size of possible extension queue 678. Compared 72763 event pairs, 3418 based on Foata normal form. 610/12299 useless extension candidates. Maximal degree in co-relation 63716. Up to 5629 conditions per place. [2024-06-27 16:56:09,338 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 577 selfloop transitions, 12 changer transitions 0/602 dead transitions. [2024-06-27 16:56:09,338 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 180 places, 602 transitions, 8244 flow [2024-06-27 16:56:09,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-27 16:56:09,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-27 16:56:09,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 114 transitions. [2024-06-27 16:56:09,352 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.40714285714285714 [2024-06-27 16:56:09,353 INFO L175 Difference]: Start difference. First operand has 188 places, 462 transitions, 5606 flow. Second operand 8 states and 114 transitions. [2024-06-27 16:56:09,353 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 180 places, 602 transitions, 8244 flow [2024-06-27 16:56:09,884 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 159 places, 602 transitions, 7630 flow, removed 232 selfloop flow, removed 21 redundant places. [2024-06-27 16:56:09,891 INFO L231 Difference]: Finished difference. Result has 159 places, 329 transitions, 3507 flow [2024-06-27 16:56:09,891 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=3483, PETRI_DIFFERENCE_MINUEND_PLACES=152, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=329, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=12, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=317, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=3507, PETRI_PLACES=159, PETRI_TRANSITIONS=329} [2024-06-27 16:56:09,892 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 123 predicate places. [2024-06-27 16:56:09,892 INFO L495 AbstractCegarLoop]: Abstraction has has 159 places, 329 transitions, 3507 flow [2024-06-27 16:56:09,892 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 9.375) internal successors, (150), 16 states have internal predecessors, (150), 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-06-27 16:56:09,892 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:09,893 INFO L208 CegarLoopForPetriNet]: trace histogram [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] [2024-06-27 16:56:09,913 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:10,115 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2024-06-27 16:56:10,116 INFO L420 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-06-27 16:56:10,117 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:10,117 INFO L85 PathProgramCache]: Analyzing trace with hash -1167285882, now seen corresponding path program 8 times [2024-06-27 16:56:10,117 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:10,117 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1987383427] [2024-06-27 16:56:10,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:10,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:10,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:10,228 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-06-27 16:56:10,228 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:10,228 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1987383427] [2024-06-27 16:56:10,228 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1987383427] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:10,228 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [352119038] [2024-06-27 16:56:10,228 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-06-27 16:56:10,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:10,229 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:10,230 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:10,256 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2024-06-27 16:56:10,319 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-06-27 16:56:10,319 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:10,320 INFO L262 TraceCheckSpWp]: Trace formula consists of 256 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-27 16:56:10,321 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:10,377 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-06-27 16:56:10,378 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:10,468 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-06-27 16:56:10,468 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [352119038] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:10,468 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:10,468 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2024-06-27 16:56:10,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1149698973] [2024-06-27 16:56:10,469 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:10,469 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-06-27 16:56:10,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:10,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-06-27 16:56:10,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=127, Unknown=0, NotChecked=0, Total=182 [2024-06-27 16:56:10,490 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:56:10,490 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 159 places, 329 transitions, 3507 flow. Second operand has 14 states, 14 states have (on average 9.857142857142858) internal successors, (138), 14 states have internal predecessors, (138), 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-06-27 16:56:10,490 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:10,491 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:56:10,491 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:12,335 INFO L124 PetriNetUnfolderBase]: 9631/14129 cut-off events. [2024-06-27 16:56:12,335 INFO L125 PetriNetUnfolderBase]: For 83659/84315 co-relation queries the response was YES. [2024-06-27 16:56:12,401 INFO L83 FinitePrefix]: Finished finitePrefix Result has 71351 conditions, 14129 events. 9631/14129 cut-off events. For 83659/84315 co-relation queries the response was YES. Maximal size of possible extension queue 711. Compared 84479 event pairs, 1714 based on Foata normal form. 559/14558 useless extension candidates. Maximal degree in co-relation 71298. Up to 4650 conditions per place. [2024-06-27 16:56:12,700 INFO L140 encePairwiseOnDemand]: 26/35 looper letters, 674 selfloop transitions, 62 changer transitions 0/745 dead transitions. [2024-06-27 16:56:12,700 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 169 places, 745 transitions, 9345 flow [2024-06-27 16:56:12,700 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-06-27 16:56:12,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2024-06-27 16:56:12,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 183 transitions. [2024-06-27 16:56:12,702 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4753246753246753 [2024-06-27 16:56:12,702 INFO L175 Difference]: Start difference. First operand has 159 places, 329 transitions, 3507 flow. Second operand 11 states and 183 transitions. [2024-06-27 16:56:12,702 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 169 places, 745 transitions, 9345 flow [2024-06-27 16:56:13,071 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 163 places, 745 transitions, 9221 flow, removed 51 selfloop flow, removed 6 redundant places. [2024-06-27 16:56:13,078 INFO L231 Difference]: Finished difference. Result has 166 places, 358 transitions, 4021 flow [2024-06-27 16:56:13,079 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=3454, PETRI_DIFFERENCE_MINUEND_PLACES=153, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=328, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=33, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=287, PETRI_DIFFERENCE_SUBTRAHEND_STATES=11, PETRI_FLOW=4021, PETRI_PLACES=166, PETRI_TRANSITIONS=358} [2024-06-27 16:56:13,080 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 130 predicate places. [2024-06-27 16:56:13,080 INFO L495 AbstractCegarLoop]: Abstraction has has 166 places, 358 transitions, 4021 flow [2024-06-27 16:56:13,080 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 9.857142857142858) internal successors, (138), 14 states have internal predecessors, (138), 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-06-27 16:56:13,080 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:13,080 INFO L208 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-06-27 16:56:13,094 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:13,288 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:13,289 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:13,289 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:13,289 INFO L85 PathProgramCache]: Analyzing trace with hash -2003241411, now seen corresponding path program 1 times [2024-06-27 16:56:13,289 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:13,289 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1748105348] [2024-06-27 16:56:13,289 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:13,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:13,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:13,377 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:13,378 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:13,378 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1748105348] [2024-06-27 16:56:13,378 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1748105348] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:13,378 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1616316309] [2024-06-27 16:56:13,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:13,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:13,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:13,380 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:13,409 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2024-06-27 16:56:13,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:13,469 INFO L262 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-27 16:56:13,473 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:13,521 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:13,521 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:13,576 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:13,576 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1616316309] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:13,576 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:13,577 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 13 [2024-06-27 16:56:13,577 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1582635281] [2024-06-27 16:56:13,577 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:13,577 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-06-27 16:56:13,577 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:13,578 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-06-27 16:56:13,578 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2024-06-27 16:56:13,608 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:56:13,608 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 166 places, 358 transitions, 4021 flow. Second operand has 14 states, 14 states have (on average 9.285714285714286) internal successors, (130), 14 states have internal predecessors, (130), 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-06-27 16:56:13,608 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:13,608 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:56:13,609 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:15,691 INFO L124 PetriNetUnfolderBase]: 7707/11796 cut-off events. [2024-06-27 16:56:15,691 INFO L125 PetriNetUnfolderBase]: For 95466/96370 co-relation queries the response was YES. [2024-06-27 16:56:15,758 INFO L83 FinitePrefix]: Finished finitePrefix Result has 62522 conditions, 11796 events. 7707/11796 cut-off events. For 95466/96370 co-relation queries the response was YES. Maximal size of possible extension queue 664. Compared 75776 event pairs, 3068 based on Foata normal form. 566/12027 useless extension candidates. Maximal degree in co-relation 62467. Up to 4488 conditions per place. [2024-06-27 16:56:15,802 INFO L140 encePairwiseOnDemand]: 27/35 looper letters, 454 selfloop transitions, 12 changer transitions 0/483 dead transitions. [2024-06-27 16:56:15,802 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 173 places, 483 transitions, 6535 flow [2024-06-27 16:56:15,803 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-27 16:56:15,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-27 16:56:15,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 117 transitions. [2024-06-27 16:56:15,803 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.41785714285714287 [2024-06-27 16:56:15,803 INFO L175 Difference]: Start difference. First operand has 166 places, 358 transitions, 4021 flow. Second operand 8 states and 117 transitions. [2024-06-27 16:56:15,803 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 173 places, 483 transitions, 6535 flow [2024-06-27 16:56:16,083 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 169 places, 483 transitions, 6469 flow, removed 24 selfloop flow, removed 4 redundant places. [2024-06-27 16:56:16,088 INFO L231 Difference]: Finished difference. Result has 171 places, 265 transitions, 3000 flow [2024-06-27 16:56:16,088 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=2960, PETRI_DIFFERENCE_MINUEND_PLACES=162, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=263, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=10, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=251, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=3000, PETRI_PLACES=171, PETRI_TRANSITIONS=265} [2024-06-27 16:56:16,089 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 135 predicate places. [2024-06-27 16:56:16,089 INFO L495 AbstractCegarLoop]: Abstraction has has 171 places, 265 transitions, 3000 flow [2024-06-27 16:56:16,089 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 9.285714285714286) internal successors, (130), 14 states have internal predecessors, (130), 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-06-27 16:56:16,089 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:16,089 INFO L208 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] [2024-06-27 16:56:16,100 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:16,293 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2024-06-27 16:56:16,295 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:16,295 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:16,296 INFO L85 PathProgramCache]: Analyzing trace with hash 222488586, now seen corresponding path program 9 times [2024-06-27 16:56:16,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:16,305 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [893346551] [2024-06-27 16:56:16,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:16,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:16,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:16,497 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 2 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:16,498 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:16,498 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [893346551] [2024-06-27 16:56:16,498 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [893346551] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:16,498 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1352943580] [2024-06-27 16:56:16,498 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-06-27 16:56:16,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:16,499 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:16,499 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:16,525 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2024-06-27 16:56:16,590 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2024-06-27 16:56:16,591 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:16,592 INFO L262 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-27 16:56:16,593 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:16,661 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 5 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:16,661 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:16,713 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 5 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:16,713 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1352943580] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:16,713 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:16,713 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 13 [2024-06-27 16:56:16,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [461217727] [2024-06-27 16:56:16,714 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:16,714 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-06-27 16:56:16,714 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:16,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-06-27 16:56:16,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=127, Unknown=0, NotChecked=0, Total=182 [2024-06-27 16:56:16,733 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 35 [2024-06-27 16:56:16,734 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 171 places, 265 transitions, 3000 flow. Second operand has 14 states, 14 states have (on average 9.857142857142858) internal successors, (138), 14 states have internal predecessors, (138), 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-06-27 16:56:16,734 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:16,734 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 35 [2024-06-27 16:56:16,734 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:18,238 INFO L124 PetriNetUnfolderBase]: 6128/9614 cut-off events. [2024-06-27 16:56:18,239 INFO L125 PetriNetUnfolderBase]: For 60091/60650 co-relation queries the response was YES. [2024-06-27 16:56:18,375 INFO L83 FinitePrefix]: Finished finitePrefix Result has 50672 conditions, 9614 events. 6128/9614 cut-off events. For 60091/60650 co-relation queries the response was YES. Maximal size of possible extension queue 495. Compared 59819 event pairs, 2075 based on Foata normal form. 604/10198 useless extension candidates. Maximal degree in co-relation 50614. Up to 3582 conditions per place. [2024-06-27 16:56:18,399 INFO L140 encePairwiseOnDemand]: 26/35 looper letters, 207 selfloop transitions, 35 changer transitions 38/289 dead transitions. [2024-06-27 16:56:18,399 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 179 places, 289 transitions, 3643 flow [2024-06-27 16:56:18,400 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-06-27 16:56:18,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2024-06-27 16:56:18,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 134 transitions. [2024-06-27 16:56:18,400 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4253968253968254 [2024-06-27 16:56:18,401 INFO L175 Difference]: Start difference. First operand has 171 places, 265 transitions, 3000 flow. Second operand 9 states and 134 transitions. [2024-06-27 16:56:18,401 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 179 places, 289 transitions, 3643 flow [2024-06-27 16:56:18,629 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 169 places, 289 transitions, 3493 flow, removed 23 selfloop flow, removed 10 redundant places. [2024-06-27 16:56:18,632 INFO L231 Difference]: Finished difference. Result has 172 places, 193 transitions, 2175 flow [2024-06-27 16:56:18,632 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=2386, PETRI_DIFFERENCE_MINUEND_PLACES=161, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=221, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=34, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=186, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=2175, PETRI_PLACES=172, PETRI_TRANSITIONS=193} [2024-06-27 16:56:18,632 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 136 predicate places. [2024-06-27 16:56:18,633 INFO L495 AbstractCegarLoop]: Abstraction has has 172 places, 193 transitions, 2175 flow [2024-06-27 16:56:18,633 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 9.857142857142858) internal successors, (138), 14 states have internal predecessors, (138), 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-06-27 16:56:18,633 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:18,633 INFO L208 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] [2024-06-27 16:56:18,647 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:18,844 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2024-06-27 16:56:18,844 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:18,845 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:18,845 INFO L85 PathProgramCache]: Analyzing trace with hash 1237248508, now seen corresponding path program 10 times [2024-06-27 16:56:18,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:18,845 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1965885115] [2024-06-27 16:56:18,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:18,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:18,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:18,967 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 5 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-27 16:56:18,968 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:18,968 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1965885115] [2024-06-27 16:56:18,968 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1965885115] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:18,968 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1112499325] [2024-06-27 16:56:18,968 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-06-27 16:56:18,968 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:18,968 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:18,989 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:19,015 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2024-06-27 16:56:19,060 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-06-27 16:56:19,061 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:19,061 INFO L262 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2024-06-27 16:56:19,062 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:19,168 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 5 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:19,168 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:19,257 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 5 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-27 16:56:19,257 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1112499325] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:19,257 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:19,257 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 8] total 18 [2024-06-27 16:56:19,257 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2016010583] [2024-06-27 16:56:19,257 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:19,258 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2024-06-27 16:56:19,258 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:19,258 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-06-27 16:56:19,258 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2024-06-27 16:56:19,298 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 35 [2024-06-27 16:56:19,299 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 172 places, 193 transitions, 2175 flow. Second operand has 18 states, 18 states have (on average 8.722222222222221) internal successors, (157), 18 states have internal predecessors, (157), 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-06-27 16:56:19,299 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:19,299 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 35 [2024-06-27 16:56:19,299 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:20,816 INFO L124 PetriNetUnfolderBase]: 5682/8362 cut-off events. [2024-06-27 16:56:20,816 INFO L125 PetriNetUnfolderBase]: For 55895/56295 co-relation queries the response was YES. [2024-06-27 16:56:20,853 INFO L83 FinitePrefix]: Finished finitePrefix Result has 43380 conditions, 8362 events. 5682/8362 cut-off events. For 55895/56295 co-relation queries the response was YES. Maximal size of possible extension queue 362. Compared 44570 event pairs, 551 based on Foata normal form. 178/8538 useless extension candidates. Maximal degree in co-relation 43324. Up to 2514 conditions per place. [2024-06-27 16:56:20,877 INFO L140 encePairwiseOnDemand]: 21/35 looper letters, 215 selfloop transitions, 35 changer transitions 143/395 dead transitions. [2024-06-27 16:56:20,878 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 186 places, 395 transitions, 4480 flow [2024-06-27 16:56:20,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2024-06-27 16:56:20,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2024-06-27 16:56:20,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 327 transitions. [2024-06-27 16:56:20,879 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4062111801242236 [2024-06-27 16:56:20,879 INFO L175 Difference]: Start difference. First operand has 172 places, 193 transitions, 2175 flow. Second operand 23 states and 327 transitions. [2024-06-27 16:56:20,880 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 186 places, 395 transitions, 4480 flow [2024-06-27 16:56:21,118 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 167 places, 395 transitions, 4151 flow, removed 43 selfloop flow, removed 19 redundant places. [2024-06-27 16:56:21,121 INFO L231 Difference]: Finished difference. Result has 176 places, 102 transitions, 1082 flow [2024-06-27 16:56:21,121 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=1452, PETRI_DIFFERENCE_MINUEND_PLACES=145, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=146, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=19, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=124, PETRI_DIFFERENCE_SUBTRAHEND_STATES=23, PETRI_FLOW=1082, PETRI_PLACES=176, PETRI_TRANSITIONS=102} [2024-06-27 16:56:21,122 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 140 predicate places. [2024-06-27 16:56:21,122 INFO L495 AbstractCegarLoop]: Abstraction has has 176 places, 102 transitions, 1082 flow [2024-06-27 16:56:21,122 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 8.722222222222221) internal successors, (157), 18 states have internal predecessors, (157), 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-06-27 16:56:21,122 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:21,122 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 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] [2024-06-27 16:56:21,133 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:21,333 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2024-06-27 16:56:21,334 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:21,334 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:21,334 INFO L85 PathProgramCache]: Analyzing trace with hash -1298415769, now seen corresponding path program 11 times [2024-06-27 16:56:21,334 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:21,335 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624964876] [2024-06-27 16:56:21,335 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:21,335 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:21,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:21,496 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-06-27 16:56:21,497 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:21,497 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1624964876] [2024-06-27 16:56:21,497 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1624964876] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:21,497 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1676647857] [2024-06-27 16:56:21,497 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-06-27 16:56:21,497 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:21,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:21,515 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:21,563 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2024-06-27 16:56:21,662 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2024-06-27 16:56:21,662 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:21,664 INFO L262 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-27 16:56:21,665 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:21,769 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-06-27 16:56:21,769 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:21,847 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-06-27 16:56:21,847 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1676647857] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:21,847 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:21,848 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 17 [2024-06-27 16:56:21,848 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [170135248] [2024-06-27 16:56:21,848 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:21,848 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2024-06-27 16:56:21,849 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:21,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-06-27 16:56:21,849 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=225, Unknown=0, NotChecked=0, Total=272 [2024-06-27 16:56:21,906 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 4 out of 35 [2024-06-27 16:56:21,906 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 176 places, 102 transitions, 1082 flow. Second operand has 17 states, 17 states have (on average 7.117647058823529) internal successors, (121), 17 states have internal predecessors, (121), 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-06-27 16:56:21,906 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:21,906 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 4 of 35 [2024-06-27 16:56:21,906 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:24,667 INFO L124 PetriNetUnfolderBase]: 9247/13137 cut-off events. [2024-06-27 16:56:24,668 INFO L125 PetriNetUnfolderBase]: For 104697/104697 co-relation queries the response was YES. [2024-06-27 16:56:24,741 INFO L83 FinitePrefix]: Finished finitePrefix Result has 73022 conditions, 13137 events. 9247/13137 cut-off events. For 104697/104697 co-relation queries the response was YES. Maximal size of possible extension queue 514. Compared 69735 event pairs, 612 based on Foata normal form. 58/12405 useless extension candidates. Maximal degree in co-relation 72965. Up to 4627 conditions per place. [2024-06-27 16:56:24,791 INFO L140 encePairwiseOnDemand]: 20/35 looper letters, 437 selfloop transitions, 146 changer transitions 0/584 dead transitions. [2024-06-27 16:56:24,791 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 150 places, 584 transitions, 7440 flow [2024-06-27 16:56:24,792 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2024-06-27 16:56:24,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2024-06-27 16:56:24,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 379 transitions. [2024-06-27 16:56:24,793 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.36095238095238097 [2024-06-27 16:56:24,793 INFO L175 Difference]: Start difference. First operand has 176 places, 102 transitions, 1082 flow. Second operand 30 states and 379 transitions. [2024-06-27 16:56:24,793 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 150 places, 584 transitions, 7440 flow [2024-06-27 16:56:25,210 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 118 places, 584 transitions, 5697 flow, removed 704 selfloop flow, removed 32 redundant places. [2024-06-27 16:56:25,214 INFO L231 Difference]: Finished difference. Result has 130 places, 235 transitions, 2550 flow [2024-06-27 16:56:25,214 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=783, PETRI_DIFFERENCE_MINUEND_PLACES=89, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=102, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=21, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=71, PETRI_DIFFERENCE_SUBTRAHEND_STATES=30, PETRI_FLOW=2550, PETRI_PLACES=130, PETRI_TRANSITIONS=235} [2024-06-27 16:56:25,216 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 94 predicate places. [2024-06-27 16:56:25,216 INFO L495 AbstractCegarLoop]: Abstraction has has 130 places, 235 transitions, 2550 flow [2024-06-27 16:56:25,216 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 7.117647058823529) internal successors, (121), 17 states have internal predecessors, (121), 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-06-27 16:56:25,216 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:25,216 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 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] [2024-06-27 16:56:25,227 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2024-06-27 16:56:25,424 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2024-06-27 16:56:25,424 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:25,425 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:25,425 INFO L85 PathProgramCache]: Analyzing trace with hash 92067993, now seen corresponding path program 12 times [2024-06-27 16:56:25,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:25,425 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [608687655] [2024-06-27 16:56:25,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:25,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:25,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:25,678 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:25,678 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:25,679 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [608687655] [2024-06-27 16:56:25,679 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [608687655] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:25,679 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1947559727] [2024-06-27 16:56:25,679 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-06-27 16:56:25,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:25,679 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:25,680 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:25,684 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2024-06-27 16:56:25,802 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2024-06-27 16:56:25,803 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:25,804 INFO L262 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-27 16:56:25,807 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:25,901 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-06-27 16:56:25,901 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:26,007 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-06-27 16:56:26,007 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1947559727] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:26,007 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:26,007 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 20 [2024-06-27 16:56:26,008 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [194674524] [2024-06-27 16:56:26,008 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:26,008 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2024-06-27 16:56:26,008 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:26,008 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2024-06-27 16:56:26,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=312, Unknown=0, NotChecked=0, Total=380 [2024-06-27 16:56:26,057 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 4 out of 35 [2024-06-27 16:56:26,057 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 130 places, 235 transitions, 2550 flow. Second operand has 20 states, 20 states have (on average 6.65) internal successors, (133), 20 states have internal predecessors, (133), 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-06-27 16:56:26,057 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:26,057 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 4 of 35 [2024-06-27 16:56:26,057 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:30,566 INFO L124 PetriNetUnfolderBase]: 16640/23371 cut-off events. [2024-06-27 16:56:30,566 INFO L125 PetriNetUnfolderBase]: For 105039/105039 co-relation queries the response was YES. [2024-06-27 16:56:30,698 INFO L83 FinitePrefix]: Finished finitePrefix Result has 114617 conditions, 23371 events. 16640/23371 cut-off events. For 105039/105039 co-relation queries the response was YES. Maximal size of possible extension queue 907. Compared 132791 event pairs, 398 based on Foata normal form. 47/23418 useless extension candidates. Maximal degree in co-relation 114571. Up to 8911 conditions per place. [2024-06-27 16:56:30,773 INFO L140 encePairwiseOnDemand]: 19/35 looper letters, 807 selfloop transitions, 463 changer transitions 0/1271 dead transitions. [2024-06-27 16:56:30,773 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 177 places, 1271 transitions, 14854 flow [2024-06-27 16:56:30,775 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2024-06-27 16:56:30,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 48 states. [2024-06-27 16:56:30,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 644 transitions. [2024-06-27 16:56:30,779 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.38333333333333336 [2024-06-27 16:56:30,779 INFO L175 Difference]: Start difference. First operand has 130 places, 235 transitions, 2550 flow. Second operand 48 states and 644 transitions. [2024-06-27 16:56:30,779 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 177 places, 1271 transitions, 14854 flow [2024-06-27 16:56:31,563 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 170 places, 1271 transitions, 14304 flow, removed 250 selfloop flow, removed 7 redundant places. [2024-06-27 16:56:31,574 INFO L231 Difference]: Finished difference. Result has 191 places, 588 transitions, 8176 flow [2024-06-27 16:56:31,575 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=2363, PETRI_DIFFERENCE_MINUEND_PLACES=123, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=235, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=127, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=73, PETRI_DIFFERENCE_SUBTRAHEND_STATES=48, PETRI_FLOW=8176, PETRI_PLACES=191, PETRI_TRANSITIONS=588} [2024-06-27 16:56:31,575 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 155 predicate places. [2024-06-27 16:56:31,575 INFO L495 AbstractCegarLoop]: Abstraction has has 191 places, 588 transitions, 8176 flow [2024-06-27 16:56:31,575 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 6.65) internal successors, (133), 20 states have internal predecessors, (133), 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-06-27 16:56:31,576 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:31,576 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 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] [2024-06-27 16:56:31,589 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:31,786 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:31,787 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:31,787 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:31,787 INFO L85 PathProgramCache]: Analyzing trace with hash 391172537, now seen corresponding path program 13 times [2024-06-27 16:56:31,787 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:31,787 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [407332562] [2024-06-27 16:56:31,787 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:31,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:31,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:31,920 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:31,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:31,920 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [407332562] [2024-06-27 16:56:31,920 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [407332562] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:31,920 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [252814782] [2024-06-27 16:56:31,920 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-06-27 16:56:31,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:31,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:31,924 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:31,953 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2024-06-27 16:56:32,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:32,044 INFO L262 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 10 conjunts are in the unsatisfiable core [2024-06-27 16:56:32,044 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:32,173 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:32,173 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:32,277 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:32,278 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [252814782] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:32,278 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:32,278 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 20 [2024-06-27 16:56:32,278 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [718229563] [2024-06-27 16:56:32,278 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:32,278 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-06-27 16:56:32,279 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:32,279 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-06-27 16:56:32,279 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=329, Unknown=0, NotChecked=0, Total=420 [2024-06-27 16:56:32,322 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 35 [2024-06-27 16:56:32,323 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 191 places, 588 transitions, 8176 flow. Second operand has 21 states, 21 states have (on average 7.238095238095238) internal successors, (152), 21 states have internal predecessors, (152), 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-06-27 16:56:32,323 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:32,323 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 35 [2024-06-27 16:56:32,323 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 16:56:41,847 INFO L124 PetriNetUnfolderBase]: 34204/48454 cut-off events. [2024-06-27 16:56:41,847 INFO L125 PetriNetUnfolderBase]: For 356204/357956 co-relation queries the response was YES. [2024-06-27 16:56:42,687 INFO L83 FinitePrefix]: Finished finitePrefix Result has 275910 conditions, 48454 events. 34204/48454 cut-off events. For 356204/357956 co-relation queries the response was YES. Maximal size of possible extension queue 1626. Compared 309360 event pairs, 1388 based on Foata normal form. 1372/49430 useless extension candidates. Maximal degree in co-relation 275845. Up to 22360 conditions per place. [2024-06-27 16:56:42,898 INFO L140 encePairwiseOnDemand]: 21/35 looper letters, 1368 selfloop transitions, 592 changer transitions 0/1968 dead transitions. [2024-06-27 16:56:42,898 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 228 places, 1968 transitions, 28769 flow [2024-06-27 16:56:42,898 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2024-06-27 16:56:42,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2024-06-27 16:56:42,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 581 transitions. [2024-06-27 16:56:42,900 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4368421052631579 [2024-06-27 16:56:42,900 INFO L175 Difference]: Start difference. First operand has 191 places, 588 transitions, 8176 flow. Second operand 38 states and 581 transitions. [2024-06-27 16:56:42,900 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 228 places, 1968 transitions, 28769 flow [2024-06-27 16:56:52,715 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 223 places, 1968 transitions, 27816 flow, removed 471 selfloop flow, removed 5 redundant places. [2024-06-27 16:56:52,739 INFO L231 Difference]: Finished difference. Result has 239 places, 1017 transitions, 15574 flow [2024-06-27 16:56:52,740 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=7993, PETRI_DIFFERENCE_MINUEND_PLACES=186, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=588, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=221, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=336, PETRI_DIFFERENCE_SUBTRAHEND_STATES=38, PETRI_FLOW=15574, PETRI_PLACES=239, PETRI_TRANSITIONS=1017} [2024-06-27 16:56:52,740 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 203 predicate places. [2024-06-27 16:56:52,740 INFO L495 AbstractCegarLoop]: Abstraction has has 239 places, 1017 transitions, 15574 flow [2024-06-27 16:56:52,741 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 7.238095238095238) internal successors, (152), 21 states have internal predecessors, (152), 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-06-27 16:56:52,741 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 16:56:52,741 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 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] [2024-06-27 16:56:52,752 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2024-06-27 16:56:52,942 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2024-06-27 16:56:52,943 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 16:56:52,943 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 16:56:52,943 INFO L85 PathProgramCache]: Analyzing trace with hash 351196027, now seen corresponding path program 14 times [2024-06-27 16:56:52,943 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 16:56:52,943 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719182540] [2024-06-27 16:56:52,943 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 16:56:52,943 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 16:56:52,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 16:56:53,064 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:53,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 16:56:53,064 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1719182540] [2024-06-27 16:56:53,064 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1719182540] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-27 16:56:53,064 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [609254783] [2024-06-27 16:56:53,065 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-06-27 16:56:53,065 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-27 16:56:53,065 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 16:56:53,066 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-27 16:56:53,073 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2024-06-27 16:56:53,183 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-06-27 16:56:53,183 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-06-27 16:56:53,184 INFO L262 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 10 conjunts are in the unsatisfiable core [2024-06-27 16:56:53,185 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-27 16:56:53,290 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:53,290 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-27 16:56:53,385 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-06-27 16:56:53,385 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [609254783] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-27 16:56:53,385 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-27 16:56:53,385 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 19 [2024-06-27 16:56:53,385 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1234335506] [2024-06-27 16:56:53,386 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-27 16:56:53,386 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2024-06-27 16:56:53,386 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 16:56:53,386 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2024-06-27 16:56:53,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=298, Unknown=0, NotChecked=0, Total=380 [2024-06-27 16:56:53,427 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 35 [2024-06-27 16:56:53,427 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 239 places, 1017 transitions, 15574 flow. Second operand has 20 states, 20 states have (on average 7.35) internal successors, (147), 20 states have internal predecessors, (147), 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-06-27 16:56:53,428 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 16:56:53,428 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 35 [2024-06-27 16:56:53,428 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand