./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/mix009.oepc.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 735b3cc8 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/mix009.oepc.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4dcfd24df13a4fc35e028ca53c41591d13aa2fa957261180f0dd9c1764b57d13 --- Real Ultimate output --- This is Ultimate 0.3.0-?-735b3cc-m [2025-03-14 00:48:13,586 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-14 00:48:13,640 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-14 00:48:13,647 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-14 00:48:13,648 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-14 00:48:13,670 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-14 00:48:13,671 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-14 00:48:13,672 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-14 00:48:13,672 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-14 00:48:13,672 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-14 00:48:13,673 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-14 00:48:13,673 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-14 00:48:13,673 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-14 00:48:13,673 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * Use SBE=true [2025-03-14 00:48:13,674 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-14 00:48:13,674 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-14 00:48:13,675 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-14 00:48:13,675 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-14 00:48:13,676 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-14 00:48:13,676 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 4dcfd24df13a4fc35e028ca53c41591d13aa2fa957261180f0dd9c1764b57d13 [2025-03-14 00:48:13,900 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-14 00:48:13,906 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-14 00:48:13,909 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-14 00:48:13,910 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-14 00:48:13,910 INFO L274 PluginConnector]: CDTParser initialized [2025-03-14 00:48:13,912 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/mix009.oepc.i [2025-03-14 00:48:15,087 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/735900d6a/c9e5824285da42028c90df9d0b9c2ab6/FLAGa5782b48e [2025-03-14 00:48:15,350 INFO L384 CDTParser]: Found 1 translation units. [2025-03-14 00:48:15,352 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix009.oepc.i [2025-03-14 00:48:15,364 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/735900d6a/c9e5824285da42028c90df9d0b9c2ab6/FLAGa5782b48e [2025-03-14 00:48:15,380 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/735900d6a/c9e5824285da42028c90df9d0b9c2ab6 [2025-03-14 00:48:15,382 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-14 00:48:15,383 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-14 00:48:15,384 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-14 00:48:15,385 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-14 00:48:15,388 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-14 00:48:15,388 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,389 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@39582f48 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15, skipping insertion in model container [2025-03-14 00:48:15,389 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,412 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-14 00:48:15,539 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix009.oepc.i[945,958] [2025-03-14 00:48:15,711 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-14 00:48:15,722 INFO L200 MainTranslator]: Completed pre-run [2025-03-14 00:48:15,731 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix009.oepc.i[945,958] [2025-03-14 00:48:15,765 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-14 00:48:15,791 INFO L204 MainTranslator]: Completed translation [2025-03-14 00:48:15,791 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15 WrapperNode [2025-03-14 00:48:15,792 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-14 00:48:15,792 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-14 00:48:15,793 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-14 00:48:15,793 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-14 00:48:15,797 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,807 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,825 INFO L138 Inliner]: procedures = 174, calls = 39, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 113 [2025-03-14 00:48:15,825 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-14 00:48:15,825 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-14 00:48:15,825 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-14 00:48:15,826 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-14 00:48:15,831 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,832 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,834 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,849 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]. [2025-03-14 00:48:15,849 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,849 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,856 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,862 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,863 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,864 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,866 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-14 00:48:15,866 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-14 00:48:15,866 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-14 00:48:15,866 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-14 00:48:15,867 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (1/1) ... [2025-03-14 00:48:15,872 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-14 00:48:15,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-14 00:48:15,908 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-14 00:48:15,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-14 00:48:15,934 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-14 00:48:15,935 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-14 00:48:15,935 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-14 00:48:15,935 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-14 00:48:15,935 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-14 00:48:15,937 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-14 00:48:16,045 INFO L256 CfgBuilder]: Building ICFG [2025-03-14 00:48:16,047 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-14 00:48:16,319 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-14 00:48:16,320 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-14 00:48:16,320 INFO L318 CfgBuilder]: Performing block encoding [2025-03-14 00:48:16,496 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-14 00:48:16,497 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:48:16 BoogieIcfgContainer [2025-03-14 00:48:16,497 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-14 00:48:16,499 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-14 00:48:16,499 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-14 00:48:16,502 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-14 00:48:16,503 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.03 12:48:15" (1/3) ... [2025-03-14 00:48:16,503 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@90f5cf6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.03 12:48:16, skipping insertion in model container [2025-03-14 00:48:16,503 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:48:15" (2/3) ... [2025-03-14 00:48:16,503 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@90f5cf6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.03 12:48:16, skipping insertion in model container [2025-03-14 00:48:16,504 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:48:16" (3/3) ... [2025-03-14 00:48:16,504 INFO L128 eAbstractionObserver]: Analyzing ICFG mix009.oepc.i [2025-03-14 00:48:16,515 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-14 00:48:16,517 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG mix009.oepc.i that has 3 procedures, 33 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-03-14 00:48:16,517 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-14 00:48:16,564 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-14 00:48:16,590 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 39 places, 33 transitions, 74 flow [2025-03-14 00:48:16,615 INFO L124 PetriNetUnfolderBase]: 1/31 cut-off events. [2025-03-14 00:48:16,618 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-14 00:48:16,621 INFO L83 FinitePrefix]: Finished finitePrefix Result has 38 conditions, 31 events. 1/31 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 50 event pairs, 0 based on Foata normal form. 0/28 useless extension candidates. Maximal degree in co-relation 31. Up to 2 conditions per place. [2025-03-14 00:48:16,622 INFO L82 GeneralOperation]: Start removeDead. Operand has 39 places, 33 transitions, 74 flow [2025-03-14 00:48:16,624 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 37 places, 31 transitions, 68 flow [2025-03-14 00:48:16,631 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-14 00:48:16,663 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;@52968ad7, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-14 00:48:16,666 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2025-03-14 00:48:16,669 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-14 00:48:16,670 INFO L124 PetriNetUnfolderBase]: 0/4 cut-off events. [2025-03-14 00:48:16,670 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-14 00:48:16,670 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:16,671 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2025-03-14 00:48:16,671 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P0Err0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:16,675 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:16,676 INFO L85 PathProgramCache]: Analyzing trace with hash 10064832, now seen corresponding path program 1 times [2025-03-14 00:48:16,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:16,681 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1976314280] [2025-03-14 00:48:16,681 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:48:16,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:16,739 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-03-14 00:48:16,767 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-03-14 00:48:16,768 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:48:16,768 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:17,004 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:17,005 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:17,005 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1976314280] [2025-03-14 00:48:17,006 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1976314280] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:17,006 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:17,006 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-14 00:48:17,007 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1416445884] [2025-03-14 00:48:17,007 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:17,012 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-14 00:48:17,015 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:17,031 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-14 00:48:17,031 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-14 00:48:17,032 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-14 00:48:17,034 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 37 places, 31 transitions, 68 flow. Second operand has 3 states, 3 states have (on average 8.0) internal successors, (24), 3 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:48:17,034 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:17,034 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-14 00:48:17,035 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:17,397 INFO L124 PetriNetUnfolderBase]: 735/1217 cut-off events. [2025-03-14 00:48:17,398 INFO L125 PetriNetUnfolderBase]: For 7/7 co-relation queries the response was YES. [2025-03-14 00:48:17,400 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2439 conditions, 1217 events. 735/1217 cut-off events. For 7/7 co-relation queries the response was YES. Maximal size of possible extension queue 58. Compared 5896 event pairs, 42 based on Foata normal form. 55/1264 useless extension candidates. Maximal degree in co-relation 2429. Up to 1100 conditions per place. [2025-03-14 00:48:17,408 INFO L140 encePairwiseOnDemand]: 29/33 looper letters, 35 selfloop transitions, 2 changer transitions 2/44 dead transitions. [2025-03-14 00:48:17,409 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 44 transitions, 175 flow [2025-03-14 00:48:17,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-14 00:48:17,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-14 00:48:17,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 63 transitions. [2025-03-14 00:48:17,419 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6363636363636364 [2025-03-14 00:48:17,420 INFO L175 Difference]: Start difference. First operand has 37 places, 31 transitions, 68 flow. Second operand 3 states and 63 transitions. [2025-03-14 00:48:17,421 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 44 transitions, 175 flow [2025-03-14 00:48:17,424 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 44 transitions, 172 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-14 00:48:17,427 INFO L231 Difference]: Finished difference. Result has 36 places, 28 transitions, 64 flow [2025-03-14 00:48:17,429 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=62, PETRI_DIFFERENCE_MINUEND_PLACES=34, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=64, PETRI_PLACES=36, PETRI_TRANSITIONS=28} [2025-03-14 00:48:17,434 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, -1 predicate places. [2025-03-14 00:48:17,434 INFO L471 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 64 flow [2025-03-14 00:48:17,434 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.0) internal successors, (24), 3 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:48:17,434 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:17,435 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-14 00:48:17,435 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-14 00:48:17,435 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:17,435 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:17,437 INFO L85 PathProgramCache]: Analyzing trace with hash -1946196375, now seen corresponding path program 1 times [2025-03-14 00:48:17,437 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:17,437 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [258208371] [2025-03-14 00:48:17,437 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:48:17,437 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:17,452 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 12 statements into 1 equivalence classes. [2025-03-14 00:48:17,489 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 12 of 12 statements. [2025-03-14 00:48:17,490 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:48:17,490 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:17,638 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:17,638 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:17,638 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [258208371] [2025-03-14 00:48:17,639 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [258208371] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:17,639 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:17,639 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-14 00:48:17,639 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [489633004] [2025-03-14 00:48:17,639 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:17,639 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-14 00:48:17,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:17,640 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-14 00:48:17,640 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-14 00:48:17,640 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-14 00:48:17,640 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 28 transitions, 64 flow. Second operand has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 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) [2025-03-14 00:48:17,640 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:17,640 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-14 00:48:17,640 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:17,819 INFO L124 PetriNetUnfolderBase]: 409/805 cut-off events. [2025-03-14 00:48:17,819 INFO L125 PetriNetUnfolderBase]: For 33/33 co-relation queries the response was YES. [2025-03-14 00:48:17,821 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1584 conditions, 805 events. 409/805 cut-off events. For 33/33 co-relation queries the response was YES. Maximal size of possible extension queue 35. Compared 3764 event pairs, 134 based on Foata normal form. 56/832 useless extension candidates. Maximal degree in co-relation 1574. Up to 316 conditions per place. [2025-03-14 00:48:17,826 INFO L140 encePairwiseOnDemand]: 28/33 looper letters, 46 selfloop transitions, 4 changer transitions 1/56 dead transitions. [2025-03-14 00:48:17,826 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 56 transitions, 228 flow [2025-03-14 00:48:17,827 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-14 00:48:17,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-14 00:48:17,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 81 transitions. [2025-03-14 00:48:17,828 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6136363636363636 [2025-03-14 00:48:17,828 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 64 flow. Second operand 4 states and 81 transitions. [2025-03-14 00:48:17,828 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 56 transitions, 228 flow [2025-03-14 00:48:17,828 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 56 transitions, 220 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-14 00:48:17,830 INFO L231 Difference]: Finished difference. Result has 38 places, 30 transitions, 86 flow [2025-03-14 00:48:17,830 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=60, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=86, PETRI_PLACES=38, PETRI_TRANSITIONS=30} [2025-03-14 00:48:17,830 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 1 predicate places. [2025-03-14 00:48:17,830 INFO L471 AbstractCegarLoop]: Abstraction has has 38 places, 30 transitions, 86 flow [2025-03-14 00:48:17,830 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 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) [2025-03-14 00:48:17,830 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:17,831 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-14 00:48:17,831 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-14 00:48:17,832 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:17,832 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:17,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1096742760, now seen corresponding path program 1 times [2025-03-14 00:48:17,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:17,833 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [502286525] [2025-03-14 00:48:17,835 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:48:17,835 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:17,848 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-14 00:48:17,913 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-14 00:48:17,913 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:48:17,913 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:18,144 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:18,144 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:18,144 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [502286525] [2025-03-14 00:48:18,144 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [502286525] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:18,144 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:18,144 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-14 00:48:18,144 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [474062777] [2025-03-14 00:48:18,144 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:18,144 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-14 00:48:18,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:18,145 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-14 00:48:18,145 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-14 00:48:18,145 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-14 00:48:18,145 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 38 places, 30 transitions, 86 flow. Second operand has 5 states, 5 states have (on average 10.0) internal successors, (50), 5 states have internal predecessors, (50), 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) [2025-03-14 00:48:18,145 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:18,145 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-14 00:48:18,145 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:18,285 INFO L124 PetriNetUnfolderBase]: 206/396 cut-off events. [2025-03-14 00:48:18,285 INFO L125 PetriNetUnfolderBase]: For 59/59 co-relation queries the response was YES. [2025-03-14 00:48:18,286 INFO L83 FinitePrefix]: Finished finitePrefix Result has 921 conditions, 396 events. 206/396 cut-off events. For 59/59 co-relation queries the response was YES. Maximal size of possible extension queue 19. Compared 1362 event pairs, 90 based on Foata normal form. 26/415 useless extension candidates. Maximal degree in co-relation 909. Up to 161 conditions per place. [2025-03-14 00:48:18,288 INFO L140 encePairwiseOnDemand]: 28/33 looper letters, 36 selfloop transitions, 6 changer transitions 1/48 dead transitions. [2025-03-14 00:48:18,288 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 48 transitions, 213 flow [2025-03-14 00:48:18,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-14 00:48:18,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-14 00:48:18,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 80 transitions. [2025-03-14 00:48:18,289 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.48484848484848486 [2025-03-14 00:48:18,289 INFO L175 Difference]: Start difference. First operand has 38 places, 30 transitions, 86 flow. Second operand 5 states and 80 transitions. [2025-03-14 00:48:18,289 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 48 transitions, 213 flow [2025-03-14 00:48:18,290 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 40 places, 48 transitions, 204 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-14 00:48:18,291 INFO L231 Difference]: Finished difference. Result has 42 places, 30 transitions, 102 flow [2025-03-14 00:48:18,291 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=79, PETRI_DIFFERENCE_MINUEND_PLACES=36, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=30, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=102, PETRI_PLACES=42, PETRI_TRANSITIONS=30} [2025-03-14 00:48:18,292 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 5 predicate places. [2025-03-14 00:48:18,292 INFO L471 AbstractCegarLoop]: Abstraction has has 42 places, 30 transitions, 102 flow [2025-03-14 00:48:18,292 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 10.0) internal successors, (50), 5 states have internal predecessors, (50), 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) [2025-03-14 00:48:18,292 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:18,292 INFO L206 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] [2025-03-14 00:48:18,292 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-14 00:48:18,292 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:18,292 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:18,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1411339776, now seen corresponding path program 1 times [2025-03-14 00:48:18,294 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:18,294 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [883408075] [2025-03-14 00:48:18,294 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:48:18,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:18,307 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-14 00:48:18,385 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-14 00:48:18,385 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:48:18,385 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:20,016 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:20,018 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:20,018 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [883408075] [2025-03-14 00:48:20,018 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [883408075] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:20,018 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:20,018 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-14 00:48:20,018 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1269794800] [2025-03-14 00:48:20,019 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:20,019 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-14 00:48:20,020 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:20,020 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-14 00:48:20,020 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2025-03-14 00:48:20,033 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-14 00:48:20,034 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 30 transitions, 102 flow. Second operand has 11 states, 11 states have (on average 8.0) internal successors, (88), 11 states have internal predecessors, (88), 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) [2025-03-14 00:48:20,034 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:20,034 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-14 00:48:20,034 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:20,645 INFO L124 PetriNetUnfolderBase]: 313/596 cut-off events. [2025-03-14 00:48:20,645 INFO L125 PetriNetUnfolderBase]: For 226/226 co-relation queries the response was YES. [2025-03-14 00:48:20,646 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1424 conditions, 596 events. 313/596 cut-off events. For 226/226 co-relation queries the response was YES. Maximal size of possible extension queue 29. Compared 2383 event pairs, 45 based on Foata normal form. 4/598 useless extension candidates. Maximal degree in co-relation 1410. Up to 184 conditions per place. [2025-03-14 00:48:20,647 INFO L140 encePairwiseOnDemand]: 22/33 looper letters, 59 selfloop transitions, 16 changer transitions 18/97 dead transitions. [2025-03-14 00:48:20,647 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 97 transitions, 486 flow [2025-03-14 00:48:20,648 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-03-14 00:48:20,648 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-03-14 00:48:20,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 162 transitions. [2025-03-14 00:48:20,649 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4090909090909091 [2025-03-14 00:48:20,649 INFO L175 Difference]: Start difference. First operand has 42 places, 30 transitions, 102 flow. Second operand 12 states and 162 transitions. [2025-03-14 00:48:20,649 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 97 transitions, 486 flow [2025-03-14 00:48:20,653 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 97 transitions, 417 flow, removed 10 selfloop flow, removed 6 redundant places. [2025-03-14 00:48:20,655 INFO L231 Difference]: Finished difference. Result has 55 places, 43 transitions, 181 flow [2025-03-14 00:48:20,655 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=74, PETRI_DIFFERENCE_MINUEND_PLACES=36, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=30, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=22, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=181, PETRI_PLACES=55, PETRI_TRANSITIONS=43} [2025-03-14 00:48:20,656 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 18 predicate places. [2025-03-14 00:48:20,656 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 43 transitions, 181 flow [2025-03-14 00:48:20,656 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 8.0) internal successors, (88), 11 states have internal predecessors, (88), 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) [2025-03-14 00:48:20,656 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:20,656 INFO L206 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] [2025-03-14 00:48:20,657 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-14 00:48:20,657 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:20,657 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:20,658 INFO L85 PathProgramCache]: Analyzing trace with hash -41086426, now seen corresponding path program 2 times [2025-03-14 00:48:20,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:20,658 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1699682225] [2025-03-14 00:48:20,658 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-14 00:48:20,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:20,670 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 25 statements into 1 equivalence classes. [2025-03-14 00:48:20,718 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-14 00:48:20,718 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-14 00:48:20,718 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:20,880 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:20,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:20,880 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1699682225] [2025-03-14 00:48:20,880 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1699682225] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:20,881 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:20,881 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-14 00:48:20,881 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2112550023] [2025-03-14 00:48:20,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:20,881 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-03-14 00:48:20,881 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:20,881 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-03-14 00:48:20,881 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-03-14 00:48:20,889 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-14 00:48:20,890 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 55 places, 43 transitions, 181 flow. Second operand has 7 states, 7 states have (on average 9.142857142857142) internal successors, (64), 7 states have internal predecessors, (64), 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) [2025-03-14 00:48:20,890 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:20,890 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-14 00:48:20,890 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:21,136 INFO L124 PetriNetUnfolderBase]: 361/693 cut-off events. [2025-03-14 00:48:21,138 INFO L125 PetriNetUnfolderBase]: For 372/372 co-relation queries the response was YES. [2025-03-14 00:48:21,140 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1882 conditions, 693 events. 361/693 cut-off events. For 372/372 co-relation queries the response was YES. Maximal size of possible extension queue 35. Compared 2893 event pairs, 76 based on Foata normal form. 4/694 useless extension candidates. Maximal degree in co-relation 1863. Up to 319 conditions per place. [2025-03-14 00:48:21,142 INFO L140 encePairwiseOnDemand]: 25/33 looper letters, 30 selfloop transitions, 4 changer transitions 38/76 dead transitions. [2025-03-14 00:48:21,142 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 60 places, 76 transitions, 435 flow [2025-03-14 00:48:21,142 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-14 00:48:21,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-14 00:48:21,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 108 transitions. [2025-03-14 00:48:21,144 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4090909090909091 [2025-03-14 00:48:21,145 INFO L175 Difference]: Start difference. First operand has 55 places, 43 transitions, 181 flow. Second operand 8 states and 108 transitions. [2025-03-14 00:48:21,145 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 60 places, 76 transitions, 435 flow [2025-03-14 00:48:21,147 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 57 places, 76 transitions, 423 flow, removed 3 selfloop flow, removed 3 redundant places. [2025-03-14 00:48:21,149 INFO L231 Difference]: Finished difference. Result has 61 places, 32 transitions, 132 flow [2025-03-14 00:48:21,149 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=172, PETRI_DIFFERENCE_MINUEND_PLACES=50, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=39, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=132, PETRI_PLACES=61, PETRI_TRANSITIONS=32} [2025-03-14 00:48:21,150 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 24 predicate places. [2025-03-14 00:48:21,151 INFO L471 AbstractCegarLoop]: Abstraction has has 61 places, 32 transitions, 132 flow [2025-03-14 00:48:21,151 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 9.142857142857142) internal successors, (64), 7 states have internal predecessors, (64), 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) [2025-03-14 00:48:21,151 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:21,151 INFO L206 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] [2025-03-14 00:48:21,151 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-14 00:48:21,151 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:21,152 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:21,153 INFO L85 PathProgramCache]: Analyzing trace with hash 1066845208, now seen corresponding path program 3 times [2025-03-14 00:48:21,153 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:21,153 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [448318794] [2025-03-14 00:48:21,153 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-14 00:48:21,153 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:21,162 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 25 statements into 1 equivalence classes. [2025-03-14 00:48:21,196 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-14 00:48:21,196 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-14 00:48:21,196 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:48:21,581 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-14 00:48:21,581 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:48:21,581 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [448318794] [2025-03-14 00:48:21,581 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [448318794] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:48:21,581 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:48:21,581 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-14 00:48:21,581 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2107808755] [2025-03-14 00:48:21,581 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:48:21,581 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-03-14 00:48:21,582 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:48:21,582 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-03-14 00:48:21,582 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2025-03-14 00:48:21,589 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-14 00:48:21,589 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 61 places, 32 transitions, 132 flow. Second operand has 8 states, 8 states have (on average 8.75) internal successors, (70), 8 states have internal predecessors, (70), 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) [2025-03-14 00:48:21,589 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:48:21,589 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-14 00:48:21,590 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:48:21,837 INFO L124 PetriNetUnfolderBase]: 153/328 cut-off events. [2025-03-14 00:48:21,838 INFO L125 PetriNetUnfolderBase]: For 170/170 co-relation queries the response was YES. [2025-03-14 00:48:21,839 INFO L83 FinitePrefix]: Finished finitePrefix Result has 868 conditions, 328 events. 153/328 cut-off events. For 170/170 co-relation queries the response was YES. Maximal size of possible extension queue 15. Compared 1081 event pairs, 24 based on Foata normal form. 4/331 useless extension candidates. Maximal degree in co-relation 846. Up to 121 conditions per place. [2025-03-14 00:48:21,840 INFO L140 encePairwiseOnDemand]: 24/33 looper letters, 33 selfloop transitions, 5 changer transitions 25/67 dead transitions. [2025-03-14 00:48:21,842 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 67 transitions, 361 flow [2025-03-14 00:48:21,842 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-03-14 00:48:21,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2025-03-14 00:48:21,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 119 transitions. [2025-03-14 00:48:21,843 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3606060606060606 [2025-03-14 00:48:21,844 INFO L175 Difference]: Start difference. First operand has 61 places, 32 transitions, 132 flow. Second operand 10 states and 119 transitions. [2025-03-14 00:48:21,844 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 67 transitions, 361 flow [2025-03-14 00:48:21,845 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 67 transitions, 311 flow, removed 19 selfloop flow, removed 11 redundant places. [2025-03-14 00:48:21,847 INFO L231 Difference]: Finished difference. Result has 55 places, 30 transitions, 109 flow [2025-03-14 00:48:21,848 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=33, PETRI_DIFFERENCE_MINUEND_FLOW=98, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=10, PETRI_FLOW=109, PETRI_PLACES=55, PETRI_TRANSITIONS=30} [2025-03-14 00:48:21,848 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 18 predicate places. [2025-03-14 00:48:21,848 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 30 transitions, 109 flow [2025-03-14 00:48:21,848 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 8.75) internal successors, (70), 8 states have internal predecessors, (70), 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) [2025-03-14 00:48:21,848 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:48:21,848 INFO L206 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] [2025-03-14 00:48:21,848 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-14 00:48:21,849 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:48:21,849 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:48:21,849 INFO L85 PathProgramCache]: Analyzing trace with hash 1466724926, now seen corresponding path program 4 times [2025-03-14 00:48:21,849 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:48:21,849 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2071382031] [2025-03-14 00:48:21,849 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-03-14 00:48:21,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:48:21,858 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 25 statements into 2 equivalence classes. [2025-03-14 00:48:21,900 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 25 of 25 statements. [2025-03-14 00:48:21,901 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-03-14 00:48:21,901 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-14 00:48:21,901 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-14 00:48:21,905 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-14 00:48:21,950 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-14 00:48:21,951 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:48:21,951 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-14 00:48:21,974 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-14 00:48:21,974 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-14 00:48:21,974 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2025-03-14 00:48:21,976 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2025-03-14 00:48:21,976 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2025-03-14 00:48:21,976 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2025-03-14 00:48:21,976 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2025-03-14 00:48:21,977 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-03-14 00:48:21,977 INFO L422 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1] [2025-03-14 00:48:22,036 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-14 00:48:22,037 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-14 00:48:22,043 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.03 12:48:22 BasicIcfg [2025-03-14 00:48:22,044 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-14 00:48:22,044 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-14 00:48:22,044 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-14 00:48:22,045 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-14 00:48:22,045 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:48:16" (3/4) ... [2025-03-14 00:48:22,046 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-14 00:48:22,128 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-14 00:48:22,168 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-14 00:48:22,168 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-14 00:48:22,168 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-14 00:48:22,169 INFO L158 Benchmark]: Toolchain (without parser) took 6785.10ms. Allocated memory was 201.3MB in the beginning and 293.6MB in the end (delta: 92.3MB). Free memory was 156.9MB in the beginning and 233.0MB in the end (delta: -76.1MB). Peak memory consumption was 11.9MB. Max. memory is 16.1GB. [2025-03-14 00:48:22,169 INFO L158 Benchmark]: CDTParser took 0.25ms. Allocated memory is still 201.3MB. Free memory is still 116.3MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-14 00:48:22,169 INFO L158 Benchmark]: CACSL2BoogieTranslator took 407.41ms. Allocated memory is still 201.3MB. Free memory was 156.9MB in the beginning and 134.2MB in the end (delta: 22.7MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-14 00:48:22,169 INFO L158 Benchmark]: Boogie Procedure Inliner took 32.56ms. Allocated memory is still 201.3MB. Free memory was 133.9MB in the beginning and 132.0MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-14 00:48:22,169 INFO L158 Benchmark]: Boogie Preprocessor took 40.30ms. Allocated memory is still 201.3MB. Free memory was 132.0MB in the beginning and 129.1MB in the end (delta: 2.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-14 00:48:22,169 INFO L158 Benchmark]: IcfgBuilder took 631.28ms. Allocated memory is still 201.3MB. Free memory was 129.1MB in the beginning and 66.0MB in the end (delta: 63.1MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. [2025-03-14 00:48:22,170 INFO L158 Benchmark]: TraceAbstraction took 5544.36ms. Allocated memory was 201.3MB in the beginning and 293.6MB in the end (delta: 92.3MB). Free memory was 65.5MB in the beginning and 246.5MB in the end (delta: -181.0MB). Peak memory consumption was 70.7MB. Max. memory is 16.1GB. [2025-03-14 00:48:22,171 INFO L158 Benchmark]: Witness Printer took 123.63ms. Allocated memory is still 293.6MB. Free memory was 246.5MB in the beginning and 233.0MB in the end (delta: 13.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-14 00:48:22,174 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.25ms. Allocated memory is still 201.3MB. Free memory is still 116.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 407.41ms. Allocated memory is still 201.3MB. Free memory was 156.9MB in the beginning and 134.2MB in the end (delta: 22.7MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 32.56ms. Allocated memory is still 201.3MB. Free memory was 133.9MB in the beginning and 132.0MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 40.30ms. Allocated memory is still 201.3MB. Free memory was 132.0MB in the beginning and 129.1MB in the end (delta: 2.8MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 631.28ms. Allocated memory is still 201.3MB. Free memory was 129.1MB in the beginning and 66.0MB in the end (delta: 63.1MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. * TraceAbstraction took 5544.36ms. Allocated memory was 201.3MB in the beginning and 293.6MB in the end (delta: 92.3MB). Free memory was 65.5MB in the beginning and 246.5MB in the end (delta: -181.0MB). Peak memory consumption was 70.7MB. Max. memory is 16.1GB. * Witness Printer took 123.63ms. Allocated memory is still 293.6MB. Free memory was 246.5MB in the beginning and 233.0MB in the end (delta: 13.5MB). Peak memory consumption was 8.4MB. 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: [L708] 0 int __unbuffered_cnt = 0; [L710] 0 int __unbuffered_p0_EAX = 0; [L712] 0 int __unbuffered_p0_EBX = 0; [L714] 0 int __unbuffered_p1_EAX = 0; [L716] 0 int __unbuffered_p1_EBX = 0; [L717] 0 _Bool main$tmp_guard0; [L718] 0 _Bool main$tmp_guard1; [L720] 0 int x = 0; [L722] 0 int y = 0; [L724] 0 int z = 0; [L725] 0 _Bool z$flush_delayed; [L726] 0 int z$mem_tmp; [L727] 0 _Bool z$r_buff0_thd0; [L728] 0 _Bool z$r_buff0_thd1; [L729] 0 _Bool z$r_buff0_thd2; [L730] 0 _Bool z$r_buff1_thd0; [L731] 0 _Bool z$r_buff1_thd1; [L732] 0 _Bool z$r_buff1_thd2; [L733] 0 _Bool z$read_delayed; [L734] 0 int *z$read_delayed_var; [L735] 0 int z$w_buff0; [L736] 0 _Bool z$w_buff0_used; [L737] 0 int z$w_buff1; [L738] 0 _Bool z$w_buff1_used; [L739] 0 _Bool weak$$choice0; [L740] 0 _Bool weak$$choice2; [L822] 0 pthread_t t241; [L823] FCALL, FORK 0 pthread_create(&t241, ((void *)0), P0, ((void *)0)) VAL [__unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t241=-2, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=0, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=0, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=0] [L824] 0 pthread_t t242; [L825] FCALL, FORK 0 pthread_create(&t242, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t241=-2, t242=-1, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=0, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=0, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=0] [L744] 1 z$w_buff1 = z$w_buff0 [L745] 1 z$w_buff0 = 1 [L746] 1 z$w_buff1_used = z$w_buff0_used [L747] 1 z$w_buff0_used = (_Bool)1 [L748] CALL 1 __VERIFIER_assert(!(z$w_buff1_used && z$w_buff0_used)) [L18] COND FALSE 1 !(!expression) [L748] RET 1 __VERIFIER_assert(!(z$w_buff1_used && z$w_buff0_used)) [L749] 1 z$r_buff1_thd0 = z$r_buff0_thd0 [L750] 1 z$r_buff1_thd1 = z$r_buff0_thd1 [L751] 1 z$r_buff1_thd2 = z$r_buff0_thd2 [L752] 1 z$r_buff0_thd1 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L755] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L758] 1 __unbuffered_p0_EAX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L761] 1 __unbuffered_p0_EBX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L778] 2 y = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L781] 2 __unbuffered_p1_EAX = y VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L784] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L785] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L786] 2 z$flush_delayed = weak$$choice2 [L787] 2 z$mem_tmp = z [L788] 2 z = !z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z : (z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : z$w_buff1) [L789] 2 z$w_buff0 = weak$$choice2 ? z$w_buff0 : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$w_buff0 : (z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : z$w_buff0)) [L790] 2 z$w_buff1 = weak$$choice2 ? z$w_buff1 : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$w_buff1 : (z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff1 : z$w_buff1)) [L791] 2 z$w_buff0_used = weak$$choice2 ? z$w_buff0_used : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$w_buff0_used : (z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$w_buff0_used)) [L792] 2 z$w_buff1_used = weak$$choice2 ? z$w_buff1_used : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$w_buff1_used : (z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L793] 2 z$r_buff0_thd2 = weak$$choice2 ? z$r_buff0_thd2 : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$r_buff0_thd2 : (z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$r_buff0_thd2)) [L794] 2 z$r_buff1_thd2 = weak$$choice2 ? z$r_buff1_thd2 : (!z$w_buff0_used || !z$r_buff0_thd2 && !z$w_buff1_used || !z$r_buff0_thd2 && !z$r_buff1_thd2 ? z$r_buff1_thd2 : (z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L795] 2 __unbuffered_p1_EBX = z [L796] 2 z = z$flush_delayed ? z$mem_tmp : z [L797] 2 z$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L800] 2 z = z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd2 ? z$w_buff1 : z) [L801] 2 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$w_buff0_used [L802] 2 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd2 || z$w_buff1_used && z$r_buff1_thd2 ? (_Bool)0 : z$w_buff1_used [L803] 2 z$r_buff0_thd2 = z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$r_buff0_thd2 [L804] 2 z$r_buff1_thd2 = z$w_buff0_used && z$r_buff0_thd2 || z$w_buff1_used && z$r_buff1_thd2 ? (_Bool)0 : z$r_buff1_thd2 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L764] 1 z = z$w_buff0_used && z$r_buff0_thd1 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd1 ? z$w_buff1 : z) [L765] 1 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$w_buff0_used [L766] 1 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd1 || z$w_buff1_used && z$r_buff1_thd1 ? (_Bool)0 : z$w_buff1_used [L767] 1 z$r_buff0_thd1 = z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$r_buff0_thd1 [L768] 1 z$r_buff1_thd1 = z$w_buff0_used && z$r_buff0_thd1 || z$w_buff1_used && z$r_buff1_thd1 ? (_Bool)0 : z$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L771] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L807] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L827] 0 main$tmp_guard0 = __unbuffered_cnt == 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t241=-2, t242=-1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L829] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L829] RET 0 assume_abort_if_not(main$tmp_guard0) [L831] 0 z = z$w_buff0_used && z$r_buff0_thd0 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd0 ? z$w_buff1 : z) [L832] 0 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool)0 : z$w_buff0_used [L833] 0 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd0 || z$w_buff1_used && z$r_buff1_thd0 ? (_Bool)0 : z$w_buff1_used [L834] 0 z$r_buff0_thd0 = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool)0 : z$r_buff0_thd0 [L835] 0 z$r_buff1_thd0 = z$w_buff0_used && z$r_buff0_thd0 || z$w_buff1_used && z$r_buff1_thd0 ? (_Bool)0 : z$r_buff1_thd0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t241=-2, t242=-1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L838] 0 main$tmp_guard1 = !(__unbuffered_p0_EAX == 1 && __unbuffered_p0_EBX == 0 && __unbuffered_p1_EAX == 1 && __unbuffered_p1_EBX == 0) VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t241=-2, t242=-1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L840] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, 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: 823]: 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: 825]: 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 5 procedures, 53 locations, 5 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: 5.4s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 1.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 311 SdHoareTripleChecker+Valid, 1.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 304 mSDsluCounter, 86 SdHoareTripleChecker+Invalid, 0.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 84 mSDsCounter, 28 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1040 IncrementalHoareTripleChecker+Invalid, 1068 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 28 mSolverCounterUnsat, 2 mSDtfsCounter, 1040 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 51 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=181occurred in iteration=4, InterpolantAutomatonStates: 42, 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.3s SatisfiabilityAnalysisTime, 2.8s InterpolantComputationTime, 134 NumberOfCodeBlocks, 134 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 103 ConstructedInterpolants, 0 QuantifiedInterpolants, 1032 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 6 InterpolantComputations, 6 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, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-14 00:48:22,191 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/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