./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/unreach-call.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 84cfde4a Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash e61e21f5d7e6e4d5f8f06eb5177c457338190644d81fa4e1ee7a1000b79020da --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-11 14:15:47,543 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-11 14:15:47,602 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-10-11 14:15:47,605 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-11 14:15:47,605 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-11 14:15:47,633 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-11 14:15:47,634 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-11 14:15:47,634 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-11 14:15:47,635 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-11 14:15:47,636 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-11 14:15:47,636 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-11 14:15:47,636 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-11 14:15:47,636 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-11 14:15:47,637 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-11 14:15:47,638 INFO L153 SettingsManager]: * Use SBE=true [2024-10-11 14:15:47,638 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-11 14:15:47,639 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-11 14:15:47,639 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-11 14:15:47,639 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-11 14:15:47,639 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-11 14:15:47,639 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-11 14:15:47,642 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-11 14:15:47,642 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-11 14:15:47,642 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-11 14:15:47,642 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-11 14:15:47,643 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-11 14:15:47,643 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 14:15:47,644 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-11 14:15:47,644 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-11 14:15:47,645 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-11 14:15:47,646 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-11 14:15:47,646 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> e61e21f5d7e6e4d5f8f06eb5177c457338190644d81fa4e1ee7a1000b79020da [2024-10-11 14:15:47,845 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-11 14:15:47,867 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-11 14:15:47,869 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-11 14:15:47,870 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-11 14:15:47,870 INFO L274 PluginConnector]: CDTParser initialized [2024-10-11 14:15:47,871 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i [2024-10-11 14:15:49,035 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-11 14:15:49,242 INFO L384 CDTParser]: Found 1 translation units. [2024-10-11 14:15:49,243 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i [2024-10-11 14:15:49,256 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/8b65ff077/eca105eb0be949f9970b64a21e9ba20f/FLAGa4c5989f9 [2024-10-11 14:15:49,608 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/8b65ff077/eca105eb0be949f9970b64a21e9ba20f [2024-10-11 14:15:49,610 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-11 14:15:49,611 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-11 14:15:49,613 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-11 14:15:49,613 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-11 14:15:49,617 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-11 14:15:49,617 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 02:15:49" (1/1) ... [2024-10-11 14:15:49,618 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@291a58e5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:49, skipping insertion in model container [2024-10-11 14:15:49,618 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 02:15:49" (1/1) ... [2024-10-11 14:15:49,655 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-11 14:15:49,804 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i[949,962] [2024-10-11 14:15:49,977 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 14:15:49,986 INFO L200 MainTranslator]: Completed pre-run [2024-10-11 14:15:49,996 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix033_tso.oepc.i[949,962] [2024-10-11 14:15:50,035 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 14:15:50,094 INFO L204 MainTranslator]: Completed translation [2024-10-11 14:15:50,099 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50 WrapperNode [2024-10-11 14:15:50,099 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-11 14:15:50,100 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-11 14:15:50,101 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-11 14:15:50,101 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-11 14:15:50,107 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,131 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,186 INFO L138 Inliner]: procedures = 175, calls = 50, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 144 [2024-10-11 14:15:50,190 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-11 14:15:50,191 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-11 14:15:50,191 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-11 14:15:50,191 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-11 14:15:50,200 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,201 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,208 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,225 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-10-11 14:15:50,228 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,228 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,233 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,237 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,238 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,239 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,242 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-11 14:15:50,242 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-11 14:15:50,243 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-11 14:15:50,243 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-11 14:15:50,243 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (1/1) ... [2024-10-11 14:15:50,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 14:15:50,264 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 14:15:50,277 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-10-11 14:15:50,279 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-10-11 14:15:50,310 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-10-11 14:15:50,311 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-11 14:15:50,314 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-10-11 14:15:50,314 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-10-11 14:15:50,314 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-10-11 14:15:50,314 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-10-11 14:15:50,314 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-10-11 14:15:50,314 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-10-11 14:15:50,314 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-11 14:15:50,314 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-10-11 14:15:50,315 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-11 14:15:50,315 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-11 14:15:50,320 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-10-11 14:15:50,434 INFO L238 CfgBuilder]: Building ICFG [2024-10-11 14:15:50,436 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-11 14:15:50,663 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-10-11 14:15:50,663 INFO L287 CfgBuilder]: Performing block encoding [2024-10-11 14:15:50,808 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-11 14:15:50,809 INFO L314 CfgBuilder]: Removed 0 assume(true) statements. [2024-10-11 14:15:50,809 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:15:50 BoogieIcfgContainer [2024-10-11 14:15:50,809 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-11 14:15:50,812 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-11 14:15:50,812 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-11 14:15:50,814 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-11 14:15:50,814 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.10 02:15:49" (1/3) ... [2024-10-11 14:15:50,815 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54b9dabc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 02:15:50, skipping insertion in model container [2024-10-11 14:15:50,816 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:15:50" (2/3) ... [2024-10-11 14:15:50,816 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54b9dabc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 02:15:50, skipping insertion in model container [2024-10-11 14:15:50,816 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:15:50" (3/3) ... [2024-10-11 14:15:50,817 INFO L112 eAbstractionObserver]: Analyzing ICFG mix033_tso.oepc.i [2024-10-11 14:15:50,829 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-11 14:15:50,829 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-10-11 14:15:50,829 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-10-11 14:15:50,860 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-10-11 14:15:50,889 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 52 places, 43 transitions, 98 flow [2024-10-11 14:15:50,913 INFO L124 PetriNetUnfolderBase]: 1/40 cut-off events. [2024-10-11 14:15:50,914 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 14:15:50,917 INFO L83 FinitePrefix]: Finished finitePrefix Result has 50 conditions, 40 events. 1/40 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 76 event pairs, 0 based on Foata normal form. 0/37 useless extension candidates. Maximal degree in co-relation 42. Up to 2 conditions per place. [2024-10-11 14:15:50,919 INFO L82 GeneralOperation]: Start removeDead. Operand has 52 places, 43 transitions, 98 flow [2024-10-11 14:15:50,921 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 49 places, 40 transitions, 89 flow [2024-10-11 14:15:50,926 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 14:15:50,931 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@3957e445, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 14:15:50,931 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2024-10-11 14:15:50,935 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-10-11 14:15:50,935 INFO L124 PetriNetUnfolderBase]: 0/11 cut-off events. [2024-10-11 14:15:50,935 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 14:15:50,936 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:50,936 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2024-10-11 14:15:50,936 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:50,942 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:50,942 INFO L85 PathProgramCache]: Analyzing trace with hash -1882567940, now seen corresponding path program 1 times [2024-10-11 14:15:50,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:50,949 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [780351591] [2024-10-11 14:15:50,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:50,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:51,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:51,318 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:51,319 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:51,319 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [780351591] [2024-10-11 14:15:51,319 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [780351591] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:51,319 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:51,319 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-10-11 14:15:51,321 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1154447360] [2024-10-11 14:15:51,321 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:51,327 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-10-11 14:15:51,331 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:51,350 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-10-11 14:15:51,351 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-10-11 14:15:51,352 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 22 out of 43 [2024-10-11 14:15:51,355 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 49 places, 40 transitions, 89 flow. Second operand has 3 states, 3 states have (on average 23.666666666666668) internal successors, (71), 3 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:51,356 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:51,356 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 22 of 43 [2024-10-11 14:15:51,356 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:51,616 INFO L124 PetriNetUnfolderBase]: 528/1148 cut-off events. [2024-10-11 14:15:51,616 INFO L125 PetriNetUnfolderBase]: For 9/9 co-relation queries the response was YES. [2024-10-11 14:15:51,621 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1996 conditions, 1148 events. 528/1148 cut-off events. For 9/9 co-relation queries the response was YES. Maximal size of possible extension queue 88. Compared 7733 event pairs, 84 based on Foata normal form. 36/1148 useless extension candidates. Maximal degree in co-relation 1985. Up to 652 conditions per place. [2024-10-11 14:15:51,628 INFO L140 encePairwiseOnDemand]: 39/43 looper letters, 27 selfloop transitions, 2 changer transitions 2/50 dead transitions. [2024-10-11 14:15:51,628 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 50 places, 50 transitions, 174 flow [2024-10-11 14:15:51,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-10-11 14:15:51,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-10-11 14:15:51,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 100 transitions. [2024-10-11 14:15:51,638 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7751937984496124 [2024-10-11 14:15:51,639 INFO L175 Difference]: Start difference. First operand has 49 places, 40 transitions, 89 flow. Second operand 3 states and 100 transitions. [2024-10-11 14:15:51,640 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 50 places, 50 transitions, 174 flow [2024-10-11 14:15:51,642 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 50 transitions, 170 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-10-11 14:15:51,644 INFO L231 Difference]: Finished difference. Result has 47 places, 37 transitions, 84 flow [2024-10-11 14:15:51,646 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=82, PETRI_DIFFERENCE_MINUEND_PLACES=45, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=84, PETRI_PLACES=47, PETRI_TRANSITIONS=37} [2024-10-11 14:15:51,649 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, -2 predicate places. [2024-10-11 14:15:51,649 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 37 transitions, 84 flow [2024-10-11 14:15:51,649 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 23.666666666666668) internal successors, (71), 3 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:51,649 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:51,649 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:51,650 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-10-11 14:15:51,650 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:51,651 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:51,651 INFO L85 PathProgramCache]: Analyzing trace with hash 1964049712, now seen corresponding path program 1 times [2024-10-11 14:15:51,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:51,651 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [360828820] [2024-10-11 14:15:51,651 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:51,652 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:51,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:51,912 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:51,912 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:51,912 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [360828820] [2024-10-11 14:15:51,913 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [360828820] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:51,913 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:51,913 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-10-11 14:15:51,913 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [269615154] [2024-10-11 14:15:51,914 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:51,914 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-10-11 14:15:51,915 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:51,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-11 14:15:51,916 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-11 14:15:51,920 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 43 [2024-10-11 14:15:51,920 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 47 places, 37 transitions, 84 flow. Second operand has 4 states, 4 states have (on average 21.0) internal successors, (84), 4 states have internal predecessors, (84), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:51,920 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:51,920 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 43 [2024-10-11 14:15:51,920 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:52,223 INFO L124 PetriNetUnfolderBase]: 1213/2087 cut-off events. [2024-10-11 14:15:52,224 INFO L125 PetriNetUnfolderBase]: For 116/116 co-relation queries the response was YES. [2024-10-11 14:15:52,227 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4099 conditions, 2087 events. 1213/2087 cut-off events. For 116/116 co-relation queries the response was YES. Maximal size of possible extension queue 152. Compared 12994 event pairs, 147 based on Foata normal form. 80/2011 useless extension candidates. Maximal degree in co-relation 4089. Up to 1081 conditions per place. [2024-10-11 14:15:52,233 INFO L140 encePairwiseOnDemand]: 37/43 looper letters, 39 selfloop transitions, 5 changer transitions 1/60 dead transitions. [2024-10-11 14:15:52,234 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 60 transitions, 228 flow [2024-10-11 14:15:52,234 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-11 14:15:52,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-10-11 14:15:52,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 119 transitions. [2024-10-11 14:15:52,235 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6918604651162791 [2024-10-11 14:15:52,235 INFO L175 Difference]: Start difference. First operand has 47 places, 37 transitions, 84 flow. Second operand 4 states and 119 transitions. [2024-10-11 14:15:52,235 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 60 transitions, 228 flow [2024-10-11 14:15:52,236 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 60 transitions, 220 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-10-11 14:15:52,237 INFO L231 Difference]: Finished difference. Result has 49 places, 40 transitions, 114 flow [2024-10-11 14:15:52,238 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=114, PETRI_PLACES=49, PETRI_TRANSITIONS=40} [2024-10-11 14:15:52,238 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 0 predicate places. [2024-10-11 14:15:52,238 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 40 transitions, 114 flow [2024-10-11 14:15:52,239 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 21.0) internal successors, (84), 4 states have internal predecessors, (84), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:52,239 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:52,239 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:52,239 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-10-11 14:15:52,240 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:52,241 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:52,241 INFO L85 PathProgramCache]: Analyzing trace with hash 805030904, now seen corresponding path program 1 times [2024-10-11 14:15:52,242 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:52,242 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1124647527] [2024-10-11 14:15:52,242 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:52,242 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:52,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:52,468 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:52,468 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:52,468 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1124647527] [2024-10-11 14:15:52,468 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1124647527] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:52,468 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:52,468 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-11 14:15:52,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2138699469] [2024-10-11 14:15:52,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:52,469 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-10-11 14:15:52,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:52,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-11 14:15:52,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-10-11 14:15:52,475 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 43 [2024-10-11 14:15:52,475 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 49 places, 40 transitions, 114 flow. Second operand has 5 states, 5 states have (on average 20.8) internal successors, (104), 5 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:52,476 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:52,476 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 43 [2024-10-11 14:15:52,476 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:52,685 INFO L124 PetriNetUnfolderBase]: 809/1415 cut-off events. [2024-10-11 14:15:52,685 INFO L125 PetriNetUnfolderBase]: For 382/382 co-relation queries the response was YES. [2024-10-11 14:15:52,687 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3221 conditions, 1415 events. 809/1415 cut-off events. For 382/382 co-relation queries the response was YES. Maximal size of possible extension queue 99. Compared 7803 event pairs, 73 based on Foata normal form. 68/1388 useless extension candidates. Maximal degree in co-relation 3209. Up to 521 conditions per place. [2024-10-11 14:15:52,690 INFO L140 encePairwiseOnDemand]: 37/43 looper letters, 49 selfloop transitions, 8 changer transitions 1/73 dead transitions. [2024-10-11 14:15:52,691 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 73 transitions, 317 flow [2024-10-11 14:15:52,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-11 14:15:52,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-10-11 14:15:52,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 150 transitions. [2024-10-11 14:15:52,692 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6976744186046512 [2024-10-11 14:15:52,693 INFO L175 Difference]: Start difference. First operand has 49 places, 40 transitions, 114 flow. Second operand 5 states and 150 transitions. [2024-10-11 14:15:52,693 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 73 transitions, 317 flow [2024-10-11 14:15:52,694 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 73 transitions, 307 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-10-11 14:15:52,695 INFO L231 Difference]: Finished difference. Result has 53 places, 43 transitions, 154 flow [2024-10-11 14:15:52,695 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=106, PETRI_DIFFERENCE_MINUEND_PLACES=47, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=40, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=154, PETRI_PLACES=53, PETRI_TRANSITIONS=43} [2024-10-11 14:15:52,696 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 4 predicate places. [2024-10-11 14:15:52,696 INFO L471 AbstractCegarLoop]: Abstraction has has 53 places, 43 transitions, 154 flow [2024-10-11 14:15:52,696 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 20.8) internal successors, (104), 5 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:52,696 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:52,696 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:52,697 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-10-11 14:15:52,697 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:52,697 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:52,697 INFO L85 PathProgramCache]: Analyzing trace with hash 1227202829, now seen corresponding path program 1 times [2024-10-11 14:15:52,697 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:52,698 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1535118492] [2024-10-11 14:15:52,698 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:52,698 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:52,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:52,951 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:52,952 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:52,952 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1535118492] [2024-10-11 14:15:52,952 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1535118492] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:52,953 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:52,953 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 14:15:52,953 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1558580342] [2024-10-11 14:15:52,953 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:52,953 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 14:15:52,954 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:52,954 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 14:15:52,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2024-10-11 14:15:52,966 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 43 [2024-10-11 14:15:52,967 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 53 places, 43 transitions, 154 flow. Second operand has 6 states, 6 states have (on average 20.833333333333332) internal successors, (125), 6 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:52,968 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:52,968 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 43 [2024-10-11 14:15:52,968 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:53,148 INFO L124 PetriNetUnfolderBase]: 477/827 cut-off events. [2024-10-11 14:15:53,149 INFO L125 PetriNetUnfolderBase]: For 677/677 co-relation queries the response was YES. [2024-10-11 14:15:53,150 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2139 conditions, 827 events. 477/827 cut-off events. For 677/677 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 3810 event pairs, 59 based on Foata normal form. 36/809 useless extension candidates. Maximal degree in co-relation 2125. Up to 268 conditions per place. [2024-10-11 14:15:53,153 INFO L140 encePairwiseOnDemand]: 37/43 looper letters, 43 selfloop transitions, 11 changer transitions 1/70 dead transitions. [2024-10-11 14:15:53,153 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 58 places, 70 transitions, 328 flow [2024-10-11 14:15:53,153 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 14:15:53,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 14:15:53,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 165 transitions. [2024-10-11 14:15:53,154 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6395348837209303 [2024-10-11 14:15:53,154 INFO L175 Difference]: Start difference. First operand has 53 places, 43 transitions, 154 flow. Second operand 6 states and 165 transitions. [2024-10-11 14:15:53,154 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 58 places, 70 transitions, 328 flow [2024-10-11 14:15:53,157 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 70 transitions, 303 flow, removed 4 selfloop flow, removed 4 redundant places. [2024-10-11 14:15:53,158 INFO L231 Difference]: Finished difference. Result has 56 places, 43 transitions, 168 flow [2024-10-11 14:15:53,159 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=132, PETRI_DIFFERENCE_MINUEND_PLACES=49, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=168, PETRI_PLACES=56, PETRI_TRANSITIONS=43} [2024-10-11 14:15:53,160 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 7 predicate places. [2024-10-11 14:15:53,160 INFO L471 AbstractCegarLoop]: Abstraction has has 56 places, 43 transitions, 168 flow [2024-10-11 14:15:53,160 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 20.833333333333332) internal successors, (125), 6 states have internal predecessors, (125), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:53,160 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:53,160 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:53,160 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-10-11 14:15:53,161 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:53,161 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:53,161 INFO L85 PathProgramCache]: Analyzing trace with hash 2055600201, now seen corresponding path program 1 times [2024-10-11 14:15:53,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:53,161 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1733282707] [2024-10-11 14:15:53,162 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:53,162 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:53,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:53,662 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:53,663 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:53,663 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1733282707] [2024-10-11 14:15:53,663 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1733282707] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:53,663 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:53,664 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-11 14:15:53,664 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1429911737] [2024-10-11 14:15:53,664 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:53,664 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-10-11 14:15:53,665 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:53,665 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-10-11 14:15:53,665 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2024-10-11 14:15:53,694 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 43 [2024-10-11 14:15:53,695 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 56 places, 43 transitions, 168 flow. Second operand has 7 states, 7 states have (on average 19.0) internal successors, (133), 7 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:53,695 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:53,695 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 43 [2024-10-11 14:15:53,695 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:54,042 INFO L124 PetriNetUnfolderBase]: 961/1735 cut-off events. [2024-10-11 14:15:54,042 INFO L125 PetriNetUnfolderBase]: For 744/764 co-relation queries the response was YES. [2024-10-11 14:15:54,046 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3976 conditions, 1735 events. 961/1735 cut-off events. For 744/764 co-relation queries the response was YES. Maximal size of possible extension queue 89. Compared 9662 event pairs, 184 based on Foata normal form. 8/1702 useless extension candidates. Maximal degree in co-relation 3961. Up to 804 conditions per place. [2024-10-11 14:15:54,050 INFO L140 encePairwiseOnDemand]: 34/43 looper letters, 33 selfloop transitions, 4 changer transitions 35/91 dead transitions. [2024-10-11 14:15:54,050 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 63 places, 91 transitions, 426 flow [2024-10-11 14:15:54,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-10-11 14:15:54,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-10-11 14:15:54,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 201 transitions. [2024-10-11 14:15:54,052 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5843023255813954 [2024-10-11 14:15:54,052 INFO L175 Difference]: Start difference. First operand has 56 places, 43 transitions, 168 flow. Second operand 8 states and 201 transitions. [2024-10-11 14:15:54,052 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 63 places, 91 transitions, 426 flow [2024-10-11 14:15:54,058 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 55 places, 91 transitions, 362 flow, removed 14 selfloop flow, removed 8 redundant places. [2024-10-11 14:15:54,060 INFO L231 Difference]: Finished difference. Result has 61 places, 45 transitions, 146 flow [2024-10-11 14:15:54,060 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=112, PETRI_DIFFERENCE_MINUEND_PLACES=48, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=39, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=146, PETRI_PLACES=61, PETRI_TRANSITIONS=45} [2024-10-11 14:15:54,062 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 12 predicate places. [2024-10-11 14:15:54,062 INFO L471 AbstractCegarLoop]: Abstraction has has 61 places, 45 transitions, 146 flow [2024-10-11 14:15:54,063 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 19.0) internal successors, (133), 7 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:54,063 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:54,063 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:54,064 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-10-11 14:15:54,064 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:54,064 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:54,065 INFO L85 PathProgramCache]: Analyzing trace with hash 1605718775, now seen corresponding path program 2 times [2024-10-11 14:15:54,065 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:54,065 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [154873751] [2024-10-11 14:15:54,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:54,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:54,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:55,529 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:55,530 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:55,530 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [154873751] [2024-10-11 14:15:55,530 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [154873751] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:55,530 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:55,530 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2024-10-11 14:15:55,530 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [219491988] [2024-10-11 14:15:55,531 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:55,531 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2024-10-11 14:15:55,531 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:55,531 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-10-11 14:15:55,532 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2024-10-11 14:15:55,555 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 43 [2024-10-11 14:15:55,555 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 61 places, 45 transitions, 146 flow. Second operand has 11 states, 11 states have (on average 17.90909090909091) internal successors, (197), 11 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:55,555 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:55,555 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 43 [2024-10-11 14:15:55,556 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:56,087 INFO L124 PetriNetUnfolderBase]: 989/1789 cut-off events. [2024-10-11 14:15:56,087 INFO L125 PetriNetUnfolderBase]: For 344/352 co-relation queries the response was YES. [2024-10-11 14:15:56,090 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4020 conditions, 1789 events. 989/1789 cut-off events. For 344/352 co-relation queries the response was YES. Maximal size of possible extension queue 100. Compared 10074 event pairs, 150 based on Foata normal form. 10/1749 useless extension candidates. Maximal degree in co-relation 4003. Up to 453 conditions per place. [2024-10-11 14:15:56,093 INFO L140 encePairwiseOnDemand]: 32/43 looper letters, 49 selfloop transitions, 13 changer transitions 15/96 dead transitions. [2024-10-11 14:15:56,093 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 66 places, 96 transitions, 438 flow [2024-10-11 14:15:56,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-10-11 14:15:56,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2024-10-11 14:15:56,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 238 transitions. [2024-10-11 14:15:56,095 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5534883720930233 [2024-10-11 14:15:56,095 INFO L175 Difference]: Start difference. First operand has 61 places, 45 transitions, 146 flow. Second operand 10 states and 238 transitions. [2024-10-11 14:15:56,095 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 66 places, 96 transitions, 438 flow [2024-10-11 14:15:56,096 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 63 places, 96 transitions, 428 flow, removed 5 selfloop flow, removed 3 redundant places. [2024-10-11 14:15:56,097 INFO L231 Difference]: Finished difference. Result has 67 places, 53 transitions, 213 flow [2024-10-11 14:15:56,097 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=140, PETRI_DIFFERENCE_MINUEND_PLACES=54, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=45, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=10, PETRI_FLOW=213, PETRI_PLACES=67, PETRI_TRANSITIONS=53} [2024-10-11 14:15:56,098 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 18 predicate places. [2024-10-11 14:15:56,099 INFO L471 AbstractCegarLoop]: Abstraction has has 67 places, 53 transitions, 213 flow [2024-10-11 14:15:56,099 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 17.90909090909091) internal successors, (197), 11 states have internal predecessors, (197), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:56,099 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:56,099 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:56,099 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-10-11 14:15:56,100 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:56,100 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:56,100 INFO L85 PathProgramCache]: Analyzing trace with hash 575322857, now seen corresponding path program 3 times [2024-10-11 14:15:56,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:56,100 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [921140001] [2024-10-11 14:15:56,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:56,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:56,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:15:56,442 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:15:56,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:15:56,443 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [921140001] [2024-10-11 14:15:56,443 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [921140001] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:15:56,443 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:15:56,445 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-11 14:15:56,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1011674610] [2024-10-11 14:15:56,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:15:56,445 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-10-11 14:15:56,446 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:15:56,446 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-10-11 14:15:56,446 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2024-10-11 14:15:56,463 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 43 [2024-10-11 14:15:56,464 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 67 places, 53 transitions, 213 flow. Second operand has 7 states, 7 states have (on average 19.0) internal successors, (133), 7 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:56,464 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:15:56,464 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 43 [2024-10-11 14:15:56,464 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:15:56,837 INFO L124 PetriNetUnfolderBase]: 1359/2574 cut-off events. [2024-10-11 14:15:56,837 INFO L125 PetriNetUnfolderBase]: For 1416/1416 co-relation queries the response was YES. [2024-10-11 14:15:56,841 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6516 conditions, 2574 events. 1359/2574 cut-off events. For 1416/1416 co-relation queries the response was YES. Maximal size of possible extension queue 170. Compared 16771 event pairs, 364 based on Foata normal form. 8/2458 useless extension candidates. Maximal degree in co-relation 6496. Up to 1064 conditions per place. [2024-10-11 14:15:56,844 INFO L140 encePairwiseOnDemand]: 35/43 looper letters, 30 selfloop transitions, 3 changer transitions 38/91 dead transitions. [2024-10-11 14:15:56,844 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 72 places, 91 transitions, 488 flow [2024-10-11 14:15:56,845 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-10-11 14:15:56,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-10-11 14:15:56,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 187 transitions. [2024-10-11 14:15:56,846 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5436046511627907 [2024-10-11 14:15:56,846 INFO L175 Difference]: Start difference. First operand has 67 places, 53 transitions, 213 flow. Second operand 8 states and 187 transitions. [2024-10-11 14:15:56,846 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 72 places, 91 transitions, 488 flow [2024-10-11 14:15:56,849 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 68 places, 91 transitions, 471 flow, removed 6 selfloop flow, removed 4 redundant places. [2024-10-11 14:15:56,850 INFO L231 Difference]: Finished difference. Result has 72 places, 47 transitions, 184 flow [2024-10-11 14:15:56,851 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=43, PETRI_DIFFERENCE_MINUEND_FLOW=201, PETRI_DIFFERENCE_MINUEND_PLACES=61, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=53, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=50, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=184, PETRI_PLACES=72, PETRI_TRANSITIONS=47} [2024-10-11 14:15:56,851 INFO L277 CegarLoopForPetriNet]: 49 programPoint places, 23 predicate places. [2024-10-11 14:15:56,852 INFO L471 AbstractCegarLoop]: Abstraction has has 72 places, 47 transitions, 184 flow [2024-10-11 14:15:56,852 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 19.0) internal successors, (133), 7 states have internal predecessors, (133), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:15:56,852 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:15:56,852 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:15:56,852 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-10-11 14:15:56,852 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 14:15:56,853 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:15:56,853 INFO L85 PathProgramCache]: Analyzing trace with hash 1886347781, now seen corresponding path program 4 times [2024-10-11 14:15:56,853 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:15:56,853 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [653684847] [2024-10-11 14:15:56,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:15:56,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:15:56,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 14:15:56,900 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-11 14:15:56,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 14:15:56,968 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-11 14:15:56,969 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-10-11 14:15:56,969 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2024-10-11 14:15:56,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (4 of 6 remaining) [2024-10-11 14:15:56,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2024-10-11 14:15:56,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2024-10-11 14:15:56,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2024-10-11 14:15:56,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2024-10-11 14:15:56,972 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2024-10-11 14:15:56,972 INFO L407 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1, 1] [2024-10-11 14:15:57,039 INFO L234 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-10-11 14:15:57,039 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-10-11 14:15:57,044 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 11.10 02:15:57 BasicIcfg [2024-10-11 14:15:57,044 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-10-11 14:15:57,045 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-10-11 14:15:57,045 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-10-11 14:15:57,045 INFO L274 PluginConnector]: Witness Printer initialized [2024-10-11 14:15:57,045 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:15:50" (3/4) ... [2024-10-11 14:15:57,046 INFO L133 WitnessPrinter]: Generating witness for reachability counterexample [2024-10-11 14:15:57,126 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-10-11 14:15:57,127 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-10-11 14:15:57,127 INFO L158 Benchmark]: Toolchain (without parser) took 7516.33ms. Allocated memory was 180.4MB in the beginning and 346.0MB in the end (delta: 165.7MB). Free memory was 111.9MB in the beginning and 177.5MB in the end (delta: -65.6MB). Peak memory consumption was 102.6MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,127 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 109.1MB. Free memory was 75.5MB in the beginning and 75.4MB in the end (delta: 119.1kB). There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 14:15:57,128 INFO L158 Benchmark]: CACSL2BoogieTranslator took 486.86ms. Allocated memory is still 180.4MB. Free memory was 111.7MB in the beginning and 150.5MB in the end (delta: -38.9MB). Peak memory consumption was 35.2MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,128 INFO L158 Benchmark]: Boogie Procedure Inliner took 90.04ms. Allocated memory is still 180.4MB. Free memory was 150.5MB in the beginning and 147.8MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,128 INFO L158 Benchmark]: Boogie Preprocessor took 51.03ms. Allocated memory is still 180.4MB. Free memory was 147.8MB in the beginning and 144.5MB in the end (delta: 3.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,128 INFO L158 Benchmark]: RCFGBuilder took 567.07ms. Allocated memory is still 180.4MB. Free memory was 144.5MB in the beginning and 92.1MB in the end (delta: 52.4MB). Peak memory consumption was 52.4MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,128 INFO L158 Benchmark]: TraceAbstraction took 6232.64ms. Allocated memory was 180.4MB in the beginning and 346.0MB in the end (delta: 165.7MB). Free memory was 91.3MB in the beginning and 191.2MB in the end (delta: -99.9MB). Peak memory consumption was 67.4MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,129 INFO L158 Benchmark]: Witness Printer took 82.03ms. Allocated memory is still 346.0MB. Free memory was 191.2MB in the beginning and 177.5MB in the end (delta: 13.6MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2024-10-11 14:15:57,130 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 109.1MB. Free memory was 75.5MB in the beginning and 75.4MB in the end (delta: 119.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 486.86ms. Allocated memory is still 180.4MB. Free memory was 111.7MB in the beginning and 150.5MB in the end (delta: -38.9MB). Peak memory consumption was 35.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 90.04ms. Allocated memory is still 180.4MB. Free memory was 150.5MB in the beginning and 147.8MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 51.03ms. Allocated memory is still 180.4MB. Free memory was 147.8MB in the beginning and 144.5MB in the end (delta: 3.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 567.07ms. Allocated memory is still 180.4MB. Free memory was 144.5MB in the beginning and 92.1MB in the end (delta: 52.4MB). Peak memory consumption was 52.4MB. Max. memory is 16.1GB. * TraceAbstraction took 6232.64ms. Allocated memory was 180.4MB in the beginning and 346.0MB in the end (delta: 165.7MB). Free memory was 91.3MB in the beginning and 191.2MB in the end (delta: -99.9MB). Peak memory consumption was 67.4MB. Max. memory is 16.1GB. * Witness Printer took 82.03ms. Allocated memory is still 346.0MB. Free memory was 191.2MB in the beginning and 177.5MB in the end (delta: 13.6MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L709] 0 int __unbuffered_cnt = 0; [L711] 0 int __unbuffered_p1_EAX = 0; [L713] 0 int __unbuffered_p1_EBX = 0; [L715] 0 int __unbuffered_p2_EAX = 0; [L717] 0 int __unbuffered_p2_EBX = 0; [L719] 0 int a = 0; [L721] 0 int b = 0; [L722] 0 _Bool main$tmp_guard0; [L723] 0 _Bool main$tmp_guard1; [L725] 0 int x = 0; [L726] 0 _Bool x$flush_delayed; [L727] 0 int x$mem_tmp; [L728] 0 _Bool x$r_buff0_thd0; [L729] 0 _Bool x$r_buff0_thd1; [L730] 0 _Bool x$r_buff0_thd2; [L731] 0 _Bool x$r_buff0_thd3; [L732] 0 _Bool x$r_buff1_thd0; [L733] 0 _Bool x$r_buff1_thd1; [L734] 0 _Bool x$r_buff1_thd2; [L735] 0 _Bool x$r_buff1_thd3; [L736] 0 _Bool x$read_delayed; [L737] 0 int *x$read_delayed_var; [L738] 0 int x$w_buff0; [L739] 0 _Bool x$w_buff0_used; [L740] 0 int x$w_buff1; [L741] 0 _Bool x$w_buff1_used; [L743] 0 int y = 0; [L745] 0 int z = 0; [L746] 0 _Bool weak$$choice0; [L747] 0 _Bool weak$$choice2; [L840] 0 pthread_t t891; [L841] FCALL, FORK 0 pthread_create(&t891, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, b=0, main$tmp_guard0=0, main$tmp_guard1=0, t891=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0, z=0] [L842] 0 pthread_t t892; [L843] FCALL, FORK 0 pthread_create(&t892, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, b=0, main$tmp_guard0=0, main$tmp_guard1=0, t891=0, t892=1, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0, z=0] [L844] 0 pthread_t t893; [L845] FCALL, FORK 0 pthread_create(&t893, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, b=0, main$tmp_guard0=0, main$tmp_guard1=0, t891=0, t892=1, t893=2, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0, z=0] [L771] 2 x$w_buff1 = x$w_buff0 [L772] 2 x$w_buff0 = 2 [L773] 2 x$w_buff1_used = x$w_buff0_used [L774] 2 x$w_buff0_used = (_Bool)1 [L775] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L775] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L776] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L777] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L778] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L779] 2 x$r_buff1_thd3 = x$r_buff0_thd3 [L780] 2 x$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0, z=0] [L783] 2 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=0] [L786] 2 __unbuffered_p1_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=0] [L789] 2 __unbuffered_p1_EBX = z VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=0] [L806] 3 z = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=0, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=1] [L809] 3 a = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=1] [L812] 3 __unbuffered_p2_EAX = a VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=1] [L815] 3 __unbuffered_p2_EBX = b VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=0, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=1] [L751] 1 b = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1, z=1] [L754] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1, z=1] [L757] 1 x = x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd1 ? x$w_buff1 : x) [L758] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L759] 1 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$w_buff1_used [L760] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L761] 1 x$r_buff1_thd1 = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1, z=1] [L792] 2 x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L793] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L794] 2 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$w_buff1_used [L795] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L796] 2 x$r_buff1_thd2 = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L818] 3 x = x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L819] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L820] 3 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$w_buff1_used [L821] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L822] 3 x$r_buff1_thd3 = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$r_buff1_thd3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L799] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L764] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L825] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L847] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=1, main$tmp_guard1=0, t891=0, t892=1, t893=2, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L849] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L849] RET 0 assume_abort_if_not(main$tmp_guard0) [L851] 0 x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L852] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L853] 0 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$w_buff1_used [L854] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L855] 0 x$r_buff1_thd0 = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$r_buff1_thd0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=1, main$tmp_guard1=0, t891=0, t892=1, t893=2, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L858] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L859] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L860] 0 x$flush_delayed = weak$$choice2 [L861] 0 x$mem_tmp = x [L862] 0 x = !x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1) [L863] 0 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0)) [L864] 0 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1)) [L865] 0 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used)) [L866] 0 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L867] 0 x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff0_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0)) [L868] 0 x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff1_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L869] 0 main$tmp_guard1 = !(x == 2 && __unbuffered_p1_EAX == 1 && __unbuffered_p1_EBX == 0 && __unbuffered_p2_EAX == 1 && __unbuffered_p2_EBX == 0) [L870] 0 x = x$flush_delayed ? x$mem_tmp : x [L871] 0 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, main$tmp_guard0=1, main$tmp_guard1=0, t891=0, t892=1, t893=2, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L873] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, a=1, arg={0:0}, arg={0:0}, b=1, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1, z=1] - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 843]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - UnprovableResult [Line: 845]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - UnprovableResult [Line: 841]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 7 procedures, 72 locations, 6 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 6.1s, OverallIterations: 8, TraceHistogramMax: 1, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 2.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 379 SdHoareTripleChecker+Valid, 1.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 355 mSDsluCounter, 244 SdHoareTripleChecker+Invalid, 0.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 220 mSDsCounter, 35 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 932 IncrementalHoareTripleChecker+Invalid, 967 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 35 mSolverCounterUnsat, 24 mSDtfsCounter, 932 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 56 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=213occurred in iteration=6, InterpolantAutomatonStates: 44, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 2.9s InterpolantComputationTime, 197 NumberOfCodeBlocks, 197 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 157 ConstructedInterpolants, 0 QuantifiedInterpolants, 1435 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 7 InterpolantComputations, 7 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2024-10-11 14:15:57,158 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE