/root/.sdkman/candidates/java/current/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf --buchiautomizer.automaton.type.for.concurrent.programs BUCHI_PETRI_NET -tc ../../../trunk/examples/toolchains/BuchiAutomizerCInline.xml -i ../../../trunk/examples/svcomp/pthread-divine/ring_2w1r-1.i -------------------------------------------------------------------------------- This is Ultimate 0.2.3-?-9ecb849-m [2024-02-09 23:29:04,888 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-09 23:29:04,960 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Termination-32bit-Automizer_Default.epf [2024-02-09 23:29:04,965 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-09 23:29:04,966 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-09 23:29:04,966 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.Only consider context switches at boundaries of atomic blocks [2024-02-09 23:29:04,995 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-09 23:29:04,996 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-09 23:29:04,997 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-09 23:29:05,000 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-09 23:29:05,001 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-09 23:29:05,001 INFO L153 SettingsManager]: * Use SBE=true [2024-02-09 23:29:05,001 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-02-09 23:29:05,002 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-02-09 23:29:05,002 INFO L153 SettingsManager]: * Use old map elimination=false [2024-02-09 23:29:05,002 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-02-09 23:29:05,002 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-02-09 23:29:05,003 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-02-09 23:29:05,003 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-09 23:29:05,003 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-02-09 23:29:05,003 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-09 23:29:05,004 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-09 23:29:05,004 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-02-09 23:29:05,005 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-09 23:29:05,006 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-09 23:29:05,006 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-02-09 23:29:05,006 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-09 23:29:05,007 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-09 23:29:05,007 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-09 23:29:05,007 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-09 23:29:05,007 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-09 23:29:05,007 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-09 23:29:05,008 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-02-09 23:29:05,008 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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.buchiautomizer: Automaton type for concurrent programs -> BUCHI_PETRI_NET [2024-02-09 23:29:05,414 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-09 23:29:05,438 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-09 23:29:05,440 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-09 23:29:05,441 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-09 23:29:05,441 INFO L274 PluginConnector]: CDTParser initialized [2024-02-09 23:29:05,442 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-divine/ring_2w1r-1.i [2024-02-09 23:29:06,459 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-09 23:29:06,712 INFO L384 CDTParser]: Found 1 translation units. [2024-02-09 23:29:06,713 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-divine/ring_2w1r-1.i [2024-02-09 23:29:06,737 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d107332e/9e07c398e39240439814034032fbd1b2/FLAG7af0605a9 [2024-02-09 23:29:06,754 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9d107332e/9e07c398e39240439814034032fbd1b2 [2024-02-09 23:29:06,756 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-09 23:29:06,758 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-09 23:29:06,758 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-09 23:29:06,759 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-09 23:29:06,763 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-09 23:29:06,764 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.02 11:29:06" (1/1) ... [2024-02-09 23:29:06,765 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47b9a17a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:06, skipping insertion in model container [2024-02-09 23:29:06,765 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.02 11:29:06" (1/1) ... [2024-02-09 23:29:06,809 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-02-09 23:29:07,003 WARN L635 FunctionHandler]: implicit declaration of function __builtin_bswap16 [2024-02-09 23:29:07,312 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-09 23:29:07,323 INFO L202 MainTranslator]: Completed pre-run [2024-02-09 23:29:07,337 WARN L635 FunctionHandler]: implicit declaration of function __builtin_bswap16 [2024-02-09 23:29:07,371 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-09 23:29:07,424 WARN L672 CHandler]: The function __builtin_bswap16 is called, but not defined or handled by StandardFunctionHandler. [2024-02-09 23:29:07,430 INFO L206 MainTranslator]: Completed translation [2024-02-09 23:29:07,430 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07 WrapperNode [2024-02-09 23:29:07,430 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-09 23:29:07,431 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-09 23:29:07,432 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-09 23:29:07,432 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-09 23:29:07,438 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,471 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,511 INFO L138 Inliner]: procedures = 310, calls = 77, calls flagged for inlining = 17, calls inlined = 12, statements flattened = 216 [2024-02-09 23:29:07,512 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-09 23:29:07,513 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-09 23:29:07,513 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-09 23:29:07,513 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-09 23:29:07,567 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,567 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,585 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,586 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,592 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,605 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,606 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,607 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,610 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-09 23:29:07,610 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-09 23:29:07,610 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-09 23:29:07,610 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-09 23:29:07,611 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (1/1) ... [2024-02-09 23:29:07,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-02-09 23:29:07,634 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-09 23:29:07,657 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-02-09 23:29:07,673 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure reader_two [2024-02-09 23:29:07,705 INFO L138 BoogieDeclarations]: Found implementation of procedure reader_two [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure writer_fn [2024-02-09 23:29:07,705 INFO L138 BoogieDeclarations]: Found implementation of procedure writer_fn [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-02-09 23:29:07,705 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-02-09 23:29:07,706 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-02-09 23:29:07,706 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-02-09 23:29:07,706 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-09 23:29:07,707 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-09 23:29:07,709 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-02-09 23:29:07,830 INFO L236 CfgBuilder]: Building ICFG [2024-02-09 23:29:07,831 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-09 23:29:08,208 INFO L277 CfgBuilder]: Performing block encoding [2024-02-09 23:29:08,215 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-09 23:29:08,215 INFO L302 CfgBuilder]: Removed 6 assume(true) statements. [2024-02-09 23:29:08,217 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.02 11:29:08 BoogieIcfgContainer [2024-02-09 23:29:08,217 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-09 23:29:08,218 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-02-09 23:29:08,218 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-02-09 23:29:08,221 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-02-09 23:29:08,221 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-02-09 23:29:08,221 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 09.02 11:29:06" (1/3) ... [2024-02-09 23:29:08,222 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@1f473881 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.02 11:29:08, skipping insertion in model container [2024-02-09 23:29:08,222 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-02-09 23:29:08,222 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.02 11:29:07" (2/3) ... [2024-02-09 23:29:08,222 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@1f473881 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.02 11:29:08, skipping insertion in model container [2024-02-09 23:29:08,222 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-02-09 23:29:08,223 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.02 11:29:08" (3/3) ... [2024-02-09 23:29:08,223 INFO L332 chiAutomizerObserver]: Analyzing ICFG ring_2w1r-1.i [2024-02-09 23:29:08,328 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-02-09 23:29:08,358 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 233 places, 249 transitions, 512 flow [2024-02-09 23:29:08,459 INFO L124 PetriNetUnfolderBase]: 21/245 cut-off events. [2024-02-09 23:29:08,459 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2024-02-09 23:29:08,468 INFO L83 FinitePrefix]: Finished finitePrefix Result has 254 conditions, 245 events. 21/245 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 555 event pairs, 0 based on Foata normal form. 0/224 useless extension candidates. Maximal degree in co-relation 197. Up to 2 conditions per place. [2024-02-09 23:29:08,468 INFO L82 GeneralOperation]: Start removeDead. Operand has 233 places, 249 transitions, 512 flow [2024-02-09 23:29:08,488 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 231 places, 245 transitions, 502 flow [2024-02-09 23:29:08,493 INFO L303 stractBuchiCegarLoop]: Interprodecural is true [2024-02-09 23:29:08,493 INFO L304 stractBuchiCegarLoop]: Hoare is false [2024-02-09 23:29:08,493 INFO L305 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-02-09 23:29:08,493 INFO L306 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-02-09 23:29:08,493 INFO L307 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-02-09 23:29:08,493 INFO L308 stractBuchiCegarLoop]: Difference is false [2024-02-09 23:29:08,493 INFO L309 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-02-09 23:29:08,494 INFO L313 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiPetriNetCegarLoop ======== [2024-02-09 23:29:08,494 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 231 places, 245 transitions, 502 flow [2024-02-09 23:29:08,515 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-09 23:29:08,515 INFO L124 PetriNetUnfolderBase]: 4/115 cut-off events. [2024-02-09 23:29:08,515 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-09 23:29:08,515 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-09 23:29:08,518 INFO L335 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-02-09 23:29:08,518 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 231 places, 245 transitions, 502 flow [2024-02-09 23:29:08,532 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-09 23:29:08,532 INFO L124 PetriNetUnfolderBase]: 4/115 cut-off events. [2024-02-09 23:29:08,532 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-09 23:29:08,533 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-09 23:29:08,542 INFO L748 eck$LassoCheckResult]: Stem: 237#[$Ultimate##0]true [491] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_23| 0) 0) InVars {#valid=|v_#valid_23|} OutVars{#valid=|v_#valid_23|} AuxVars[] AssignedVars[] 239#[L-1]true [504] L-1-->L803: Formula: (< 0 |v_#StackHeapBarrier_2|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|} AuxVars[] AssignedVars[] 241#[L803]true [364] L803-->L803-1: Formula: (and (= (select |v_#valid_24| 1) 1) (= (select |v_#length_15| 1) 2)) InVars {#length=|v_#length_15|, #valid=|v_#valid_24|} OutVars{#length=|v_#length_15|, #valid=|v_#valid_24|} AuxVars[] AssignedVars[] 243#[L803-1]true [392] L803-1-->L803-2: Formula: (= (select (select |v_#memory_int_23| 1) 0) 48) InVars {#memory_int=|v_#memory_int_23|} OutVars{#memory_int=|v_#memory_int_23|} AuxVars[] AssignedVars[] 245#[L803-2]true [579] L803-2-->L803-3: Formula: (= (select (select |v_#memory_int_24| 1) 1) 0) InVars {#memory_int=|v_#memory_int_24|} OutVars{#memory_int=|v_#memory_int_24|} AuxVars[] AssignedVars[] 247#[L803-3]true [343] L803-3-->L803-4: Formula: (and (= (select |v_#valid_25| 2) 1) (= 7 (select |v_#length_16| 2))) InVars {#length=|v_#length_16|, #valid=|v_#valid_25|} OutVars{#length=|v_#length_16|, #valid=|v_#valid_25|} AuxVars[] AssignedVars[] 249#[L803-4]true [514] L803-4-->L803-5: Formula: (= 114 (select (select |v_#memory_int_25| 2) 0)) InVars {#memory_int=|v_#memory_int_25|} OutVars{#memory_int=|v_#memory_int_25|} AuxVars[] AssignedVars[] 251#[L803-5]true [567] L803-5-->L803-6: Formula: (= (select (select |v_#memory_int_26| 2) 1) 105) InVars {#memory_int=|v_#memory_int_26|} OutVars{#memory_int=|v_#memory_int_26|} AuxVars[] AssignedVars[] 253#[L803-6]true [472] L803-6-->L803-7: Formula: (= 110 (select (select |v_#memory_int_27| 2) 2)) InVars {#memory_int=|v_#memory_int_27|} OutVars{#memory_int=|v_#memory_int_27|} AuxVars[] AssignedVars[] 255#[L803-7]true [580] L803-7-->L803-8: Formula: (= (select (select |v_#memory_int_28| 2) 3) 103) InVars {#memory_int=|v_#memory_int_28|} OutVars{#memory_int=|v_#memory_int_28|} AuxVars[] AssignedVars[] 257#[L803-8]true [487] L803-8-->L803-9: Formula: (= (select (select |v_#memory_int_29| 2) 4) 46) InVars {#memory_int=|v_#memory_int_29|} OutVars{#memory_int=|v_#memory_int_29|} AuxVars[] AssignedVars[] 259#[L803-9]true [473] L803-9-->L803-10: Formula: (= 104 (select (select |v_#memory_int_30| 2) 5)) InVars {#memory_int=|v_#memory_int_30|} OutVars{#memory_int=|v_#memory_int_30|} AuxVars[] AssignedVars[] 261#[L803-10]true [509] L803-10-->L803-11: Formula: (= (select (select |v_#memory_int_31| 2) 6) 0) InVars {#memory_int=|v_#memory_int_31|} OutVars{#memory_int=|v_#memory_int_31|} AuxVars[] AssignedVars[] 263#[L803-11]true [398] L803-11-->L841: Formula: (and (= 3 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] 265#[L841]true [533] L841-->L841-1: Formula: (and (= (select |v_#length_17| 3) 24) (= (select |v_#valid_26| 3) 1)) InVars {#length=|v_#length_17|, #valid=|v_#valid_26|} OutVars{#length=|v_#length_17|, #valid=|v_#valid_26|} AuxVars[] AssignedVars[] 267#[L841-1]true [428] L841-1-->L841-2: Formula: (= (select (select |v_#memory_int_32| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_32|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_32|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] 269#[L841-2]true [455] L841-2-->L841-3: Formula: (= (select (select |v_#memory_int_33| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_33|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_33|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] 271#[L841-3]true [475] L841-3-->L841-4: Formula: (= (select (select |v_#memory_int_34| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_34|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_34|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] 273#[L841-4]true [520] L841-4-->L841-5: Formula: (= (select (select |v_#memory_int_35| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_35|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_35|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] 275#[L841-5]true [528] L841-5-->L841-6: Formula: (= (select (select |v_#memory_int_36| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_36|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_36|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] 277#[L841-6]true [421] L841-6-->L-1-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] 279#[L-1-1]true [574] L-1-1-->L1072: Formula: true InVars {} OutVars{ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_5|, ULTIMATE.start_main_~status~0#1=|v_ULTIMATE.start_main_~status~0#1_3|, ULTIMATE.start_main_#t~nondet31#1=|v_ULTIMATE.start_main_#t~nondet31#1_2|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_4|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_2|, ULTIMATE.start_main_#t~mem36#1=|v_ULTIMATE.start_main_#t~mem36#1_4|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_2|, ULTIMATE.start_main_#t~ret34#1.base=|v_ULTIMATE.start_main_#t~ret34#1.base_4|, ULTIMATE.start_main_#t~nondet33#1=|v_ULTIMATE.start_main_#t~nondet33#1_2|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_4|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_5|, ULTIMATE.start_main_#t~mem35#1=|v_ULTIMATE.start_main_#t~mem35#1_4|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_5|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_5|, ULTIMATE.start_main_#t~ret34#1.offset=|v_ULTIMATE.start_main_#t~ret34#1.offset_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#reader~0#1.offset, ULTIMATE.start_main_~status~0#1, ULTIMATE.start_main_#t~nondet31#1, ULTIMATE.start_main_~#r~3#1.offset, ULTIMATE.start_main_#t~pre32#1, ULTIMATE.start_main_#t~mem36#1, ULTIMATE.start_main_#t~pre30#1, ULTIMATE.start_main_#t~ret34#1.base, ULTIMATE.start_main_#t~nondet33#1, ULTIMATE.start_main_~#r~3#1.base, ULTIMATE.start_main_~#reader~0#1.base, ULTIMATE.start_main_#t~mem35#1, ULTIMATE.start_main_~#writer~0#1.base, ULTIMATE.start_main_~#writer~0#1.offset, ULTIMATE.start_main_#t~ret34#1.offset] 281#[L1072]true [526] L1072-->L1072-1: Formula: (and (= (store |v_#length_19| |v_ULTIMATE.start_main_~#reader~0#1.base_6| 4) |v_#length_18|) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#reader~0#1.base_6|) (= |v_ULTIMATE.start_main_~#reader~0#1.offset_6| 0) (= (select |v_#valid_28| |v_ULTIMATE.start_main_~#reader~0#1.base_6|) 0) (not (= 0 |v_ULTIMATE.start_main_~#reader~0#1.base_6|)) (= (store |v_#valid_28| |v_ULTIMATE.start_main_~#reader~0#1.base_6| 1) |v_#valid_27|)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_19|, #valid=|v_#valid_28|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_18|, ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_6|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_6|, #valid=|v_#valid_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#reader~0#1.offset, ULTIMATE.start_main_~#reader~0#1.base, #valid, #length] 283#[L1072-1]true [393] L1072-1-->L1072-2: Formula: (and (< |v_#StackHeapBarrier_4| |v_ULTIMATE.start_main_~#writer~0#1.base_6|) (= (select |v_#valid_30| |v_ULTIMATE.start_main_~#writer~0#1.base_6|) 0) (= |v_ULTIMATE.start_main_~#writer~0#1.offset_6| 0) (= (store |v_#valid_30| |v_ULTIMATE.start_main_~#writer~0#1.base_6| 1) |v_#valid_29|) (= (store |v_#length_21| |v_ULTIMATE.start_main_~#writer~0#1.base_6| 4) |v_#length_20|) (not (= |v_ULTIMATE.start_main_~#writer~0#1.base_6| 0))) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_4|, #length=|v_#length_21|, #valid=|v_#valid_30|} OutVars{ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_6|, #StackHeapBarrier=|v_#StackHeapBarrier_4|, #length=|v_#length_20|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_6|, #valid=|v_#valid_29|} AuxVars[] AssignedVars[#valid, ULTIMATE.start_main_~#writer~0#1.base, #length, ULTIMATE.start_main_~#writer~0#1.offset] 285#[L1072-2]true [450] L1072-2-->L1073: Formula: (and (< |v_#StackHeapBarrier_5| |v_ULTIMATE.start_main_~#r~3#1.base_5|) (not (= |v_ULTIMATE.start_main_~#r~3#1.base_5| 0)) (= (select |v_#valid_32| |v_ULTIMATE.start_main_~#r~3#1.base_5|) 0) (= (store |v_#valid_32| |v_ULTIMATE.start_main_~#r~3#1.base_5| 1) |v_#valid_31|) (= (store |v_#length_23| |v_ULTIMATE.start_main_~#r~3#1.base_5| 24) |v_#length_22|) (= |v_ULTIMATE.start_main_~#r~3#1.offset_5| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_23|, #valid=|v_#valid_32|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_22|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_5|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_5|, #valid=|v_#valid_31|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#r~3#1.base, #valid, #length, ULTIMATE.start_main_~#r~3#1.offset] 287#[L1073]true [494] L1073-->L1074: Formula: (and (= |v_ULTIMATE.start_main_~#r~3#1.offset_6| |v_ULTIMATE.start_ring_init_#in~r#1.offset_1|) (= |v_ULTIMATE.start_ring_init_#in~r#1.base_1| |v_ULTIMATE.start_main_~#r~3#1.base_6|)) InVars {ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_6|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_6|} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_1|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_1|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_6|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_6|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_#in~r#1.offset, ULTIMATE.start_ring_init_#in~r#1.base] 289#[L1074]true [498] L1074-->L822: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_1|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 291#[L822]true [531] L822-->L823: Formula: (and (= |v_ULTIMATE.start_ring_init_~r#1.offset_2| |v_ULTIMATE.start_ring_init_#in~r#1.offset_2|) (= |v_ULTIMATE.start_ring_init_#in~r#1.base_2| |v_ULTIMATE.start_ring_init_~r#1.base_2|)) InVars {ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_2|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_2|} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_2|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_2|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_2|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 293#[L823]true [469] L823-->L823-1: Formula: (let ((.cse0 (+ |v_ULTIMATE.start_ring_init_~r#1.offset_3| 20))) (and (= (store |v_#memory_int_38| |v_ULTIMATE.start_ring_init_~r#1.base_3| (store (select |v_#memory_int_38| |v_ULTIMATE.start_ring_init_~r#1.base_3|) .cse0 0)) |v_#memory_int_37|) (<= (+ |v_ULTIMATE.start_ring_init_~r#1.offset_3| 24) (select |v_#length_24| |v_ULTIMATE.start_ring_init_~r#1.base_3|)) (<= 0 .cse0) (= (select |v_#valid_33| |v_ULTIMATE.start_ring_init_~r#1.base_3|) 1))) InVars {#memory_int=|v_#memory_int_38|, #length=|v_#length_24|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_3|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_3|, #valid=|v_#valid_33|} OutVars{#memory_int=|v_#memory_int_37|, #length=|v_#length_24|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_3|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_3|, #valid=|v_#valid_33|} AuxVars[] AssignedVars[#memory_int] 295#[L823-1]true [544] L823-1-->L823-2: Formula: (and (= (store |v_#memory_int_40| |v_ULTIMATE.start_ring_init_~r#1.base_4| (store (select |v_#memory_int_40| |v_ULTIMATE.start_ring_init_~r#1.base_4|) |v_ULTIMATE.start_ring_init_~r#1.offset_4| 0)) |v_#memory_int_39|) (= (select |v_#valid_34| |v_ULTIMATE.start_ring_init_~r#1.base_4|) 1) (<= (+ |v_ULTIMATE.start_ring_init_~r#1.offset_4| 4) (select |v_#length_25| |v_ULTIMATE.start_ring_init_~r#1.base_4|)) (<= 0 |v_ULTIMATE.start_ring_init_~r#1.offset_4|)) InVars {#memory_int=|v_#memory_int_40|, #length=|v_#length_25|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_4|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_4|, #valid=|v_#valid_34|} OutVars{#memory_int=|v_#memory_int_39|, #length=|v_#length_25|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_4|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_4|, #valid=|v_#valid_34|} AuxVars[] AssignedVars[#memory_int] 297#[L823-2]true [519] L823-2-->L1074-1: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_5|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_5|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 299#[L1074-1]true [492] L1074-1-->L1075: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_3|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_3|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_#in~r#1.offset, ULTIMATE.start_ring_init_#in~r#1.base] 301#[L1075]true [448] L1075-->L1075-1: Formula: (= |v_#pthreadsForks_1| |v_ULTIMATE.start_main_#t~pre30#1_3|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre30#1] 303#[L1075-1]true [582] L1075-1-->L1075-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] 305#[L1075-2]true [357] L1075-2-->L1075-3: Formula: (and (= (store |v_#memory_int_42| |v_ULTIMATE.start_main_~#reader~0#1.base_7| (store (select |v_#memory_int_42| |v_ULTIMATE.start_main_~#reader~0#1.base_7|) |v_ULTIMATE.start_main_~#reader~0#1.offset_7| |v_ULTIMATE.start_main_#t~pre30#1_4|)) |v_#memory_int_41|) (<= 0 |v_ULTIMATE.start_main_~#reader~0#1.offset_7|) (= (select |v_#valid_35| |v_ULTIMATE.start_main_~#reader~0#1.base_7|) 1) (<= (+ |v_ULTIMATE.start_main_~#reader~0#1.offset_7| 4) (select |v_#length_26| |v_ULTIMATE.start_main_~#reader~0#1.base_7|))) InVars {ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_7|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_7|, #valid=|v_#valid_35|, #memory_int=|v_#memory_int_42|, #length=|v_#length_26|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_4|} OutVars{ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_7|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_7|, #valid=|v_#valid_35|, #memory_int=|v_#memory_int_41|, #length=|v_#length_26|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_4|} AuxVars[] AssignedVars[#memory_int] 307#[L1075-3]true [731] L1075-3-->$Ultimate##0: Formula: (and (= |v_reader_twoThread1of1ForFork0_#in~arg#1.offset_4| |v_ULTIMATE.start_main_~#r~3#1.offset_9|) (= v_reader_twoThread1of1ForFork0_thidvar1_2 0) (= |v_reader_twoThread1of1ForFork0_#in~arg#1.base_4| |v_ULTIMATE.start_main_~#r~3#1.base_9|) (= v_reader_twoThread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre30#1_7|)) InVars {ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_9|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_9|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_7|} OutVars{reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base=|v_reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base_8|, reader_twoThread1of1ForFork0_~val~1#1=|v_reader_twoThread1of1ForFork0_~val~1#1_22|, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base=|v_reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base_8|, reader_twoThread1of1ForFork0_#t~pre25#1=|v_reader_twoThread1of1ForFork0_#t~pre25#1_6|, reader_twoThread1of1ForFork0_thidvar0=v_reader_twoThread1of1ForFork0_thidvar0_2, reader_twoThread1of1ForFork0_ring_dequeue_#res#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#res#1_8|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_7|, reader_twoThread1of1ForFork0_#res#1.offset=|v_reader_twoThread1of1ForFork0_#res#1.offset_4|, reader_twoThread1of1ForFork0_~#read~0#1.offset=|v_reader_twoThread1of1ForFork0_~#read~0#1.offset_30|, reader_twoThread1of1ForFork0_~r~2#1.offset=|v_reader_twoThread1of1ForFork0_~r~2#1.offset_8|, reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1_10|, reader_twoThread1of1ForFork0_#t~pre29#1=|v_reader_twoThread1of1ForFork0_#t~pre29#1_6|, reader_twoThread1of1ForFork0_#t~ret23#1=|v_reader_twoThread1of1ForFork0_#t~ret23#1_8|, reader_twoThread1of1ForFork0_#in~arg#1.offset=|v_reader_twoThread1of1ForFork0_#in~arg#1.offset_4|, reader_twoThread1of1ForFork0_~arg#1.offset=|v_reader_twoThread1of1ForFork0_~arg#1.offset_6|, reader_twoThread1of1ForFork0_ring_empty_~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_empty_~r#1.offset_12|, reader_twoThread1of1ForFork0_~i~2#1=|v_reader_twoThread1of1ForFork0_~i~2#1_14|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1_12|, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset_16|, reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1=|v_reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1_12|, reader_twoThread1of1ForFork0_#res#1.base=|v_reader_twoThread1of1ForFork0_#res#1.base_4|, reader_twoThread1of1ForFork0_thidvar1=v_reader_twoThread1of1ForFork0_thidvar1_2, reader_twoThread1of1ForFork0_ring_empty_~r#1.base=|v_reader_twoThread1of1ForFork0_ring_empty_~r#1.base_12|, reader_twoThread1of1ForFork0_#t~ret22#1=|v_reader_twoThread1of1ForFork0_#t~ret22#1_12|, reader_twoThread1of1ForFork0_~i~3#1=|v_reader_twoThread1of1ForFork0_~i~3#1_20|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_9|, reader_twoThread1of1ForFork0_#t~mem27#1=|v_reader_twoThread1of1ForFork0_#t~mem27#1_10|, reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1=|v_reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1_12|, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset=|v_reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset_26|, reader_twoThread1of1ForFork0_~#read~0#1.base=|v_reader_twoThread1of1ForFork0_~#read~0#1.base_32|, reader_twoThread1of1ForFork0_#t~mem24#1=|v_reader_twoThread1of1ForFork0_#t~mem24#1_10|, reader_twoThread1of1ForFork0_#in~arg#1.base=|v_reader_twoThread1of1ForFork0_#in~arg#1.base_4|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_9|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1_12|, reader_twoThread1of1ForFork0_#t~pre26#1=|v_reader_twoThread1of1ForFork0_#t~pre26#1_6|, reader_twoThread1of1ForFork0_ring_empty_#res#1=|v_reader_twoThread1of1ForFork0_ring_empty_#res#1_8|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1_12|, reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset_8|, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset_8|, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base=|v_reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base_16|, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base=|v_reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base_26|, reader_twoThread1of1ForFork0_#t~mem28#1=|v_reader_twoThread1of1ForFork0_#t~mem28#1_10|, reader_twoThread1of1ForFork0_~arg#1.base=|v_reader_twoThread1of1ForFork0_~arg#1.base_6|, reader_twoThread1of1ForFork0_~r~2#1.base=|v_reader_twoThread1of1ForFork0_~r~2#1.base_8|} AuxVars[] AssignedVars[reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base, reader_twoThread1of1ForFork0_~val~1#1, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base, reader_twoThread1of1ForFork0_#t~pre25#1, reader_twoThread1of1ForFork0_thidvar0, reader_twoThread1of1ForFork0_ring_dequeue_#res#1, reader_twoThread1of1ForFork0_#res#1.offset, reader_twoThread1of1ForFork0_~#read~0#1.offset, reader_twoThread1of1ForFork0_~r~2#1.offset, reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1, reader_twoThread1of1ForFork0_#t~pre29#1, reader_twoThread1of1ForFork0_#t~ret23#1, reader_twoThread1of1ForFork0_#in~arg#1.offset, reader_twoThread1of1ForFork0_~arg#1.offset, reader_twoThread1of1ForFork0_ring_empty_~r#1.offset, reader_twoThread1of1ForFork0_~i~2#1, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset, reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1, reader_twoThread1of1ForFork0_#res#1.base, reader_twoThread1of1ForFork0_thidvar1, reader_twoThread1of1ForFork0_ring_empty_~r#1.base, reader_twoThread1of1ForFork0_#t~ret22#1, reader_twoThread1of1ForFork0_~i~3#1, reader_twoThread1of1ForFork0_#t~mem27#1, reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset, reader_twoThread1of1ForFork0_~#read~0#1.base, reader_twoThread1of1ForFork0_#t~mem24#1, reader_twoThread1of1ForFork0_#in~arg#1.base, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1, reader_twoThread1of1ForFork0_#t~pre26#1, reader_twoThread1of1ForFork0_ring_empty_#res#1, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1, reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base, reader_twoThread1of1ForFork0_#t~mem28#1, reader_twoThread1of1ForFork0_~arg#1.base, reader_twoThread1of1ForFork0_~r~2#1.base] 309#[L1075-4, $Ultimate##0]true [553] L1075-4-->L1075-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre30#1] 311#[$Ultimate##0, L1075-5]true [458] L1075-5-->L1076: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet31#1=|v_ULTIMATE.start_main_#t~nondet31#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet31#1] 313#[L1076, $Ultimate##0]true [462] L1076-->L1076-1: Formula: (= |v_#pthreadsForks_4| |v_ULTIMATE.start_main_#t~pre32#1_3|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre32#1] 315#[$Ultimate##0, L1076-1]true [375] L1076-1-->L1076-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] 317#[L1076-2, $Ultimate##0]true [380] L1076-2-->L1076-3: Formula: (and (<= (+ 4 |v_ULTIMATE.start_main_~#writer~0#1.offset_7|) (select |v_#length_27| |v_ULTIMATE.start_main_~#writer~0#1.base_7|)) (= (select |v_#valid_36| |v_ULTIMATE.start_main_~#writer~0#1.base_7|) 1) (<= 0 |v_ULTIMATE.start_main_~#writer~0#1.offset_7|) (= (store |v_#memory_int_44| |v_ULTIMATE.start_main_~#writer~0#1.base_7| (store (select |v_#memory_int_44| |v_ULTIMATE.start_main_~#writer~0#1.base_7|) |v_ULTIMATE.start_main_~#writer~0#1.offset_7| |v_ULTIMATE.start_main_#t~pre32#1_4|)) |v_#memory_int_43|)) InVars {#valid=|v_#valid_36|, #memory_int=|v_#memory_int_44|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_7|, #length=|v_#length_27|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_4|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_7|} OutVars{#valid=|v_#valid_36|, #memory_int=|v_#memory_int_43|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_7|, #length=|v_#length_27|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_4|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_7|} AuxVars[] AssignedVars[#memory_int] 319#[$Ultimate##0, L1076-3]true [734] L1076-3-->$Ultimate##0: Formula: (and (= v_writer_fnThread1of1ForFork1_thidvar1_2 0) (= v_writer_fnThread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre32#1_7|) (= |v_ULTIMATE.start_main_~#r~3#1.base_11| |v_writer_fnThread1of1ForFork1_#in~arg#1.base_4|) (= v_writer_fnThread1of1ForFork1_thidvar2_2 0) (= |v_ULTIMATE.start_main_~#r~3#1.offset_11| |v_writer_fnThread1of1ForFork1_#in~arg#1.offset_4|)) InVars {ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_11|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_11|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_7|} OutVars{writer_fnThread1of1ForFork1_#t~pre17#1=|v_writer_fnThread1of1ForFork1_#t~pre17#1_6|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1_12|, writer_fnThread1of1ForFork1_~arg#1.offset=|v_writer_fnThread1of1ForFork1_~arg#1.offset_6|, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_8|, writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_18|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_16|, writer_fnThread1of1ForFork1_thidvar2=v_writer_fnThread1of1ForFork1_thidvar2_2, writer_fnThread1of1ForFork1_thidvar0=v_writer_fnThread1of1ForFork1_thidvar0_2, writer_fnThread1of1ForFork1_~r~1#1.offset=|v_writer_fnThread1of1ForFork1_~r~1#1.offset_6|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_8|, writer_fnThread1of1ForFork1_#t~nondet18#1=|v_writer_fnThread1of1ForFork1_#t~nondet18#1_6|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_16|, writer_fnThread1of1ForFork1_#res#1.base=|v_writer_fnThread1of1ForFork1_#res#1.base_4|, writer_fnThread1of1ForFork1_~r~1#1.base=|v_writer_fnThread1of1ForFork1_~r~1#1.base_6|, writer_fnThread1of1ForFork1_~arg#1.base=|v_writer_fnThread1of1ForFork1_~arg#1.base_6|, writer_fnThread1of1ForFork1_#res#1.offset=|v_writer_fnThread1of1ForFork1_#res#1.offset_4|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_11|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_7|, writer_fnThread1of1ForFork1_#in~arg#1.offset=|v_writer_fnThread1of1ForFork1_#in~arg#1.offset_4|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_20|, writer_fnThread1of1ForFork1_#in~arg#1.base=|v_writer_fnThread1of1ForFork1_#in~arg#1.base_4|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_20|, writer_fnThread1of1ForFork1_ring_enqueue_~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_~x#1_10|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_11|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1_12|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_8|, writer_fnThread1of1ForFork1_thidvar1=v_writer_fnThread1of1ForFork1_thidvar1_2} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_#t~pre17#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1, writer_fnThread1of1ForFork1_#res#1.base, writer_fnThread1of1ForFork1_~r~1#1.base, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1, writer_fnThread1of1ForFork1_~arg#1.offset, writer_fnThread1of1ForFork1_~arg#1.base, writer_fnThread1of1ForFork1_#res#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1, writer_fnThread1of1ForFork1_#in~arg#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base, writer_fnThread1of1ForFork1_#in~arg#1.base, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset, writer_fnThread1of1ForFork1_~i~1#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1, writer_fnThread1of1ForFork1_ring_enqueue_~x#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset, writer_fnThread1of1ForFork1_thidvar2, writer_fnThread1of1ForFork1_thidvar0, writer_fnThread1of1ForFork1_thidvar1, writer_fnThread1of1ForFork1_~r~1#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base, writer_fnThread1of1ForFork1_#t~nondet18#1] 321#[$Ultimate##0, L1076-4, $Ultimate##0]true [693] $Ultimate##0-->L842: Formula: (and (= |v_writer_fnThread1of1ForFork1_~arg#1.offset_1| |v_writer_fnThread1of1ForFork1_#in~arg#1.offset_1|) (= |v_writer_fnThread1of1ForFork1_~arg#1.base_1| |v_writer_fnThread1of1ForFork1_#in~arg#1.base_1|)) InVars {writer_fnThread1of1ForFork1_#in~arg#1.base=|v_writer_fnThread1of1ForFork1_#in~arg#1.base_1|, writer_fnThread1of1ForFork1_#in~arg#1.offset=|v_writer_fnThread1of1ForFork1_#in~arg#1.offset_1|} OutVars{writer_fnThread1of1ForFork1_#in~arg#1.base=|v_writer_fnThread1of1ForFork1_#in~arg#1.base_1|, writer_fnThread1of1ForFork1_~arg#1.base=|v_writer_fnThread1of1ForFork1_~arg#1.base_1|, writer_fnThread1of1ForFork1_~arg#1.offset=|v_writer_fnThread1of1ForFork1_~arg#1.offset_1|, writer_fnThread1of1ForFork1_#in~arg#1.offset=|v_writer_fnThread1of1ForFork1_#in~arg#1.offset_1|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_~arg#1.base, writer_fnThread1of1ForFork1_~arg#1.offset] 323#[L842, $Ultimate##0, L1076-4]true [694] L842-->L843: Formula: (and (= |v_writer_fnThread1of1ForFork1_~r~1#1.offset_1| |v_writer_fnThread1of1ForFork1_~arg#1.offset_3|) (= |v_writer_fnThread1of1ForFork1_~r~1#1.base_1| |v_writer_fnThread1of1ForFork1_~arg#1.base_3|)) InVars {writer_fnThread1of1ForFork1_~arg#1.base=|v_writer_fnThread1of1ForFork1_~arg#1.base_3|, writer_fnThread1of1ForFork1_~arg#1.offset=|v_writer_fnThread1of1ForFork1_~arg#1.offset_3|} OutVars{writer_fnThread1of1ForFork1_~r~1#1.base=|v_writer_fnThread1of1ForFork1_~r~1#1.base_1|, writer_fnThread1of1ForFork1_~arg#1.base=|v_writer_fnThread1of1ForFork1_~arg#1.base_3|, writer_fnThread1of1ForFork1_~arg#1.offset=|v_writer_fnThread1of1ForFork1_~arg#1.offset_3|, writer_fnThread1of1ForFork1_~r~1#1.offset=|v_writer_fnThread1of1ForFork1_~r~1#1.offset_1|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_~r~1#1.base, writer_fnThread1of1ForFork1_~r~1#1.offset] 325#[L843, $Ultimate##0, L1076-4]true [695] L843-->L843-6: Formula: (= |v_writer_fnThread1of1ForFork1_~i~1#1_1| 0) InVars {} OutVars{writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_1|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_~i~1#1] 327#[L843-6, $Ultimate##0, L1076-4]true [696] L843-6-->L844: Formula: (< |v_writer_fnThread1of1ForFork1_~i~1#1_3| 8) InVars {writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_3|} OutVars{writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_3|} AuxVars[] AssignedVars[] 329#[$Ultimate##0, L1076-4, L844]true [699] L844-->L844-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_8| |v_~#mutex~0.base_10|))) (and (= 0 (select .cse0 |v_~#mutex~0.offset_10|)) (= (store |v_#pthreadsMutex_8| |v_~#mutex~0.base_10| (store .cse0 |v_~#mutex~0.offset_10| 1)) |v_#pthreadsMutex_7|) (= |v_writer_fnThread1of1ForFork1_#t~nondet18#1_1| 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_10|, #pthreadsMutex=|v_#pthreadsMutex_8|, ~#mutex~0.base=|v_~#mutex~0.base_10|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_10|, #pthreadsMutex=|v_#pthreadsMutex_7|, ~#mutex~0.base=|v_~#mutex~0.base_10|, writer_fnThread1of1ForFork1_#t~nondet18#1=|v_writer_fnThread1of1ForFork1_#t~nondet18#1_1|} AuxVars[] AssignedVars[#pthreadsMutex, writer_fnThread1of1ForFork1_#t~nondet18#1] 331#[L844-1, $Ultimate##0, L1076-4]true [701] L844-1-->L845: Formula: true InVars {} OutVars{writer_fnThread1of1ForFork1_#t~nondet18#1=|v_writer_fnThread1of1ForFork1_#t~nondet18#1_3|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_#t~nondet18#1] 333#[L845, $Ultimate##0, L1076-4]true [703] L845-->L845-1: Formula: (and (= (+ |v_writer_fnThread1of1ForFork1_~i~1#1_9| 1) |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_1|) (= |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_1| |v_writer_fnThread1of1ForFork1_~r~1#1.base_3|) (= |v_writer_fnThread1of1ForFork1_~r~1#1.offset_3| |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_1|)) InVars {writer_fnThread1of1ForFork1_~r~1#1.base=|v_writer_fnThread1of1ForFork1_~r~1#1.base_3|, writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_9|, writer_fnThread1of1ForFork1_~r~1#1.offset=|v_writer_fnThread1of1ForFork1_~r~1#1.offset_3|} OutVars{writer_fnThread1of1ForFork1_~r~1#1.base=|v_writer_fnThread1of1ForFork1_~r~1#1.base_3|, writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_9|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_1|, writer_fnThread1of1ForFork1_~r~1#1.offset=|v_writer_fnThread1of1ForFork1_~r~1#1.offset_3|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_1|, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_1|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1] 335#[$Ultimate##0, L845-1, L1076-4]true [705] L845-1-->L809: Formula: true InVars {} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_1|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_1|, writer_fnThread1of1ForFork1_ring_enqueue_~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_~x#1_1|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_1|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1_1|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1_1|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_1|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_~x#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base] 337#[L809, $Ultimate##0, L1076-4]true [706] L809-->L809-1: Formula: (and (= |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_3| |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_3|) (= |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_3| |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_3|)) InVars {writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_3|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_3|} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_3|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_3|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_3|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_3|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base] 339#[L809-1, $Ultimate##0, L1076-4]true [707] L809-1-->L810-8: Formula: (= |v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_3| |v_writer_fnThread1of1ForFork1_ring_enqueue_~x#1_3|) InVars {writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_3|} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_~x#1_3|, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_3|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_~x#1] 341#[L810-8, $Ultimate##0, L1076-4]true [2024-02-09 23:29:08,546 INFO L750 eck$LassoCheckResult]: Loop: 341#[L810-8, $Ultimate##0, L1076-4]true [708] L810-8-->L810-1: Formula: (let ((.cse0 (+ |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_5| 20))) (and (<= 0 .cse0) (= (select (select |v_#memory_int_59| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_5|) .cse0) |v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_3|) (= (select |v_#valid_47| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_5|) 1) (<= (+ |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_5| 24) (select |v_#length_38| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_5|)))) InVars {#memory_int=|v_#memory_int_59|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_5|, #length=|v_#length_38|, #valid=|v_#valid_47|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_5|} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_5|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_3|, #valid=|v_#valid_47|, #memory_int=|v_#memory_int_59|, #length=|v_#length_38|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_5|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1] 344#[$Ultimate##0, L810-1, L1076-4]true [710] L810-1-->L810-2: Formula: (and (= (select |v_#valid_48| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_7|) 1) (<= 0 |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_7|) (<= (+ |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_7| 4) (select |v_#length_39| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_7|)) (= |v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_3| (select (select |v_#memory_int_60| |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_7|) |v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_7|))) InVars {#memory_int=|v_#memory_int_60|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_7|, #length=|v_#length_39|, #valid=|v_#valid_48|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_7|} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_3|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_7|, #valid=|v_#valid_48|, #memory_int=|v_#memory_int_60|, #length=|v_#length_39|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_7|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1] 346#[L810-2, $Ultimate##0, L1076-4]true [713] L810-2-->L810-6: Formula: (= (let ((.cse0 (+ |v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_7| 1))) (let ((.cse1 (mod .cse0 4))) (ite (and (< .cse0 0) (not (= .cse1 0))) (+ (- 4) .cse1) .cse1))) |v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_7|) InVars {writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_7|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_7|} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_7|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_7|} AuxVars[] AssignedVars[] 348#[L810-6, $Ultimate##0, L1076-4]true [716] L810-6-->L810-7: Formula: true InVars {} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_11|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1] 350#[L810-7, $Ultimate##0, L1076-4]true [719] L810-7-->L810-8: Formula: true InVars {} OutVars{writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_11|} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1] 341#[L810-8, $Ultimate##0, L1076-4]true [2024-02-09 23:29:08,551 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:29:08,551 INFO L85 PathProgramCache]: Analyzing trace with hash -1590688203, now seen corresponding path program 1 times [2024-02-09 23:29:08,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:29:08,559 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685246594] [2024-02-09 23:29:08,559 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:29:08,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:29:08,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:29:08,746 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-09 23:29:08,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:29:08,802 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-09 23:29:08,804 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:29:08,805 INFO L85 PathProgramCache]: Analyzing trace with hash 704341737, now seen corresponding path program 1 times [2024-02-09 23:29:08,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:29:08,805 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1067246006] [2024-02-09 23:29:08,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:29:08,805 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:29:08,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:29:08,815 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-09 23:29:08,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:29:08,821 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-09 23:29:08,823 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:29:08,823 INFO L85 PathProgramCache]: Analyzing trace with hash 1553670453, now seen corresponding path program 1 times [2024-02-09 23:29:08,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:29:08,823 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [548729468] [2024-02-09 23:29:08,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:29:08,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:29:08,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-09 23:29:10,061 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-09 23:29:10,061 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-09 23:29:10,061 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [548729468] [2024-02-09 23:29:10,062 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [548729468] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-09 23:29:10,063 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-09 23:29:10,063 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2024-02-09 23:29:10,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [565704587] [2024-02-09 23:29:10,064 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-09 23:29:10,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-09 23:29:10,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-02-09 23:29:10,193 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=264, Unknown=0, NotChecked=0, Total=306 [2024-02-09 23:30:13,279 INFO L175 Difference]: Start difference. First operand has 231 places, 245 transitions, 502 flow. Second operand 625 states and 155625 transitions. [2024-02-09 23:30:13,280 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 231 places, 245 transitions, 502 flow. Second operand 625 states and 155625 transitions. [2024-02-09 23:30:13,362 INFO L120 encePairwiseOnDemand]: Number of universal subtrahend loopers: 191 of 249 [2024-02-09 23:30:13,364 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-09 23:30:14,081 INFO L124 PetriNetUnfolderBase]: 962/5119 cut-off events. [2024-02-09 23:30:14,081 INFO L125 PetriNetUnfolderBase]: For 34/34 co-relation queries the response was YES. [2024-02-09 23:30:14,103 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6463 conditions, 5119 events. 962/5119 cut-off events. For 34/34 co-relation queries the response was YES. Maximal size of possible extension queue 168. Compared 51094 event pairs, 111 based on Foata normal form. 1015/5665 useless extension candidates. Maximal degree in co-relation 6153. Up to 743 conditions per place. [2024-02-09 23:30:14,165 INFO L140 encePairwiseOnDemand]: 207/249 looper letters, 103 selfloop transitions, 94 changer transitions 0/376 dead transitions. [2024-02-09 23:30:14,165 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 263 places, 376 transitions, 1167 flow [2024-02-09 23:30:14,169 INFO L231 Difference]: Finished difference. Result has 886 places, 312 transitions, 1121 flow [2024-02-09 23:30:14,170 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 625 states. [2024-02-09 23:30:14,173 INFO L428 stractBuchiCegarLoop]: Abstraction has has 886 places, 312 transitions, 1121 flow [2024-02-09 23:30:14,173 INFO L335 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-02-09 23:30:14,173 INFO L84 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 886 places, 312 transitions, 1121 flow [2024-02-09 23:30:14,191 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-09 23:30:14,191 INFO L124 PetriNetUnfolderBase]: 3/129 cut-off events. [2024-02-09 23:30:14,191 INFO L125 PetriNetUnfolderBase]: For 90/105 co-relation queries the response was YES. [2024-02-09 23:30:14,191 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty language is not empty [2024-02-09 23:30:14,194 INFO L748 eck$LassoCheckResult]: Stem: 237#[$Ultimate##0]true [491] $Ultimate##0-->L-1: Formula: (= (select |v_#valid_23| 0) 0) InVars {#valid=|v_#valid_23|} OutVars{#valid=|v_#valid_23|} AuxVars[] AssignedVars[] 239#[L-1]true [504] L-1-->L803: Formula: (< 0 |v_#StackHeapBarrier_2|) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_2|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|} AuxVars[] AssignedVars[] 241#[L803]true [364] L803-->L803-1: Formula: (and (= (select |v_#valid_24| 1) 1) (= (select |v_#length_15| 1) 2)) InVars {#length=|v_#length_15|, #valid=|v_#valid_24|} OutVars{#length=|v_#length_15|, #valid=|v_#valid_24|} AuxVars[] AssignedVars[] 243#[L803-1]true [392] L803-1-->L803-2: Formula: (= (select (select |v_#memory_int_23| 1) 0) 48) InVars {#memory_int=|v_#memory_int_23|} OutVars{#memory_int=|v_#memory_int_23|} AuxVars[] AssignedVars[] 245#[L803-2]true [579] L803-2-->L803-3: Formula: (= (select (select |v_#memory_int_24| 1) 1) 0) InVars {#memory_int=|v_#memory_int_24|} OutVars{#memory_int=|v_#memory_int_24|} AuxVars[] AssignedVars[] 247#[L803-3]true [343] L803-3-->L803-4: Formula: (and (= (select |v_#valid_25| 2) 1) (= 7 (select |v_#length_16| 2))) InVars {#length=|v_#length_16|, #valid=|v_#valid_25|} OutVars{#length=|v_#length_16|, #valid=|v_#valid_25|} AuxVars[] AssignedVars[] 249#[L803-4]true [514] L803-4-->L803-5: Formula: (= 114 (select (select |v_#memory_int_25| 2) 0)) InVars {#memory_int=|v_#memory_int_25|} OutVars{#memory_int=|v_#memory_int_25|} AuxVars[] AssignedVars[] 251#[L803-5]true [567] L803-5-->L803-6: Formula: (= (select (select |v_#memory_int_26| 2) 1) 105) InVars {#memory_int=|v_#memory_int_26|} OutVars{#memory_int=|v_#memory_int_26|} AuxVars[] AssignedVars[] 253#[L803-6]true [472] L803-6-->L803-7: Formula: (= 110 (select (select |v_#memory_int_27| 2) 2)) InVars {#memory_int=|v_#memory_int_27|} OutVars{#memory_int=|v_#memory_int_27|} AuxVars[] AssignedVars[] 255#[L803-7]true [580] L803-7-->L803-8: Formula: (= (select (select |v_#memory_int_28| 2) 3) 103) InVars {#memory_int=|v_#memory_int_28|} OutVars{#memory_int=|v_#memory_int_28|} AuxVars[] AssignedVars[] 257#[L803-8]true [487] L803-8-->L803-9: Formula: (= (select (select |v_#memory_int_29| 2) 4) 46) InVars {#memory_int=|v_#memory_int_29|} OutVars{#memory_int=|v_#memory_int_29|} AuxVars[] AssignedVars[] 259#[L803-9]true [473] L803-9-->L803-10: Formula: (= 104 (select (select |v_#memory_int_30| 2) 5)) InVars {#memory_int=|v_#memory_int_30|} OutVars{#memory_int=|v_#memory_int_30|} AuxVars[] AssignedVars[] 261#[L803-10]true [509] L803-10-->L803-11: Formula: (= (select (select |v_#memory_int_31| 2) 6) 0) InVars {#memory_int=|v_#memory_int_31|} OutVars{#memory_int=|v_#memory_int_31|} AuxVars[] AssignedVars[] 263#[L803-11]true [398] L803-11-->L841: Formula: (and (= 3 |v_~#mutex~0.base_1|) (= |v_~#mutex~0.offset_1| 0)) InVars {} OutVars{~#mutex~0.base=|v_~#mutex~0.base_1|, ~#mutex~0.offset=|v_~#mutex~0.offset_1|} AuxVars[] AssignedVars[~#mutex~0.base, ~#mutex~0.offset] 265#[L841]true [533] L841-->L841-1: Formula: (and (= (select |v_#length_17| 3) 24) (= (select |v_#valid_26| 3) 1)) InVars {#length=|v_#length_17|, #valid=|v_#valid_26|} OutVars{#length=|v_#length_17|, #valid=|v_#valid_26|} AuxVars[] AssignedVars[] 267#[L841-1]true [428] L841-1-->L841-2: Formula: (= (select (select |v_#memory_int_32| |v_~#mutex~0.base_2|) |v_~#mutex~0.offset_2|) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_32|, ~#mutex~0.base=|v_~#mutex~0.base_2|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_2|, #memory_int=|v_#memory_int_32|, ~#mutex~0.base=|v_~#mutex~0.base_2|} AuxVars[] AssignedVars[] 269#[L841-2]true [455] L841-2-->L841-3: Formula: (= (select (select |v_#memory_int_33| |v_~#mutex~0.base_3|) (+ |v_~#mutex~0.offset_3| 4)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_33|, ~#mutex~0.base=|v_~#mutex~0.base_3|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_3|, #memory_int=|v_#memory_int_33|, ~#mutex~0.base=|v_~#mutex~0.base_3|} AuxVars[] AssignedVars[] 271#[L841-3]true [475] L841-3-->L841-4: Formula: (= (select (select |v_#memory_int_34| |v_~#mutex~0.base_4|) (+ |v_~#mutex~0.offset_4| 8)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_34|, ~#mutex~0.base=|v_~#mutex~0.base_4|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_4|, #memory_int=|v_#memory_int_34|, ~#mutex~0.base=|v_~#mutex~0.base_4|} AuxVars[] AssignedVars[] 273#[L841-4]true [520] L841-4-->L841-5: Formula: (= (select (select |v_#memory_int_35| |v_~#mutex~0.base_5|) (+ |v_~#mutex~0.offset_5| 12)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_35|, ~#mutex~0.base=|v_~#mutex~0.base_5|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_5|, #memory_int=|v_#memory_int_35|, ~#mutex~0.base=|v_~#mutex~0.base_5|} AuxVars[] AssignedVars[] 275#[L841-5]true [528] L841-5-->L841-6: Formula: (= (select (select |v_#memory_int_36| |v_~#mutex~0.base_6|) (+ |v_~#mutex~0.offset_6| 16)) 0) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_36|, ~#mutex~0.base=|v_~#mutex~0.base_6|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_6|, #memory_int=|v_#memory_int_36|, ~#mutex~0.base=|v_~#mutex~0.base_6|} AuxVars[] AssignedVars[] 277#[L841-6]true [421] L841-6-->L-1-1: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res#1=|v_ULTIMATE.start_main_#res#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res#1] 279#[L-1-1]true [574] L-1-1-->L1072: Formula: true InVars {} OutVars{ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_5|, ULTIMATE.start_main_~status~0#1=|v_ULTIMATE.start_main_~status~0#1_3|, ULTIMATE.start_main_#t~nondet31#1=|v_ULTIMATE.start_main_#t~nondet31#1_2|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_4|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_2|, ULTIMATE.start_main_#t~mem36#1=|v_ULTIMATE.start_main_#t~mem36#1_4|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_2|, ULTIMATE.start_main_#t~ret34#1.base=|v_ULTIMATE.start_main_#t~ret34#1.base_4|, ULTIMATE.start_main_#t~nondet33#1=|v_ULTIMATE.start_main_#t~nondet33#1_2|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_4|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_5|, ULTIMATE.start_main_#t~mem35#1=|v_ULTIMATE.start_main_#t~mem35#1_4|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_5|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_5|, ULTIMATE.start_main_#t~ret34#1.offset=|v_ULTIMATE.start_main_#t~ret34#1.offset_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#reader~0#1.offset, ULTIMATE.start_main_~status~0#1, ULTIMATE.start_main_#t~nondet31#1, ULTIMATE.start_main_~#r~3#1.offset, ULTIMATE.start_main_#t~pre32#1, ULTIMATE.start_main_#t~mem36#1, ULTIMATE.start_main_#t~pre30#1, ULTIMATE.start_main_#t~ret34#1.base, ULTIMATE.start_main_#t~nondet33#1, ULTIMATE.start_main_~#r~3#1.base, ULTIMATE.start_main_~#reader~0#1.base, ULTIMATE.start_main_#t~mem35#1, ULTIMATE.start_main_~#writer~0#1.base, ULTIMATE.start_main_~#writer~0#1.offset, ULTIMATE.start_main_#t~ret34#1.offset] 281#[L1072]true [526] L1072-->L1072-1: Formula: (and (= (store |v_#length_19| |v_ULTIMATE.start_main_~#reader~0#1.base_6| 4) |v_#length_18|) (< |v_#StackHeapBarrier_3| |v_ULTIMATE.start_main_~#reader~0#1.base_6|) (= |v_ULTIMATE.start_main_~#reader~0#1.offset_6| 0) (= (select |v_#valid_28| |v_ULTIMATE.start_main_~#reader~0#1.base_6|) 0) (not (= 0 |v_ULTIMATE.start_main_~#reader~0#1.base_6|)) (= (store |v_#valid_28| |v_ULTIMATE.start_main_~#reader~0#1.base_6| 1) |v_#valid_27|)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_19|, #valid=|v_#valid_28|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_3|, #length=|v_#length_18|, ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_6|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_6|, #valid=|v_#valid_27|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#reader~0#1.offset, ULTIMATE.start_main_~#reader~0#1.base, #valid, #length] 283#[L1072-1]true [393] L1072-1-->L1072-2: Formula: (and (< |v_#StackHeapBarrier_4| |v_ULTIMATE.start_main_~#writer~0#1.base_6|) (= (select |v_#valid_30| |v_ULTIMATE.start_main_~#writer~0#1.base_6|) 0) (= |v_ULTIMATE.start_main_~#writer~0#1.offset_6| 0) (= (store |v_#valid_30| |v_ULTIMATE.start_main_~#writer~0#1.base_6| 1) |v_#valid_29|) (= (store |v_#length_21| |v_ULTIMATE.start_main_~#writer~0#1.base_6| 4) |v_#length_20|) (not (= |v_ULTIMATE.start_main_~#writer~0#1.base_6| 0))) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_4|, #length=|v_#length_21|, #valid=|v_#valid_30|} OutVars{ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_6|, #StackHeapBarrier=|v_#StackHeapBarrier_4|, #length=|v_#length_20|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_6|, #valid=|v_#valid_29|} AuxVars[] AssignedVars[#valid, ULTIMATE.start_main_~#writer~0#1.base, #length, ULTIMATE.start_main_~#writer~0#1.offset] 285#[L1072-2]true [450] L1072-2-->L1073: Formula: (and (< |v_#StackHeapBarrier_5| |v_ULTIMATE.start_main_~#r~3#1.base_5|) (not (= |v_ULTIMATE.start_main_~#r~3#1.base_5| 0)) (= (select |v_#valid_32| |v_ULTIMATE.start_main_~#r~3#1.base_5|) 0) (= (store |v_#valid_32| |v_ULTIMATE.start_main_~#r~3#1.base_5| 1) |v_#valid_31|) (= (store |v_#length_23| |v_ULTIMATE.start_main_~#r~3#1.base_5| 24) |v_#length_22|) (= |v_ULTIMATE.start_main_~#r~3#1.offset_5| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_23|, #valid=|v_#valid_32|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_5|, #length=|v_#length_22|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_5|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_5|, #valid=|v_#valid_31|} AuxVars[] AssignedVars[ULTIMATE.start_main_~#r~3#1.base, #valid, #length, ULTIMATE.start_main_~#r~3#1.offset] 287#[L1073]true [494] L1073-->L1074: Formula: (and (= |v_ULTIMATE.start_main_~#r~3#1.offset_6| |v_ULTIMATE.start_ring_init_#in~r#1.offset_1|) (= |v_ULTIMATE.start_ring_init_#in~r#1.base_1| |v_ULTIMATE.start_main_~#r~3#1.base_6|)) InVars {ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_6|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_6|} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_1|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_1|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_6|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_6|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_#in~r#1.offset, ULTIMATE.start_ring_init_#in~r#1.base] 289#[L1074]true [498] L1074-->L822: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_1|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_1|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 291#[L822]true [531] L822-->L823: Formula: (and (= |v_ULTIMATE.start_ring_init_~r#1.offset_2| |v_ULTIMATE.start_ring_init_#in~r#1.offset_2|) (= |v_ULTIMATE.start_ring_init_#in~r#1.base_2| |v_ULTIMATE.start_ring_init_~r#1.base_2|)) InVars {ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_2|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_2|} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_2|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_2|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_2|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 293#[L823]true [469] L823-->L823-1: Formula: (let ((.cse0 (+ |v_ULTIMATE.start_ring_init_~r#1.offset_3| 20))) (and (= (store |v_#memory_int_38| |v_ULTIMATE.start_ring_init_~r#1.base_3| (store (select |v_#memory_int_38| |v_ULTIMATE.start_ring_init_~r#1.base_3|) .cse0 0)) |v_#memory_int_37|) (<= (+ |v_ULTIMATE.start_ring_init_~r#1.offset_3| 24) (select |v_#length_24| |v_ULTIMATE.start_ring_init_~r#1.base_3|)) (<= 0 .cse0) (= (select |v_#valid_33| |v_ULTIMATE.start_ring_init_~r#1.base_3|) 1))) InVars {#memory_int=|v_#memory_int_38|, #length=|v_#length_24|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_3|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_3|, #valid=|v_#valid_33|} OutVars{#memory_int=|v_#memory_int_37|, #length=|v_#length_24|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_3|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_3|, #valid=|v_#valid_33|} AuxVars[] AssignedVars[#memory_int] 295#[L823-1]true [544] L823-1-->L823-2: Formula: (and (= (store |v_#memory_int_40| |v_ULTIMATE.start_ring_init_~r#1.base_4| (store (select |v_#memory_int_40| |v_ULTIMATE.start_ring_init_~r#1.base_4|) |v_ULTIMATE.start_ring_init_~r#1.offset_4| 0)) |v_#memory_int_39|) (= (select |v_#valid_34| |v_ULTIMATE.start_ring_init_~r#1.base_4|) 1) (<= (+ |v_ULTIMATE.start_ring_init_~r#1.offset_4| 4) (select |v_#length_25| |v_ULTIMATE.start_ring_init_~r#1.base_4|)) (<= 0 |v_ULTIMATE.start_ring_init_~r#1.offset_4|)) InVars {#memory_int=|v_#memory_int_40|, #length=|v_#length_25|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_4|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_4|, #valid=|v_#valid_34|} OutVars{#memory_int=|v_#memory_int_39|, #length=|v_#length_25|, ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_4|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_4|, #valid=|v_#valid_34|} AuxVars[] AssignedVars[#memory_int] 297#[L823-2]true [519] L823-2-->L1074-1: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_~r#1.offset=|v_ULTIMATE.start_ring_init_~r#1.offset_5|, ULTIMATE.start_ring_init_~r#1.base=|v_ULTIMATE.start_ring_init_~r#1.base_5|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_~r#1.offset, ULTIMATE.start_ring_init_~r#1.base] 299#[L1074-1]true [492] L1074-1-->L1075: Formula: true InVars {} OutVars{ULTIMATE.start_ring_init_#in~r#1.offset=|v_ULTIMATE.start_ring_init_#in~r#1.offset_3|, ULTIMATE.start_ring_init_#in~r#1.base=|v_ULTIMATE.start_ring_init_#in~r#1.base_3|} AuxVars[] AssignedVars[ULTIMATE.start_ring_init_#in~r#1.offset, ULTIMATE.start_ring_init_#in~r#1.base] 301#[L1075]true [448] L1075-->L1075-1: Formula: (= |v_#pthreadsForks_1| |v_ULTIMATE.start_main_#t~pre30#1_3|) InVars {#pthreadsForks=|v_#pthreadsForks_1|} OutVars{#pthreadsForks=|v_#pthreadsForks_1|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre30#1] 303#[L1075-1]true [582] L1075-1-->L1075-2: Formula: (= (+ 1 |v_#pthreadsForks_3|) |v_#pthreadsForks_2|) InVars {#pthreadsForks=|v_#pthreadsForks_3|} OutVars{#pthreadsForks=|v_#pthreadsForks_2|} AuxVars[] AssignedVars[#pthreadsForks] 305#[L1075-2]true [357] L1075-2-->L1075-3: Formula: (and (= (store |v_#memory_int_42| |v_ULTIMATE.start_main_~#reader~0#1.base_7| (store (select |v_#memory_int_42| |v_ULTIMATE.start_main_~#reader~0#1.base_7|) |v_ULTIMATE.start_main_~#reader~0#1.offset_7| |v_ULTIMATE.start_main_#t~pre30#1_4|)) |v_#memory_int_41|) (<= 0 |v_ULTIMATE.start_main_~#reader~0#1.offset_7|) (= (select |v_#valid_35| |v_ULTIMATE.start_main_~#reader~0#1.base_7|) 1) (<= (+ |v_ULTIMATE.start_main_~#reader~0#1.offset_7| 4) (select |v_#length_26| |v_ULTIMATE.start_main_~#reader~0#1.base_7|))) InVars {ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_7|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_7|, #valid=|v_#valid_35|, #memory_int=|v_#memory_int_42|, #length=|v_#length_26|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_4|} OutVars{ULTIMATE.start_main_~#reader~0#1.offset=|v_ULTIMATE.start_main_~#reader~0#1.offset_7|, ULTIMATE.start_main_~#reader~0#1.base=|v_ULTIMATE.start_main_~#reader~0#1.base_7|, #valid=|v_#valid_35|, #memory_int=|v_#memory_int_41|, #length=|v_#length_26|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_4|} AuxVars[] AssignedVars[#memory_int] 307#[L1075-3]true [731] L1075-3-->$Ultimate##0: Formula: (and (= |v_reader_twoThread1of1ForFork0_#in~arg#1.offset_4| |v_ULTIMATE.start_main_~#r~3#1.offset_9|) (= v_reader_twoThread1of1ForFork0_thidvar1_2 0) (= |v_reader_twoThread1of1ForFork0_#in~arg#1.base_4| |v_ULTIMATE.start_main_~#r~3#1.base_9|) (= v_reader_twoThread1of1ForFork0_thidvar0_2 |v_ULTIMATE.start_main_#t~pre30#1_7|)) InVars {ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_9|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_9|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_7|} OutVars{reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base=|v_reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base_8|, reader_twoThread1of1ForFork0_~val~1#1=|v_reader_twoThread1of1ForFork0_~val~1#1_22|, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base=|v_reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base_8|, reader_twoThread1of1ForFork0_#t~pre25#1=|v_reader_twoThread1of1ForFork0_#t~pre25#1_6|, reader_twoThread1of1ForFork0_thidvar0=v_reader_twoThread1of1ForFork0_thidvar0_2, reader_twoThread1of1ForFork0_ring_dequeue_#res#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#res#1_8|, ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_7|, reader_twoThread1of1ForFork0_#res#1.offset=|v_reader_twoThread1of1ForFork0_#res#1.offset_4|, reader_twoThread1of1ForFork0_~#read~0#1.offset=|v_reader_twoThread1of1ForFork0_~#read~0#1.offset_30|, reader_twoThread1of1ForFork0_~r~2#1.offset=|v_reader_twoThread1of1ForFork0_~r~2#1.offset_8|, reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1_10|, reader_twoThread1of1ForFork0_#t~pre29#1=|v_reader_twoThread1of1ForFork0_#t~pre29#1_6|, reader_twoThread1of1ForFork0_#t~ret23#1=|v_reader_twoThread1of1ForFork0_#t~ret23#1_8|, reader_twoThread1of1ForFork0_#in~arg#1.offset=|v_reader_twoThread1of1ForFork0_#in~arg#1.offset_4|, reader_twoThread1of1ForFork0_~arg#1.offset=|v_reader_twoThread1of1ForFork0_~arg#1.offset_6|, reader_twoThread1of1ForFork0_ring_empty_~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_empty_~r#1.offset_12|, reader_twoThread1of1ForFork0_~i~2#1=|v_reader_twoThread1of1ForFork0_~i~2#1_14|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1_12|, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset_16|, reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1=|v_reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1_12|, reader_twoThread1of1ForFork0_#res#1.base=|v_reader_twoThread1of1ForFork0_#res#1.base_4|, reader_twoThread1of1ForFork0_thidvar1=v_reader_twoThread1of1ForFork0_thidvar1_2, reader_twoThread1of1ForFork0_ring_empty_~r#1.base=|v_reader_twoThread1of1ForFork0_ring_empty_~r#1.base_12|, reader_twoThread1of1ForFork0_#t~ret22#1=|v_reader_twoThread1of1ForFork0_#t~ret22#1_12|, reader_twoThread1of1ForFork0_~i~3#1=|v_reader_twoThread1of1ForFork0_~i~3#1_20|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_9|, reader_twoThread1of1ForFork0_#t~mem27#1=|v_reader_twoThread1of1ForFork0_#t~mem27#1_10|, reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1=|v_reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1_12|, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset=|v_reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset_26|, reader_twoThread1of1ForFork0_~#read~0#1.base=|v_reader_twoThread1of1ForFork0_~#read~0#1.base_32|, reader_twoThread1of1ForFork0_#t~mem24#1=|v_reader_twoThread1of1ForFork0_#t~mem24#1_10|, reader_twoThread1of1ForFork0_#in~arg#1.base=|v_reader_twoThread1of1ForFork0_#in~arg#1.base_4|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_9|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1_12|, reader_twoThread1of1ForFork0_#t~pre26#1=|v_reader_twoThread1of1ForFork0_#t~pre26#1_6|, reader_twoThread1of1ForFork0_ring_empty_#res#1=|v_reader_twoThread1of1ForFork0_ring_empty_#res#1_8|, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1=|v_reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1_12|, reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset_8|, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset=|v_reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset_8|, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base=|v_reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base_16|, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base=|v_reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base_26|, reader_twoThread1of1ForFork0_#t~mem28#1=|v_reader_twoThread1of1ForFork0_#t~mem28#1_10|, reader_twoThread1of1ForFork0_~arg#1.base=|v_reader_twoThread1of1ForFork0_~arg#1.base_6|, reader_twoThread1of1ForFork0_~r~2#1.base=|v_reader_twoThread1of1ForFork0_~r~2#1.base_8|} AuxVars[] AssignedVars[reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.base, reader_twoThread1of1ForFork0_~val~1#1, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.base, reader_twoThread1of1ForFork0_#t~pre25#1, reader_twoThread1of1ForFork0_thidvar0, reader_twoThread1of1ForFork0_ring_dequeue_#res#1, reader_twoThread1of1ForFork0_#res#1.offset, reader_twoThread1of1ForFork0_~#read~0#1.offset, reader_twoThread1of1ForFork0_~r~2#1.offset, reader_twoThread1of1ForFork0_ring_dequeue_~x~0#1, reader_twoThread1of1ForFork0_#t~pre29#1, reader_twoThread1of1ForFork0_#t~ret23#1, reader_twoThread1of1ForFork0_#in~arg#1.offset, reader_twoThread1of1ForFork0_~arg#1.offset, reader_twoThread1of1ForFork0_ring_empty_~r#1.offset, reader_twoThread1of1ForFork0_~i~2#1, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem9#1, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.offset, reader_twoThread1of1ForFork0_ring_empty_#t~mem11#1, reader_twoThread1of1ForFork0_#res#1.base, reader_twoThread1of1ForFork0_thidvar1, reader_twoThread1of1ForFork0_ring_empty_~r#1.base, reader_twoThread1of1ForFork0_#t~ret22#1, reader_twoThread1of1ForFork0_~i~3#1, reader_twoThread1of1ForFork0_#t~mem27#1, reader_twoThread1of1ForFork0_ring_empty_#t~mem12#1, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.offset, reader_twoThread1of1ForFork0_~#read~0#1.base, reader_twoThread1of1ForFork0_#t~mem24#1, reader_twoThread1of1ForFork0_#in~arg#1.base, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem8#1, reader_twoThread1of1ForFork0_#t~pre26#1, reader_twoThread1of1ForFork0_ring_empty_#res#1, reader_twoThread1of1ForFork0_ring_dequeue_#t~mem10#1, reader_twoThread1of1ForFork0_ring_dequeue_#in~r#1.offset, reader_twoThread1of1ForFork0_ring_empty_#in~r#1.offset, reader_twoThread1of1ForFork0_ring_dequeue_~r#1.base, reader_twoThread1of1ForFork0_reach_error_#t~nondet3#1.base, reader_twoThread1of1ForFork0_#t~mem28#1, reader_twoThread1of1ForFork0_~arg#1.base, reader_twoThread1of1ForFork0_~r~2#1.base] 309#[L1075-4, $Ultimate##0]true [553] L1075-4-->L1075-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre30#1=|v_ULTIMATE.start_main_#t~pre30#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre30#1] 311#[$Ultimate##0, L1075-5]true [458] L1075-5-->L1076: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet31#1=|v_ULTIMATE.start_main_#t~nondet31#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet31#1] 313#[L1076, $Ultimate##0]true [462] L1076-->L1076-1: Formula: (= |v_#pthreadsForks_4| |v_ULTIMATE.start_main_#t~pre32#1_3|) InVars {#pthreadsForks=|v_#pthreadsForks_4|} OutVars{#pthreadsForks=|v_#pthreadsForks_4|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre32#1] 315#[$Ultimate##0, L1076-1]true [375] L1076-1-->L1076-2: Formula: (= (+ 1 |v_#pthreadsForks_6|) |v_#pthreadsForks_5|) InVars {#pthreadsForks=|v_#pthreadsForks_6|} OutVars{#pthreadsForks=|v_#pthreadsForks_5|} AuxVars[] AssignedVars[#pthreadsForks] 317#[L1076-2, $Ultimate##0]true [380] L1076-2-->L1076-3: Formula: (and (<= (+ 4 |v_ULTIMATE.start_main_~#writer~0#1.offset_7|) (select |v_#length_27| |v_ULTIMATE.start_main_~#writer~0#1.base_7|)) (= (select |v_#valid_36| |v_ULTIMATE.start_main_~#writer~0#1.base_7|) 1) (<= 0 |v_ULTIMATE.start_main_~#writer~0#1.offset_7|) (= (store |v_#memory_int_44| |v_ULTIMATE.start_main_~#writer~0#1.base_7| (store (select |v_#memory_int_44| |v_ULTIMATE.start_main_~#writer~0#1.base_7|) |v_ULTIMATE.start_main_~#writer~0#1.offset_7| |v_ULTIMATE.start_main_#t~pre32#1_4|)) |v_#memory_int_43|)) InVars {#valid=|v_#valid_36|, #memory_int=|v_#memory_int_44|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_7|, #length=|v_#length_27|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_4|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_7|} OutVars{#valid=|v_#valid_36|, #memory_int=|v_#memory_int_43|, ULTIMATE.start_main_~#writer~0#1.base=|v_ULTIMATE.start_main_~#writer~0#1.base_7|, #length=|v_#length_27|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_4|, ULTIMATE.start_main_~#writer~0#1.offset=|v_ULTIMATE.start_main_~#writer~0#1.offset_7|} AuxVars[] AssignedVars[#memory_int] 319#[$Ultimate##0, L1076-3]true [734] L1076-3-->$Ultimate##0: Formula: (and (= v_writer_fnThread1of1ForFork1_thidvar1_2 0) (= v_writer_fnThread1of1ForFork1_thidvar0_2 |v_ULTIMATE.start_main_#t~pre32#1_7|) (= |v_ULTIMATE.start_main_~#r~3#1.base_11| |v_writer_fnThread1of1ForFork1_#in~arg#1.base_4|) (= v_writer_fnThread1of1ForFork1_thidvar2_2 0) (= |v_ULTIMATE.start_main_~#r~3#1.offset_11| |v_writer_fnThread1of1ForFork1_#in~arg#1.offset_4|)) InVars {ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_11|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_11|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_7|} OutVars{writer_fnThread1of1ForFork1_#t~pre17#1=|v_writer_fnThread1of1ForFork1_#t~pre17#1_6|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1_12|, writer_fnThread1of1ForFork1_~arg#1.offset=|v_writer_fnThread1of1ForFork1_~arg#1.offset_6|, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1_8|, writer_fnThread1of1ForFork1_~i~1#1=|v_writer_fnThread1of1ForFork1_~i~1#1_18|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1_16|, writer_fnThread1of1ForFork1_thidvar2=v_writer_fnThread1of1ForFork1_thidvar2_2, writer_fnThread1of1ForFork1_thidvar0=v_writer_fnThread1of1ForFork1_thidvar0_2, writer_fnThread1of1ForFork1_~r~1#1.offset=|v_writer_fnThread1of1ForFork1_~r~1#1.offset_6|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base_8|, writer_fnThread1of1ForFork1_#t~nondet18#1=|v_writer_fnThread1of1ForFork1_#t~nondet18#1_6|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1_16|, writer_fnThread1of1ForFork1_#res#1.base=|v_writer_fnThread1of1ForFork1_#res#1.base_4|, writer_fnThread1of1ForFork1_~r~1#1.base=|v_writer_fnThread1of1ForFork1_~r~1#1.base_6|, writer_fnThread1of1ForFork1_~arg#1.base=|v_writer_fnThread1of1ForFork1_~arg#1.base_6|, writer_fnThread1of1ForFork1_#res#1.offset=|v_writer_fnThread1of1ForFork1_#res#1.offset_4|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_11|, ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_7|, writer_fnThread1of1ForFork1_#in~arg#1.offset=|v_writer_fnThread1of1ForFork1_#in~arg#1.offset_4|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base_20|, writer_fnThread1of1ForFork1_#in~arg#1.base=|v_writer_fnThread1of1ForFork1_#in~arg#1.base_4|, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset_20|, writer_fnThread1of1ForFork1_ring_enqueue_~x#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_~x#1_10|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_11|, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1=|v_writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1_12|, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset=|v_writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset_8|, writer_fnThread1of1ForFork1_thidvar1=v_writer_fnThread1of1ForFork1_thidvar1_2} AuxVars[] AssignedVars[writer_fnThread1of1ForFork1_#t~pre17#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem5#1, writer_fnThread1of1ForFork1_#res#1.base, writer_fnThread1of1ForFork1_~r~1#1.base, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem7#1, writer_fnThread1of1ForFork1_~arg#1.offset, writer_fnThread1of1ForFork1_~arg#1.base, writer_fnThread1of1ForFork1_#res#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_#in~x#1, writer_fnThread1of1ForFork1_#in~arg#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.base, writer_fnThread1of1ForFork1_#in~arg#1.base, writer_fnThread1of1ForFork1_ring_enqueue_~r#1.offset, writer_fnThread1of1ForFork1_~i~1#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem4#1, writer_fnThread1of1ForFork1_ring_enqueue_~x#1, writer_fnThread1of1ForFork1_ring_enqueue_#t~mem6#1, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.offset, writer_fnThread1of1ForFork1_thidvar2, writer_fnThread1of1ForFork1_thidvar0, writer_fnThread1of1ForFork1_thidvar1, writer_fnThread1of1ForFork1_~r~1#1.offset, writer_fnThread1of1ForFork1_ring_enqueue_#in~r#1.base, writer_fnThread1of1ForFork1_#t~nondet18#1] 321#[$Ultimate##0, L1076-4, $Ultimate##0]true [413] L1076-4-->L1076-5: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~pre32#1=|v_ULTIMATE.start_main_#t~pre32#1_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~pre32#1] 2342#[$Ultimate##0, L1076-5, $Ultimate##0]true [571] L1076-5-->L1077: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet33#1=|v_ULTIMATE.start_main_#t~nondet33#1_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet33#1] 2344#[$Ultimate##0, L1077, $Ultimate##0]true [485] L1077-->L1077-1: Formula: (and (= |v_ULTIMATE.start_main_~#r~3#1.base_7| |v_ULTIMATE.start_writer_fn_#in~arg#1.base_2|) (= |v_ULTIMATE.start_main_~#r~3#1.offset_7| |v_ULTIMATE.start_writer_fn_#in~arg#1.offset_2|)) InVars {ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_7|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_7|} OutVars{ULTIMATE.start_writer_fn_#in~arg#1.offset=|v_ULTIMATE.start_writer_fn_#in~arg#1.offset_2|, ULTIMATE.start_main_~#r~3#1.offset=|v_ULTIMATE.start_main_~#r~3#1.offset_7|, ULTIMATE.start_main_~#r~3#1.base=|v_ULTIMATE.start_main_~#r~3#1.base_7|, ULTIMATE.start_writer_fn_#in~arg#1.base=|v_ULTIMATE.start_writer_fn_#in~arg#1.base_2|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_#in~arg#1.offset, ULTIMATE.start_writer_fn_#in~arg#1.base] 2346#[$Ultimate##0, L1077-1, $Ultimate##0]true [382] L1077-1-->L1077-2: Formula: true InVars {} OutVars{ULTIMATE.start_writer_fn_#res#1.base=|v_ULTIMATE.start_writer_fn_#res#1.base_3|, ULTIMATE.start_writer_fn_#res#1.offset=|v_ULTIMATE.start_writer_fn_#res#1.offset_3|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_#res#1.offset, ULTIMATE.start_writer_fn_#res#1.base] 2348#[L1077-2, $Ultimate##0, $Ultimate##0]true [424] L1077-2-->L840: Formula: true InVars {} OutVars{ULTIMATE.start_writer_fn_#t~nondet18#1=|v_ULTIMATE.start_writer_fn_#t~nondet18#1_2|, ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_6|, ULTIMATE.start_writer_fn_~r~1#1.offset=|v_ULTIMATE.start_writer_fn_~r~1#1.offset_2|, ULTIMATE.start_writer_fn_~r~1#1.base=|v_ULTIMATE.start_writer_fn_~r~1#1.base_2|, ULTIMATE.start_writer_fn_#t~pre17#1=|v_ULTIMATE.start_writer_fn_#t~pre17#1_4|, ULTIMATE.start_writer_fn_~arg#1.base=|v_ULTIMATE.start_writer_fn_~arg#1.base_2|, ULTIMATE.start_writer_fn_~arg#1.offset=|v_ULTIMATE.start_writer_fn_~arg#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_#t~nondet18#1, ULTIMATE.start_writer_fn_~i~1#1, ULTIMATE.start_writer_fn_~r~1#1.offset, ULTIMATE.start_writer_fn_~r~1#1.base, ULTIMATE.start_writer_fn_#t~pre17#1, ULTIMATE.start_writer_fn_~arg#1.base, ULTIMATE.start_writer_fn_~arg#1.offset] 2350#[L840, $Ultimate##0, $Ultimate##0]true [434] L840-->L842: Formula: (and (= |v_ULTIMATE.start_writer_fn_#in~arg#1.base_3| |v_ULTIMATE.start_writer_fn_~arg#1.base_3|) (= |v_ULTIMATE.start_writer_fn_#in~arg#1.offset_3| |v_ULTIMATE.start_writer_fn_~arg#1.offset_3|)) InVars {ULTIMATE.start_writer_fn_#in~arg#1.base=|v_ULTIMATE.start_writer_fn_#in~arg#1.base_3|, ULTIMATE.start_writer_fn_#in~arg#1.offset=|v_ULTIMATE.start_writer_fn_#in~arg#1.offset_3|} OutVars{ULTIMATE.start_writer_fn_#in~arg#1.offset=|v_ULTIMATE.start_writer_fn_#in~arg#1.offset_3|, ULTIMATE.start_writer_fn_~arg#1.base=|v_ULTIMATE.start_writer_fn_~arg#1.base_3|, ULTIMATE.start_writer_fn_#in~arg#1.base=|v_ULTIMATE.start_writer_fn_#in~arg#1.base_3|, ULTIMATE.start_writer_fn_~arg#1.offset=|v_ULTIMATE.start_writer_fn_~arg#1.offset_3|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_~arg#1.base, ULTIMATE.start_writer_fn_~arg#1.offset] 2352#[L842, $Ultimate##0, $Ultimate##0]true [390] L842-->L843: Formula: (and (= |v_ULTIMATE.start_writer_fn_~r~1#1.base_3| |v_ULTIMATE.start_writer_fn_~arg#1.base_4|) (= |v_ULTIMATE.start_writer_fn_~r~1#1.offset_3| |v_ULTIMATE.start_writer_fn_~arg#1.offset_4|)) InVars {ULTIMATE.start_writer_fn_~arg#1.base=|v_ULTIMATE.start_writer_fn_~arg#1.base_4|, ULTIMATE.start_writer_fn_~arg#1.offset=|v_ULTIMATE.start_writer_fn_~arg#1.offset_4|} OutVars{ULTIMATE.start_writer_fn_~r~1#1.offset=|v_ULTIMATE.start_writer_fn_~r~1#1.offset_3|, ULTIMATE.start_writer_fn_~arg#1.base=|v_ULTIMATE.start_writer_fn_~arg#1.base_4|, ULTIMATE.start_writer_fn_~r~1#1.base=|v_ULTIMATE.start_writer_fn_~r~1#1.base_3|, ULTIMATE.start_writer_fn_~arg#1.offset=|v_ULTIMATE.start_writer_fn_~arg#1.offset_4|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_~r~1#1.offset, ULTIMATE.start_writer_fn_~r~1#1.base] 2354#[L843, $Ultimate##0, $Ultimate##0]true [404] L843-->L843-6: Formula: (= |v_ULTIMATE.start_writer_fn_~i~1#1_7| 0) InVars {} OutVars{ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_7|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_~i~1#1] 2356#[L843-6, $Ultimate##0, $Ultimate##0]true [345] L843-6-->L844: Formula: (< |v_ULTIMATE.start_writer_fn_~i~1#1_9| 8) InVars {ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_9|} OutVars{ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_9|} AuxVars[] AssignedVars[] 2358#[$Ultimate##0, L844, $Ultimate##0]true [406] L844-->L844-1: Formula: (let ((.cse0 (select |v_#pthreadsMutex_2| |v_~#mutex~0.base_7|))) (and (= |v_ULTIMATE.start_writer_fn_#t~nondet18#1_3| 0) (= |v_#pthreadsMutex_1| (store |v_#pthreadsMutex_2| |v_~#mutex~0.base_7| (store .cse0 |v_~#mutex~0.offset_7| 1))) (= (select .cse0 |v_~#mutex~0.offset_7|) 0))) InVars {~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_2|, ~#mutex~0.base=|v_~#mutex~0.base_7|} OutVars{~#mutex~0.offset=|v_~#mutex~0.offset_7|, #pthreadsMutex=|v_#pthreadsMutex_1|, ULTIMATE.start_writer_fn_#t~nondet18#1=|v_ULTIMATE.start_writer_fn_#t~nondet18#1_3|, ~#mutex~0.base=|v_~#mutex~0.base_7|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_writer_fn_#t~nondet18#1] 2360#[$Ultimate##0, $Ultimate##0, L844-1]true [394] L844-1-->L845: Formula: true InVars {} OutVars{ULTIMATE.start_writer_fn_#t~nondet18#1=|v_ULTIMATE.start_writer_fn_#t~nondet18#1_4|} AuxVars[] AssignedVars[ULTIMATE.start_writer_fn_#t~nondet18#1] 2362#[$Ultimate##0, $Ultimate##0, L845]true [453] L845-->L845-1: Formula: (and (= |v_ULTIMATE.start_ring_enqueue_#in~x#1_1| (+ |v_ULTIMATE.start_writer_fn_~i~1#1_10| 1)) (= |v_ULTIMATE.start_ring_enqueue_#in~r#1.offset_1| |v_ULTIMATE.start_writer_fn_~r~1#1.offset_4|) (= |v_ULTIMATE.start_ring_enqueue_#in~r#1.base_1| |v_ULTIMATE.start_writer_fn_~r~1#1.base_4|)) InVars {ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_10|, ULTIMATE.start_writer_fn_~r~1#1.offset=|v_ULTIMATE.start_writer_fn_~r~1#1.offset_4|, ULTIMATE.start_writer_fn_~r~1#1.base=|v_ULTIMATE.start_writer_fn_~r~1#1.base_4|} OutVars{ULTIMATE.start_ring_enqueue_#in~x#1=|v_ULTIMATE.start_ring_enqueue_#in~x#1_1|, ULTIMATE.start_writer_fn_~i~1#1=|v_ULTIMATE.start_writer_fn_~i~1#1_10|, ULTIMATE.start_ring_enqueue_#in~r#1.base=|v_ULTIMATE.start_ring_enqueue_#in~r#1.base_1|, ULTIMATE.start_writer_fn_~r~1#1.offset=|v_ULTIMATE.start_writer_fn_~r~1#1.offset_4|, ULTIMATE.start_writer_fn_~r~1#1.base=|v_ULTIMATE.start_writer_fn_~r~1#1.base_4|, ULTIMATE.start_ring_enqueue_#in~r#1.offset=|v_ULTIMATE.start_ring_enqueue_#in~r#1.offset_1|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#in~x#1, ULTIMATE.start_ring_enqueue_#in~r#1.base, ULTIMATE.start_ring_enqueue_#in~r#1.offset] 2364#[L845-1, $Ultimate##0, $Ultimate##0]true [479] L845-1-->L809: Formula: true InVars {} OutVars{ULTIMATE.start_ring_enqueue_#t~mem7#1=|v_ULTIMATE.start_ring_enqueue_#t~mem7#1_1|, ULTIMATE.start_ring_enqueue_~x#1=|v_ULTIMATE.start_ring_enqueue_~x#1_1|, ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_1|, ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_1|, ULTIMATE.start_ring_enqueue_#t~mem6#1=|v_ULTIMATE.start_ring_enqueue_#t~mem6#1_1|, ULTIMATE.start_ring_enqueue_#t~mem4#1=|v_ULTIMATE.start_ring_enqueue_#t~mem4#1_1|, ULTIMATE.start_ring_enqueue_#t~mem5#1=|v_ULTIMATE.start_ring_enqueue_#t~mem5#1_1|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#t~mem7#1, ULTIMATE.start_ring_enqueue_~x#1, ULTIMATE.start_ring_enqueue_~r#1.offset, ULTIMATE.start_ring_enqueue_~r#1.base, ULTIMATE.start_ring_enqueue_#t~mem6#1, ULTIMATE.start_ring_enqueue_#t~mem4#1, ULTIMATE.start_ring_enqueue_#t~mem5#1] 2366#[L809, $Ultimate##0, $Ultimate##0]true [570] L809-->L809-1: Formula: (and (= |v_ULTIMATE.start_ring_enqueue_#in~r#1.offset_2| |v_ULTIMATE.start_ring_enqueue_~r#1.offset_2|) (= |v_ULTIMATE.start_ring_enqueue_#in~r#1.base_2| |v_ULTIMATE.start_ring_enqueue_~r#1.base_2|)) InVars {ULTIMATE.start_ring_enqueue_#in~r#1.offset=|v_ULTIMATE.start_ring_enqueue_#in~r#1.offset_2|, ULTIMATE.start_ring_enqueue_#in~r#1.base=|v_ULTIMATE.start_ring_enqueue_#in~r#1.base_2|} OutVars{ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_2|, ULTIMATE.start_ring_enqueue_#in~r#1.offset=|v_ULTIMATE.start_ring_enqueue_#in~r#1.offset_2|, ULTIMATE.start_ring_enqueue_#in~r#1.base=|v_ULTIMATE.start_ring_enqueue_#in~r#1.base_2|, ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_~r#1.offset, ULTIMATE.start_ring_enqueue_~r#1.base] 2368#[L809-1, $Ultimate##0, $Ultimate##0]true [555] L809-1-->L810-8: Formula: (= |v_ULTIMATE.start_ring_enqueue_#in~x#1_2| |v_ULTIMATE.start_ring_enqueue_~x#1_2|) InVars {ULTIMATE.start_ring_enqueue_#in~x#1=|v_ULTIMATE.start_ring_enqueue_#in~x#1_2|} OutVars{ULTIMATE.start_ring_enqueue_~x#1=|v_ULTIMATE.start_ring_enqueue_~x#1_2|, ULTIMATE.start_ring_enqueue_#in~x#1=|v_ULTIMATE.start_ring_enqueue_#in~x#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_~x#1] 2370#[$Ultimate##0, $Ultimate##0, L810-8]true [2024-02-09 23:30:14,194 INFO L750 eck$LassoCheckResult]: Loop: 2370#[$Ultimate##0, $Ultimate##0, L810-8]true [430] L810-8-->L810-1: Formula: (let ((.cse0 (+ 20 |v_ULTIMATE.start_ring_enqueue_~r#1.offset_3|))) (and (<= (+ |v_ULTIMATE.start_ring_enqueue_~r#1.offset_3| 24) (select |v_#length_28| |v_ULTIMATE.start_ring_enqueue_~r#1.base_3|)) (= (select |v_#valid_37| |v_ULTIMATE.start_ring_enqueue_~r#1.base_3|) 1) (= |v_ULTIMATE.start_ring_enqueue_#t~mem4#1_2| (select (select |v_#memory_int_45| |v_ULTIMATE.start_ring_enqueue_~r#1.base_3|) .cse0)) (<= 0 .cse0))) InVars {#memory_int=|v_#memory_int_45|, ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_3|, #length=|v_#length_28|, ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_3|, #valid=|v_#valid_37|} OutVars{ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_3|, #valid=|v_#valid_37|, #memory_int=|v_#memory_int_45|, ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_3|, #length=|v_#length_28|, ULTIMATE.start_ring_enqueue_#t~mem4#1=|v_ULTIMATE.start_ring_enqueue_#t~mem4#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#t~mem4#1] 2373#[$Ultimate##0, L810-1, $Ultimate##0]true [452] L810-1-->L810-2: Formula: (and (<= 0 |v_ULTIMATE.start_ring_enqueue_~r#1.offset_4|) (= (select |v_#valid_38| |v_ULTIMATE.start_ring_enqueue_~r#1.base_4|) 1) (<= (+ 4 |v_ULTIMATE.start_ring_enqueue_~r#1.offset_4|) (select |v_#length_29| |v_ULTIMATE.start_ring_enqueue_~r#1.base_4|)) (= |v_ULTIMATE.start_ring_enqueue_#t~mem5#1_2| (select (select |v_#memory_int_46| |v_ULTIMATE.start_ring_enqueue_~r#1.base_4|) |v_ULTIMATE.start_ring_enqueue_~r#1.offset_4|))) InVars {#memory_int=|v_#memory_int_46|, ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_4|, #length=|v_#length_29|, ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_4|, #valid=|v_#valid_38|} OutVars{ULTIMATE.start_ring_enqueue_~r#1.offset=|v_ULTIMATE.start_ring_enqueue_~r#1.offset_4|, #valid=|v_#valid_38|, #memory_int=|v_#memory_int_46|, ULTIMATE.start_ring_enqueue_~r#1.base=|v_ULTIMATE.start_ring_enqueue_~r#1.base_4|, #length=|v_#length_29|, ULTIMATE.start_ring_enqueue_#t~mem5#1=|v_ULTIMATE.start_ring_enqueue_#t~mem5#1_2|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#t~mem5#1] 2375#[L810-2, $Ultimate##0, $Ultimate##0]true [366] L810-2-->L810-6: Formula: (= |v_ULTIMATE.start_ring_enqueue_#t~mem5#1_5| (let ((.cse1 (+ |v_ULTIMATE.start_ring_enqueue_#t~mem4#1_5| 1))) (let ((.cse0 (mod .cse1 4))) (ite (and (not (= .cse0 0)) (< .cse1 0)) (+ (- 4) .cse0) .cse0)))) InVars {ULTIMATE.start_ring_enqueue_#t~mem4#1=|v_ULTIMATE.start_ring_enqueue_#t~mem4#1_5|, ULTIMATE.start_ring_enqueue_#t~mem5#1=|v_ULTIMATE.start_ring_enqueue_#t~mem5#1_5|} OutVars{ULTIMATE.start_ring_enqueue_#t~mem4#1=|v_ULTIMATE.start_ring_enqueue_#t~mem4#1_5|, ULTIMATE.start_ring_enqueue_#t~mem5#1=|v_ULTIMATE.start_ring_enqueue_#t~mem5#1_5|} AuxVars[] AssignedVars[] 2377#[L810-6, $Ultimate##0, $Ultimate##0]true [507] L810-6-->L810-7: Formula: true InVars {} OutVars{ULTIMATE.start_ring_enqueue_#t~mem4#1=|v_ULTIMATE.start_ring_enqueue_#t~mem4#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#t~mem4#1] 2379#[L810-7, $Ultimate##0, $Ultimate##0]true [482] L810-7-->L810-8: Formula: true InVars {} OutVars{ULTIMATE.start_ring_enqueue_#t~mem5#1=|v_ULTIMATE.start_ring_enqueue_#t~mem5#1_6|} AuxVars[] AssignedVars[ULTIMATE.start_ring_enqueue_#t~mem5#1] 2370#[$Ultimate##0, $Ultimate##0, L810-8]true [2024-02-09 23:30:14,195 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:30:14,195 INFO L85 PathProgramCache]: Analyzing trace with hash -1511065253, now seen corresponding path program 1 times [2024-02-09 23:30:14,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:30:14,195 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174564973] [2024-02-09 23:30:14,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:30:14,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:30:14,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:30:14,230 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-09 23:30:14,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:30:14,249 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-09 23:30:14,250 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:30:14,250 INFO L85 PathProgramCache]: Analyzing trace with hash 439576638, now seen corresponding path program 1 times [2024-02-09 23:30:14,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:30:14,250 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [304480769] [2024-02-09 23:30:14,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:30:14,250 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:30:14,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:30:14,254 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-09 23:30:14,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-09 23:30:14,257 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-09 23:30:14,257 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2024-02-09 23:30:14,257 INFO L85 PathProgramCache]: Analyzing trace with hash 2035037988, now seen corresponding path program 1 times [2024-02-09 23:30:14,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-09 23:30:14,258 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [220688897] [2024-02-09 23:30:14,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-09 23:30:14,258 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-09 23:30:14,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-09 23:30:14,971 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-09 23:30:14,972 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-09 23:30:14,973 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [220688897] [2024-02-09 23:30:14,973 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [220688897] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-09 23:30:14,974 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-09 23:30:14,974 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2024-02-09 23:30:14,974 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1655878012] [2024-02-09 23:30:14,975 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-09 23:30:15,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-09 23:30:15,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-02-09 23:30:15,046 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=264, Unknown=0, NotChecked=0, Total=306 Received shutdown request... [2024-02-09 23:33:13,957 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 09.02 11:33:13 BoogieIcfgContainer [2024-02-09 23:33:13,957 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2024-02-09 23:33:13,958 INFO L158 Benchmark]: Toolchain (without parser) took 247200.29ms. Allocated memory was 195.0MB in the beginning and 7.9GB in the end (delta: 7.7GB). Free memory was 118.3MB in the beginning and 6.5GB in the end (delta: -6.4GB). Peak memory consumption was 1.3GB. Max. memory is 8.0GB. [2024-02-09 23:33:13,959 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 195.0MB. Free memory was 167.7MB in the beginning and 167.6MB in the end (delta: 142.3kB). There was no memory consumed. Max. memory is 8.0GB. [2024-02-09 23:33:13,959 INFO L158 Benchmark]: CACSL2BoogieTranslator took 672.17ms. Allocated memory is still 195.0MB. Free memory was 118.1MB in the beginning and 143.5MB in the end (delta: -25.4MB). Peak memory consumption was 15.3MB. Max. memory is 8.0GB. [2024-02-09 23:33:13,960 INFO L158 Benchmark]: Boogie Procedure Inliner took 80.56ms. Allocated memory is still 195.0MB. Free memory was 143.5MB in the beginning and 140.4MB in the end (delta: 3.1MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2024-02-09 23:33:13,960 INFO L158 Benchmark]: Boogie Preprocessor took 97.09ms. Allocated memory was 195.0MB in the beginning and 314.6MB in the end (delta: 119.5MB). Free memory was 140.4MB in the beginning and 286.1MB in the end (delta: -145.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2024-02-09 23:33:13,961 INFO L158 Benchmark]: RCFGBuilder took 607.05ms. Allocated memory is still 314.6MB. Free memory was 285.5MB in the beginning and 259.9MB in the end (delta: 25.7MB). Peak memory consumption was 25.2MB. Max. memory is 8.0GB. [2024-02-09 23:33:13,962 INFO L158 Benchmark]: BuchiAutomizer took 245739.48ms. Allocated memory was 314.6MB in the beginning and 7.9GB in the end (delta: 7.6GB). Free memory was 259.9MB in the beginning and 6.5GB in the end (delta: -6.3GB). Peak memory consumption was 1.3GB. Max. memory is 8.0GB. [2024-02-09 23:33:13,968 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks [2024-02-09 23:33:13,972 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Timeout while monitored process is still running, waiting 1000 ms for graceful end Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 195.0MB. Free memory was 167.7MB in the beginning and 167.6MB in the end (delta: 142.3kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 672.17ms. Allocated memory is still 195.0MB. Free memory was 118.1MB in the beginning and 143.5MB in the end (delta: -25.4MB). Peak memory consumption was 15.3MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 80.56ms. Allocated memory is still 195.0MB. Free memory was 143.5MB in the beginning and 140.4MB in the end (delta: 3.1MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 97.09ms. Allocated memory was 195.0MB in the beginning and 314.6MB in the end (delta: 119.5MB). Free memory was 140.4MB in the beginning and 286.1MB in the end (delta: -145.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 607.05ms. Allocated memory is still 314.6MB. Free memory was 285.5MB in the beginning and 259.9MB in the end (delta: 25.7MB). Peak memory consumption was 25.2MB. Max. memory is 8.0GB. * BuchiAutomizer took 245739.48ms. Allocated memory was 314.6MB in the beginning and 7.9GB in the end (delta: 7.6GB). Free memory was 259.9MB in the beginning and 6.5GB in the end (delta: -6.3GB). Peak memory consumption was 1.3GB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Decomposition not yet finished - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 245.6s and 2 iterations. TraceHistogramMax:0. Analysis of lassos took 2.4s. Construction of modules took 13.5s. Büchi inclusion checks took 229.3s. Highest rank in rank-based complementation 0. Minimization of det autom 0. Minimization of nondet autom 0. Automata minimization No data available. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [0, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 16776 SdHoareTripleChecker+Valid, 15.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 16776 mSDsluCounter, 62391 SdHoareTripleChecker+Invalid, 13.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 59745 mSDsCounter, 183 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 25690 IncrementalHoareTripleChecker+Invalid, 25873 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 183 mSolverCounterUnsat, 2646 mSDtfsCounter, 25690 mSolverCounterSat, 0.3s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc2 concLT0 SILN0 SILU0 SILI0 SILT0 lasso0 LassoPreprocessingBenchmarks: LassoTerminationAnalysisBenchmarks: not availableLassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.1s - TimeoutResult: Timeout (de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction) Buchi Automizer is unable to decide termination: Timeout while PredicateUnifier was unifying predicates,while SimplifyDDA2 was simplifying a ∧-27-1 term,while SimplifyDDA2 was simplifying 27 xjuncts wrt. a ATOM-1 context. RESULT: Ultimate could not prove your program: Timeout Completed graceful shutdown