./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 f8ab0bd5 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-?-f8ab0bd-m [2025-03-13 21:29:31,701 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:29:31,767 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:29:31,774 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:29:31,775 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:29:31,793 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:29:31,794 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:29:31,794 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:29:31,794 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:29:31,794 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:29:31,794 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:29:31,795 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:29:31,795 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:29:31,795 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:29:31,795 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:29:31,796 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:29:31,796 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:29:31,797 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:29:31,797 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:29:31,797 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:29:31,798 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:29:31,798 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-13 21:29:32,037 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:29:32,046 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:29:32,048 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:29:32,049 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:29:32,050 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:29:32,051 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-13 21:29:33,253 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9fd564f94/a26c8a585af5401bafd2548438d943c0/FLAG112fb67d4 [2025-03-13 21:29:33,564 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:29:33,564 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix009.oepc.i [2025-03-13 21:29:33,584 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9fd564f94/a26c8a585af5401bafd2548438d943c0/FLAG112fb67d4 [2025-03-13 21:29:33,601 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9fd564f94/a26c8a585af5401bafd2548438d943c0 [2025-03-13 21:29:33,603 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:29:33,604 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:29:33,605 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:29:33,605 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:29:33,609 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:29:33,610 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,611 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@cf0269b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33, skipping insertion in model container [2025-03-13 21:29:33,612 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,645 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:29:33,751 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-13 21:29:33,862 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:29:33,870 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:29:33,879 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-13 21:29:33,930 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:29:33,954 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:29:33,954 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33 WrapperNode [2025-03-13 21:29:33,955 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:29:33,956 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:29:33,956 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:29:33,956 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:29:33,961 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,972 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,986 INFO L138 Inliner]: procedures = 174, calls = 39, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 113 [2025-03-13 21:29:33,987 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:29:33,987 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:29:33,987 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:29:33,987 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:29:33,993 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,993 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:33,995 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,008 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-13 21:29:34,008 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,008 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,013 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,014 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,015 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,015 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,017 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:29:34,018 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:29:34,018 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:29:34,018 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:29:34,019 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (1/1) ... [2025-03-13 21:29:34,025 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:29:34,041 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:29:34,053 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-13 21:29:34,059 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-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:29:34,075 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:29:34,075 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:29:34,075 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:29:34,076 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:29:34,076 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:29:34,077 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-13 21:29:34,166 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:29:34,167 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:29:34,368 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:29:34,369 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:29:34,369 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:29:34,592 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:29:34,593 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:34 BoogieIcfgContainer [2025-03-13 21:29:34,593 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:29:34,594 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:29:34,594 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:29:34,602 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:29:34,602 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:29:33" (1/3) ... [2025-03-13 21:29:34,603 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@12830c56 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:29:34, skipping insertion in model container [2025-03-13 21:29:34,604 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:33" (2/3) ... [2025-03-13 21:29:34,604 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@12830c56 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:29:34, skipping insertion in model container [2025-03-13 21:29:34,604 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:34" (3/3) ... [2025-03-13 21:29:34,606 INFO L128 eAbstractionObserver]: Analyzing ICFG mix009.oepc.i [2025-03-13 21:29:34,621 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:29:34,622 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-13 21:29:34,622 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:29:34,664 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:29:34,692 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 39 places, 33 transitions, 74 flow [2025-03-13 21:29:34,717 INFO L124 PetriNetUnfolderBase]: 1/31 cut-off events. [2025-03-13 21:29:34,719 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:29:34,722 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-13 21:29:34,723 INFO L82 GeneralOperation]: Start removeDead. Operand has 39 places, 33 transitions, 74 flow [2025-03-13 21:29:34,726 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 37 places, 31 transitions, 68 flow [2025-03-13 21:29:34,733 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:29:34,741 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;@527484d, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:29:34,741 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2025-03-13 21:29:34,744 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:29:34,744 INFO L124 PetriNetUnfolderBase]: 0/4 cut-off events. [2025-03-13 21:29:34,744 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:29:34,744 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:34,745 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2025-03-13 21:29:34,746 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-13 21:29:34,749 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:34,750 INFO L85 PathProgramCache]: Analyzing trace with hash 10064832, now seen corresponding path program 1 times [2025-03-13 21:29:34,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:34,755 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [647039174] [2025-03-13 21:29:34,756 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:34,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:34,818 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-03-13 21:29:34,846 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-03-13 21:29:34,846 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:34,846 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:35,131 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-13 21:29:35,132 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:35,132 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [647039174] [2025-03-13 21:29:35,133 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [647039174] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:35,133 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:35,133 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-13 21:29:35,134 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [557025848] [2025-03-13 21:29:35,134 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:35,139 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-13 21:29:35,142 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:35,160 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-13 21:29:35,161 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-13 21:29:35,162 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-13 21:29:35,164 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-13 21:29:35,165 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:35,165 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-13 21:29:35,165 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:35,451 INFO L124 PetriNetUnfolderBase]: 735/1217 cut-off events. [2025-03-13 21:29:35,451 INFO L125 PetriNetUnfolderBase]: For 7/7 co-relation queries the response was YES. [2025-03-13 21:29:35,457 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-13 21:29:35,465 INFO L140 encePairwiseOnDemand]: 29/33 looper letters, 35 selfloop transitions, 2 changer transitions 2/44 dead transitions. [2025-03-13 21:29:35,466 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 44 transitions, 175 flow [2025-03-13 21:29:35,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-13 21:29:35,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-13 21:29:35,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 63 transitions. [2025-03-13 21:29:35,475 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6363636363636364 [2025-03-13 21:29:35,477 INFO L175 Difference]: Start difference. First operand has 37 places, 31 transitions, 68 flow. Second operand 3 states and 63 transitions. [2025-03-13 21:29:35,478 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 44 transitions, 175 flow [2025-03-13 21:29:35,481 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 44 transitions, 172 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:35,483 INFO L231 Difference]: Finished difference. Result has 36 places, 28 transitions, 64 flow [2025-03-13 21:29:35,484 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-13 21:29:35,490 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, -1 predicate places. [2025-03-13 21:29:35,490 INFO L471 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 64 flow [2025-03-13 21:29:35,490 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-13 21:29:35,490 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:35,490 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:35,491 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:29:35,491 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-13 21:29:35,491 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:35,491 INFO L85 PathProgramCache]: Analyzing trace with hash -1946196375, now seen corresponding path program 1 times [2025-03-13 21:29:35,491 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:35,491 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1165973717] [2025-03-13 21:29:35,491 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:35,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:35,514 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 12 statements into 1 equivalence classes. [2025-03-13 21:29:35,547 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 12 of 12 statements. [2025-03-13 21:29:35,547 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:35,548 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:35,707 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-13 21:29:35,707 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:35,707 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1165973717] [2025-03-13 21:29:35,707 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1165973717] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:35,707 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:35,707 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:29:35,707 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1015992002] [2025-03-13 21:29:35,707 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:35,708 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:29:35,708 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:35,708 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:29:35,709 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:29:35,709 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-13 21:29:35,709 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-13 21:29:35,709 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:35,709 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-13 21:29:35,709 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:35,873 INFO L124 PetriNetUnfolderBase]: 409/805 cut-off events. [2025-03-13 21:29:35,873 INFO L125 PetriNetUnfolderBase]: For 33/33 co-relation queries the response was YES. [2025-03-13 21:29:35,874 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-13 21:29:35,877 INFO L140 encePairwiseOnDemand]: 28/33 looper letters, 46 selfloop transitions, 4 changer transitions 1/56 dead transitions. [2025-03-13 21:29:35,877 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 38 places, 56 transitions, 228 flow [2025-03-13 21:29:35,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:29:35,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:29:35,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 81 transitions. [2025-03-13 21:29:35,879 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6136363636363636 [2025-03-13 21:29:35,879 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 64 flow. Second operand 4 states and 81 transitions. [2025-03-13 21:29:35,879 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 38 places, 56 transitions, 228 flow [2025-03-13 21:29:35,880 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 56 transitions, 220 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:35,881 INFO L231 Difference]: Finished difference. Result has 38 places, 30 transitions, 86 flow [2025-03-13 21:29:35,881 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-13 21:29:35,882 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 1 predicate places. [2025-03-13 21:29:35,882 INFO L471 AbstractCegarLoop]: Abstraction has has 38 places, 30 transitions, 86 flow [2025-03-13 21:29:35,882 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-13 21:29:35,882 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:35,882 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-13 21:29:35,882 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:29:35,882 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-13 21:29:35,884 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:35,884 INFO L85 PathProgramCache]: Analyzing trace with hash 1096742760, now seen corresponding path program 1 times [2025-03-13 21:29:35,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:35,885 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [913450309] [2025-03-13 21:29:35,886 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:35,886 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:35,908 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-13 21:29:35,976 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-13 21:29:35,976 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:35,976 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:36,173 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-13 21:29:36,173 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:36,173 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [913450309] [2025-03-13 21:29:36,173 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [913450309] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:36,173 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:36,174 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:29:36,174 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2051041327] [2025-03-13 21:29:36,174 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:36,174 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:29:36,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:36,174 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:29:36,175 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:29:36,175 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 33 [2025-03-13 21:29:36,176 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-13 21:29:36,176 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:36,176 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 33 [2025-03-13 21:29:36,176 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:36,339 INFO L124 PetriNetUnfolderBase]: 206/396 cut-off events. [2025-03-13 21:29:36,339 INFO L125 PetriNetUnfolderBase]: For 59/59 co-relation queries the response was YES. [2025-03-13 21:29:36,340 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-13 21:29:36,343 INFO L140 encePairwiseOnDemand]: 28/33 looper letters, 36 selfloop transitions, 6 changer transitions 1/48 dead transitions. [2025-03-13 21:29:36,343 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 48 transitions, 213 flow [2025-03-13 21:29:36,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:29:36,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:29:36,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 80 transitions. [2025-03-13 21:29:36,345 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.48484848484848486 [2025-03-13 21:29:36,346 INFO L175 Difference]: Start difference. First operand has 38 places, 30 transitions, 86 flow. Second operand 5 states and 80 transitions. [2025-03-13 21:29:36,346 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 48 transitions, 213 flow [2025-03-13 21:29:36,347 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 40 places, 48 transitions, 204 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:36,348 INFO L231 Difference]: Finished difference. Result has 42 places, 30 transitions, 102 flow [2025-03-13 21:29:36,348 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-13 21:29:36,349 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 5 predicate places. [2025-03-13 21:29:36,349 INFO L471 AbstractCegarLoop]: Abstraction has has 42 places, 30 transitions, 102 flow [2025-03-13 21:29:36,350 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-13 21:29:36,350 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:36,350 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-13 21:29:36,350 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:29:36,350 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-13 21:29:36,351 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:36,351 INFO L85 PathProgramCache]: Analyzing trace with hash 1411339776, now seen corresponding path program 1 times [2025-03-13 21:29:36,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:36,351 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1063487250] [2025-03-13 21:29:36,351 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:36,351 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:36,365 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-13 21:29:36,448 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:36,449 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:36,449 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:37,971 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-13 21:29:37,972 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:37,972 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1063487250] [2025-03-13 21:29:37,972 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1063487250] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:37,973 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:37,973 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-13 21:29:37,973 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1018783340] [2025-03-13 21:29:37,973 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:37,973 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-13 21:29:37,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:37,974 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-13 21:29:37,974 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2025-03-13 21:29:37,987 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-13 21:29:37,988 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-13 21:29:37,988 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:37,988 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-13 21:29:37,988 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:38,601 INFO L124 PetriNetUnfolderBase]: 313/596 cut-off events. [2025-03-13 21:29:38,601 INFO L125 PetriNetUnfolderBase]: For 226/226 co-relation queries the response was YES. [2025-03-13 21:29:38,602 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-13 21:29:38,604 INFO L140 encePairwiseOnDemand]: 22/33 looper letters, 59 selfloop transitions, 16 changer transitions 18/97 dead transitions. [2025-03-13 21:29:38,604 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 97 transitions, 486 flow [2025-03-13 21:29:38,605 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-03-13 21:29:38,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-03-13 21:29:38,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 162 transitions. [2025-03-13 21:29:38,606 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4090909090909091 [2025-03-13 21:29:38,606 INFO L175 Difference]: Start difference. First operand has 42 places, 30 transitions, 102 flow. Second operand 12 states and 162 transitions. [2025-03-13 21:29:38,606 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 97 transitions, 486 flow [2025-03-13 21:29:38,609 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 97 transitions, 417 flow, removed 10 selfloop flow, removed 6 redundant places. [2025-03-13 21:29:38,610 INFO L231 Difference]: Finished difference. Result has 55 places, 43 transitions, 181 flow [2025-03-13 21:29:38,610 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-13 21:29:38,611 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 18 predicate places. [2025-03-13 21:29:38,611 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 43 transitions, 181 flow [2025-03-13 21:29:38,611 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-13 21:29:38,611 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:38,611 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-13 21:29:38,611 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:29:38,611 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-13 21:29:38,612 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:38,612 INFO L85 PathProgramCache]: Analyzing trace with hash -41086426, now seen corresponding path program 2 times [2025-03-13 21:29:38,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:38,612 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920296806] [2025-03-13 21:29:38,612 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:29:38,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:38,621 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 25 statements into 1 equivalence classes. [2025-03-13 21:29:38,660 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:38,660 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:29:38,661 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:38,822 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-13 21:29:38,823 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:38,823 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [920296806] [2025-03-13 21:29:38,823 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [920296806] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:38,823 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:38,823 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-13 21:29:38,823 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [995425872] [2025-03-13 21:29:38,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:38,824 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-03-13 21:29:38,824 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:38,824 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-03-13 21:29:38,824 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-03-13 21:29:38,831 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-13 21:29:38,832 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-13 21:29:38,832 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:38,832 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-13 21:29:38,832 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:39,076 INFO L124 PetriNetUnfolderBase]: 361/693 cut-off events. [2025-03-13 21:29:39,076 INFO L125 PetriNetUnfolderBase]: For 372/372 co-relation queries the response was YES. [2025-03-13 21:29:39,077 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-13 21:29:39,080 INFO L140 encePairwiseOnDemand]: 25/33 looper letters, 30 selfloop transitions, 4 changer transitions 38/76 dead transitions. [2025-03-13 21:29:39,081 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 60 places, 76 transitions, 435 flow [2025-03-13 21:29:39,081 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-13 21:29:39,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-13 21:29:39,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 108 transitions. [2025-03-13 21:29:39,083 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4090909090909091 [2025-03-13 21:29:39,083 INFO L175 Difference]: Start difference. First operand has 55 places, 43 transitions, 181 flow. Second operand 8 states and 108 transitions. [2025-03-13 21:29:39,083 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 60 places, 76 transitions, 435 flow [2025-03-13 21:29:39,085 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 57 places, 76 transitions, 423 flow, removed 3 selfloop flow, removed 3 redundant places. [2025-03-13 21:29:39,088 INFO L231 Difference]: Finished difference. Result has 61 places, 32 transitions, 132 flow [2025-03-13 21:29:39,088 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-13 21:29:39,089 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 24 predicate places. [2025-03-13 21:29:39,090 INFO L471 AbstractCegarLoop]: Abstraction has has 61 places, 32 transitions, 132 flow [2025-03-13 21:29:39,090 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-13 21:29:39,090 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:39,090 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-13 21:29:39,090 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:29:39,090 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-13 21:29:39,091 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:39,091 INFO L85 PathProgramCache]: Analyzing trace with hash 1066845208, now seen corresponding path program 3 times [2025-03-13 21:29:39,091 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:39,091 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [273822442] [2025-03-13 21:29:39,091 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:29:39,091 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:39,102 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 25 statements into 1 equivalence classes. [2025-03-13 21:29:39,140 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:39,141 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:29:39,141 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:39,519 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-13 21:29:39,520 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:39,520 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [273822442] [2025-03-13 21:29:39,520 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [273822442] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:39,520 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:39,520 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-13 21:29:39,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1452200728] [2025-03-13 21:29:39,520 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:39,520 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-03-13 21:29:39,520 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:39,521 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-03-13 21:29:39,521 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2025-03-13 21:29:39,530 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 33 [2025-03-13 21:29:39,531 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-13 21:29:39,531 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:39,531 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 33 [2025-03-13 21:29:39,531 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:39,780 INFO L124 PetriNetUnfolderBase]: 153/328 cut-off events. [2025-03-13 21:29:39,780 INFO L125 PetriNetUnfolderBase]: For 170/170 co-relation queries the response was YES. [2025-03-13 21:29:39,781 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-13 21:29:39,782 INFO L140 encePairwiseOnDemand]: 24/33 looper letters, 33 selfloop transitions, 5 changer transitions 25/67 dead transitions. [2025-03-13 21:29:39,782 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 67 transitions, 361 flow [2025-03-13 21:29:39,782 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-03-13 21:29:39,782 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2025-03-13 21:29:39,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 119 transitions. [2025-03-13 21:29:39,783 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3606060606060606 [2025-03-13 21:29:39,783 INFO L175 Difference]: Start difference. First operand has 61 places, 32 transitions, 132 flow. Second operand 10 states and 119 transitions. [2025-03-13 21:29:39,783 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 67 transitions, 361 flow [2025-03-13 21:29:39,785 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 67 transitions, 311 flow, removed 19 selfloop flow, removed 11 redundant places. [2025-03-13 21:29:39,785 INFO L231 Difference]: Finished difference. Result has 55 places, 30 transitions, 109 flow [2025-03-13 21:29:39,785 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-13 21:29:39,786 INFO L279 CegarLoopForPetriNet]: 37 programPoint places, 18 predicate places. [2025-03-13 21:29:39,786 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 30 transitions, 109 flow [2025-03-13 21:29:39,786 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-13 21:29:39,786 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:39,786 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-13 21:29:39,786 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:29:39,787 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-13 21:29:39,787 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:39,787 INFO L85 PathProgramCache]: Analyzing trace with hash 1466724926, now seen corresponding path program 4 times [2025-03-13 21:29:39,787 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:39,787 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [230716010] [2025-03-13 21:29:39,787 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-03-13 21:29:39,787 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:39,794 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 25 statements into 2 equivalence classes. [2025-03-13 21:29:39,831 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:39,831 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-03-13 21:29:39,831 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:29:39,831 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:29:39,835 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-13 21:29:39,877 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:39,877 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:39,877 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:29:39,906 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:29:39,906 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:29:39,907 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2025-03-13 21:29:39,908 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2025-03-13 21:29:39,908 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2025-03-13 21:29:39,908 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2025-03-13 21:29:39,909 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2025-03-13 21:29:39,909 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-03-13 21:29:39,909 INFO L422 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1] [2025-03-13 21:29:39,974 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:29:39,974 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:29:39,980 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:29:39 BasicIcfg [2025-03-13 21:29:39,980 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:29:39,980 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:29:39,980 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:29:39,981 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:29:39,981 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:34" (3/4) ... [2025-03-13 21:29:39,982 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:29:40,034 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-13 21:29:40,075 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:29:40,075 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:29:40,075 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:29:40,076 INFO L158 Benchmark]: Toolchain (without parser) took 6471.77ms. Allocated memory was 142.6MB in the beginning and 394.3MB in the end (delta: 251.7MB). Free memory was 103.9MB in the beginning and 226.2MB in the end (delta: -122.3MB). Peak memory consumption was 131.7MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,076 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 201.3MB. Free memory is still 128.4MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:29:40,076 INFO L158 Benchmark]: CACSL2BoogieTranslator took 350.60ms. Allocated memory is still 142.6MB. Free memory was 103.9MB in the beginning and 80.9MB in the end (delta: 23.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,077 INFO L158 Benchmark]: Boogie Procedure Inliner took 30.57ms. Allocated memory is still 142.6MB. Free memory was 80.9MB in the beginning and 78.7MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:29:40,077 INFO L158 Benchmark]: Boogie Preprocessor took 29.86ms. Allocated memory is still 142.6MB. Free memory was 78.7MB in the beginning and 75.8MB in the end (delta: 2.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,078 INFO L158 Benchmark]: IcfgBuilder took 575.08ms. Allocated memory is still 142.6MB. Free memory was 75.8MB in the beginning and 82.1MB in the end (delta: -6.3MB). Peak memory consumption was 47.9MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,078 INFO L158 Benchmark]: TraceAbstraction took 5385.79ms. Allocated memory was 142.6MB in the beginning and 394.3MB in the end (delta: 251.7MB). Free memory was 81.4MB in the beginning and 243.0MB in the end (delta: -161.6MB). Peak memory consumption was 92.2MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,078 INFO L158 Benchmark]: Witness Printer took 95.08ms. Allocated memory is still 394.3MB. Free memory was 238.8MB in the beginning and 226.2MB in the end (delta: 12.6MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,079 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.18ms. Allocated memory is still 201.3MB. Free memory is still 128.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 350.60ms. Allocated memory is still 142.6MB. Free memory was 103.9MB in the beginning and 80.9MB in the end (delta: 23.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 30.57ms. Allocated memory is still 142.6MB. Free memory was 80.9MB in the beginning and 78.7MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 29.86ms. Allocated memory is still 142.6MB. Free memory was 78.7MB in the beginning and 75.8MB in the end (delta: 2.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 575.08ms. Allocated memory is still 142.6MB. Free memory was 75.8MB in the beginning and 82.1MB in the end (delta: -6.3MB). Peak memory consumption was 47.9MB. Max. memory is 16.1GB. * TraceAbstraction took 5385.79ms. Allocated memory was 142.6MB in the beginning and 394.3MB in the end (delta: 251.7MB). Free memory was 81.4MB in the beginning and 243.0MB in the end (delta: -161.6MB). Peak memory consumption was 92.2MB. Max. memory is 16.1GB. * Witness Printer took 95.08ms. Allocated memory is still 394.3MB. Free memory was 238.8MB in the beginning and 226.2MB in the end (delta: 12.6MB). Peak memory consumption was 16.8MB. 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.2s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 1.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 311 SdHoareTripleChecker+Valid, 0.9s 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.4s SatisfiabilityAnalysisTime, 2.7s 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-13 21:29:40,097 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