./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread/bigshot_s2.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 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/bigshot_s2.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 fa644cc26c2bb4f900e6af52233648196eb4dff503d36a50559ddcf2a4270ffb --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 01:59:02,178 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 01:59:02,231 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-04 01:59:02,236 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 01:59:02,239 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 01:59:02,254 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 01:59:02,255 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 01:59:02,255 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 01:59:02,255 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 01:59:02,255 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 01:59:02,255 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 01:59:02,255 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 01:59:02,256 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 01:59:02,256 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 01:59:02,256 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 01:59:02,257 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 01:59:02,257 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:59:02,258 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 01:59:02,258 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 01:59:02,259 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 -> fa644cc26c2bb4f900e6af52233648196eb4dff503d36a50559ddcf2a4270ffb [2025-03-04 01:59:02,502 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 01:59:02,510 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 01:59:02,511 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 01:59:02,512 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 01:59:02,512 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 01:59:02,513 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread/bigshot_s2.i [2025-03-04 01:59:03,654 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e5b332847/4107944c82b644409e3505dd95923a8b/FLAGc99e03725 [2025-03-04 01:59:03,953 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 01:59:03,956 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread/bigshot_s2.i [2025-03-04 01:59:03,968 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e5b332847/4107944c82b644409e3505dd95923a8b/FLAGc99e03725 [2025-03-04 01:59:03,979 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e5b332847/4107944c82b644409e3505dd95923a8b [2025-03-04 01:59:03,981 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 01:59:03,982 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 01:59:03,983 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 01:59:03,983 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 01:59:03,986 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 01:59:03,986 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:59:03" (1/1) ... [2025-03-04 01:59:03,987 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@59b0b44a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:03, skipping insertion in model container [2025-03-04 01:59:03,987 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:59:03" (1/1) ... [2025-03-04 01:59:04,016 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 01:59:04,297 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/bigshot_s2.i[55203,55216] [2025-03-04 01:59:04,307 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:59:04,313 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 01:59:04,353 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/bigshot_s2.i[55203,55216] [2025-03-04 01:59:04,356 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:59:04,399 INFO L204 MainTranslator]: Completed translation [2025-03-04 01:59:04,399 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04 WrapperNode [2025-03-04 01:59:04,400 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 01:59:04,401 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 01:59:04,401 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 01:59:04,402 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 01:59:04,406 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,419 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,438 INFO L138 Inliner]: procedures = 322, calls = 23, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 57 [2025-03-04 01:59:04,438 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 01:59:04,439 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 01:59:04,439 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 01:59:04,439 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 01:59:04,444 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,445 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,446 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,459 INFO L175 MemorySlicer]: Split 13 memory accesses to 3 slices as follows [2, 2, 9]. 69 percent of accesses are in the largest equivalence class. The 10 initializations are split as follows [2, 0, 8]. The 1 writes are split as follows [0, 1, 0]. [2025-03-04 01:59:04,460 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,460 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,464 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,464 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,465 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,466 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,467 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 01:59:04,468 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 01:59:04,468 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 01:59:04,468 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 01:59:04,469 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (1/1) ... [2025-03-04 01:59:04,472 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:59:04,482 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:59:04,492 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-04 01:59:04,494 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-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#0 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#1 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#2 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-03-04 01:59:04,513 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-03-04 01:59:04,513 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-03-04 01:59:04,513 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 01:59:04,514 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-04 01:59:04,514 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-04 01:59:04,515 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-03-04 01:59:04,515 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 01:59:04,515 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 01:59:04,516 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-04 01:59:04,663 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 01:59:04,665 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 01:59:04,790 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-04 01:59:04,790 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 01:59:04,846 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 01:59:04,846 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 01:59:04,846 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:59:04 BoogieIcfgContainer [2025-03-04 01:59:04,846 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 01:59:04,848 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 01:59:04,849 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 01:59:04,852 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 01:59:04,852 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 01:59:03" (1/3) ... [2025-03-04 01:59:04,853 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@192b061d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:59:04, skipping insertion in model container [2025-03-04 01:59:04,853 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:59:04" (2/3) ... [2025-03-04 01:59:04,853 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@192b061d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:59:04, skipping insertion in model container [2025-03-04 01:59:04,853 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:59:04" (3/3) ... [2025-03-04 01:59:04,854 INFO L128 eAbstractionObserver]: Analyzing ICFG bigshot_s2.i [2025-03-04 01:59:04,864 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 01:59:04,866 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG bigshot_s2.i that has 3 procedures, 23 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-04 01:59:04,866 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-04 01:59:04,910 INFO L143 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2025-03-04 01:59:04,939 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 29 places, 26 transitions, 66 flow [2025-03-04 01:59:04,965 INFO L124 PetriNetUnfolderBase]: 4/24 cut-off events. [2025-03-04 01:59:04,968 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2025-03-04 01:59:04,971 INFO L83 FinitePrefix]: Finished finitePrefix Result has 33 conditions, 24 events. 4/24 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 18 event pairs, 0 based on Foata normal form. 0/19 useless extension candidates. Maximal degree in co-relation 22. Up to 2 conditions per place. [2025-03-04 01:59:04,971 INFO L82 GeneralOperation]: Start removeDead. Operand has 29 places, 26 transitions, 66 flow [2025-03-04 01:59:04,976 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 25 places, 21 transitions, 54 flow [2025-03-04 01:59:04,984 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 01:59:04,991 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;@596b2e89, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 01:59:04,992 INFO L334 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2025-03-04 01:59:04,997 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-04 01:59:04,997 INFO L124 PetriNetUnfolderBase]: 3/20 cut-off events. [2025-03-04 01:59:04,997 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2025-03-04 01:59:04,998 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 01:59:04,998 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 01:59:04,999 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2025-03-04 01:59:05,002 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:59:05,003 INFO L85 PathProgramCache]: Analyzing trace with hash -1783823921, now seen corresponding path program 1 times [2025-03-04 01:59:05,008 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:59:05,008 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [831809656] [2025-03-04 01:59:05,009 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:59:05,009 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:59:05,075 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 15 statements into 1 equivalence classes. [2025-03-04 01:59:05,089 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 15 of 15 statements. [2025-03-04 01:59:05,089 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:59:05,089 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:05,192 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-04 01:59:05,194 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:59:05,195 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [831809656] [2025-03-04 01:59:05,196 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [831809656] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:59:05,196 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 01:59:05,196 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-04 01:59:05,197 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [764990248] [2025-03-04 01:59:05,199 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:59:05,204 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-04 01:59:05,207 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:59:05,225 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-04 01:59:05,225 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-04 01:59:05,227 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 26 [2025-03-04 01:59:05,228 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 25 places, 21 transitions, 54 flow. Second operand has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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-04 01:59:05,229 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 01:59:05,229 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 26 [2025-03-04 01:59:05,229 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 01:59:05,269 INFO L124 PetriNetUnfolderBase]: 7/31 cut-off events. [2025-03-04 01:59:05,270 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2025-03-04 01:59:05,270 INFO L83 FinitePrefix]: Finished finitePrefix Result has 67 conditions, 31 events. 7/31 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 19 event pairs, 4 based on Foata normal form. 0/30 useless extension candidates. Maximal degree in co-relation 46. Up to 23 conditions per place. [2025-03-04 01:59:05,271 INFO L140 encePairwiseOnDemand]: 23/26 looper letters, 15 selfloop transitions, 1 changer transitions 0/20 dead transitions. [2025-03-04 01:59:05,272 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 27 places, 20 transitions, 84 flow [2025-03-04 01:59:05,274 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-04 01:59:05,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-04 01:59:05,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2025-03-04 01:59:05,282 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5 [2025-03-04 01:59:05,283 INFO L175 Difference]: Start difference. First operand has 25 places, 21 transitions, 54 flow. Second operand 3 states and 39 transitions. [2025-03-04 01:59:05,284 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 27 places, 20 transitions, 84 flow [2025-03-04 01:59:05,287 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 23 places, 20 transitions, 76 flow, removed 0 selfloop flow, removed 4 redundant places. [2025-03-04 01:59:05,288 INFO L231 Difference]: Finished difference. Result has 23 places, 19 transitions, 44 flow [2025-03-04 01:59:05,290 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=26, PETRI_DIFFERENCE_MINUEND_FLOW=42, PETRI_DIFFERENCE_MINUEND_PLACES=21, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=19, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=18, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=44, PETRI_PLACES=23, PETRI_TRANSITIONS=19} [2025-03-04 01:59:05,292 INFO L279 CegarLoopForPetriNet]: 25 programPoint places, -2 predicate places. [2025-03-04 01:59:05,292 INFO L471 AbstractCegarLoop]: Abstraction has has 23 places, 19 transitions, 44 flow [2025-03-04 01:59:05,293 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 11.0) internal successors, (33), 3 states have internal predecessors, (33), 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-04 01:59:05,293 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 01:59:05,293 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-04 01:59:05,293 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-04 01:59:05,293 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2025-03-04 01:59:05,294 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:59:05,294 INFO L85 PathProgramCache]: Analyzing trace with hash -1859118155, now seen corresponding path program 1 times [2025-03-04 01:59:05,294 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:59:05,294 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1050886351] [2025-03-04 01:59:05,294 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:59:05,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:59:05,307 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-04 01:59:05,324 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-04 01:59:05,324 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:59:05,324 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:05,572 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-04 01:59:05,573 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:59:05,573 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1050886351] [2025-03-04 01:59:05,573 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1050886351] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:59:05,573 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 01:59:05,573 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-04 01:59:05,573 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1851783079] [2025-03-04 01:59:05,573 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:59:05,574 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-04 01:59:05,574 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:59:05,575 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-04 01:59:05,575 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-04 01:59:05,577 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 26 [2025-03-04 01:59:05,577 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 23 places, 19 transitions, 44 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-04 01:59:05,577 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 01:59:05,577 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 26 [2025-03-04 01:59:05,577 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 01:59:05,657 INFO L124 PetriNetUnfolderBase]: 11/41 cut-off events. [2025-03-04 01:59:05,658 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2025-03-04 01:59:05,658 INFO L83 FinitePrefix]: Finished finitePrefix Result has 86 conditions, 41 events. 11/41 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 38 event pairs, 6 based on Foata normal form. 0/38 useless extension candidates. Maximal degree in co-relation 68. Up to 29 conditions per place. [2025-03-04 01:59:05,658 INFO L140 encePairwiseOnDemand]: 21/26 looper letters, 17 selfloop transitions, 5 changer transitions 0/25 dead transitions. [2025-03-04 01:59:05,659 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 28 places, 25 transitions, 100 flow [2025-03-04 01:59:05,660 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-04 01:59:05,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-04 01:59:05,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 65 transitions. [2025-03-04 01:59:05,660 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4166666666666667 [2025-03-04 01:59:05,660 INFO L175 Difference]: Start difference. First operand has 23 places, 19 transitions, 44 flow. Second operand 6 states and 65 transitions. [2025-03-04 01:59:05,661 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 28 places, 25 transitions, 100 flow [2025-03-04 01:59:05,661 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 27 places, 25 transitions, 99 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-03-04 01:59:05,662 INFO L231 Difference]: Finished difference. Result has 28 places, 22 transitions, 67 flow [2025-03-04 01:59:05,662 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=26, PETRI_DIFFERENCE_MINUEND_FLOW=43, PETRI_DIFFERENCE_MINUEND_PLACES=22, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=19, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=15, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=67, PETRI_PLACES=28, PETRI_TRANSITIONS=22} [2025-03-04 01:59:05,664 INFO L279 CegarLoopForPetriNet]: 25 programPoint places, 3 predicate places. [2025-03-04 01:59:05,665 INFO L471 AbstractCegarLoop]: Abstraction has has 28 places, 22 transitions, 67 flow [2025-03-04 01:59:05,665 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-04 01:59:05,665 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 01:59:05,665 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 01:59:05,666 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-04 01:59:05,666 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2025-03-04 01:59:05,667 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:59:05,668 INFO L85 PathProgramCache]: Analyzing trace with hash -2099800286, now seen corresponding path program 1 times [2025-03-04 01:59:05,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:59:05,668 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1283551124] [2025-03-04 01:59:05,668 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:59:05,668 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:59:05,676 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-03-04 01:59:05,688 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-03-04 01:59:05,689 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:59:05,689 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:05,872 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:05,872 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:59:05,872 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1283551124] [2025-03-04 01:59:05,872 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1283551124] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 01:59:05,872 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1973109377] [2025-03-04 01:59:05,873 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:59:05,873 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:59:05,873 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:59:05,876 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 01:59:05,877 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-04 01:59:05,929 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-03-04 01:59:05,951 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-03-04 01:59:05,951 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:59:05,951 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:05,953 INFO L256 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-03-04 01:59:05,956 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:59:06,058 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2025-03-04 01:59:06,075 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:06,076 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-04 01:59:06,141 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:06,141 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1973109377] provided 0 perfect and 2 imperfect interpolant sequences [2025-03-04 01:59:06,141 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-03-04 01:59:06,141 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 13 [2025-03-04 01:59:06,141 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25131609] [2025-03-04 01:59:06,141 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-03-04 01:59:06,142 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2025-03-04 01:59:06,142 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:59:06,142 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2025-03-04 01:59:06,142 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2025-03-04 01:59:06,149 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 26 [2025-03-04 01:59:06,150 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 28 places, 22 transitions, 67 flow. Second operand has 14 states, 14 states have (on average 10.071428571428571) internal successors, (141), 14 states have internal predecessors, (141), 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-04 01:59:06,150 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 01:59:06,150 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 26 [2025-03-04 01:59:06,150 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 01:59:06,280 INFO L124 PetriNetUnfolderBase]: 13/47 cut-off events. [2025-03-04 01:59:06,280 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2025-03-04 01:59:06,280 INFO L83 FinitePrefix]: Finished finitePrefix Result has 120 conditions, 47 events. 13/47 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 40 event pairs, 6 based on Foata normal form. 0/44 useless extension candidates. Maximal degree in co-relation 100. Up to 29 conditions per place. [2025-03-04 01:59:06,281 INFO L140 encePairwiseOnDemand]: 21/26 looper letters, 19 selfloop transitions, 6 changer transitions 0/28 dead transitions. [2025-03-04 01:59:06,281 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 34 places, 28 transitions, 133 flow [2025-03-04 01:59:06,281 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-03-04 01:59:06,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2025-03-04 01:59:06,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 75 transitions. [2025-03-04 01:59:06,282 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.41208791208791207 [2025-03-04 01:59:06,282 INFO L175 Difference]: Start difference. First operand has 28 places, 22 transitions, 67 flow. Second operand 7 states and 75 transitions. [2025-03-04 01:59:06,282 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 34 places, 28 transitions, 133 flow [2025-03-04 01:59:06,282 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 33 places, 28 transitions, 132 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-03-04 01:59:06,283 INFO L231 Difference]: Finished difference. Result has 35 places, 24 transitions, 96 flow [2025-03-04 01:59:06,283 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=26, PETRI_DIFFERENCE_MINUEND_FLOW=66, PETRI_DIFFERENCE_MINUEND_PLACES=27, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=22, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=16, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=96, PETRI_PLACES=35, PETRI_TRANSITIONS=24} [2025-03-04 01:59:06,284 INFO L279 CegarLoopForPetriNet]: 25 programPoint places, 10 predicate places. [2025-03-04 01:59:06,284 INFO L471 AbstractCegarLoop]: Abstraction has has 35 places, 24 transitions, 96 flow [2025-03-04 01:59:06,284 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 10.071428571428571) internal successors, (141), 14 states have internal predecessors, (141), 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-04 01:59:06,284 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 01:59:06,284 INFO L206 CegarLoopForPetriNet]: trace histogram [3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 01:59:06,293 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-04 01:59:06,484 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:59:06,485 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2025-03-04 01:59:06,486 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:59:06,487 INFO L85 PathProgramCache]: Analyzing trace with hash -1548493249, now seen corresponding path program 2 times [2025-03-04 01:59:06,487 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:59:06,487 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [359204863] [2025-03-04 01:59:06,487 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-04 01:59:06,487 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:59:06,496 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 22 statements into 2 equivalence classes. [2025-03-04 01:59:06,502 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 22 of 22 statements. [2025-03-04 01:59:06,502 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-03-04 01:59:06,502 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:06,790 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:06,790 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:59:06,790 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [359204863] [2025-03-04 01:59:06,790 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [359204863] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 01:59:06,790 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [572901462] [2025-03-04 01:59:06,790 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-04 01:59:06,790 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:59:06,790 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:59:06,793 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 01:59:06,794 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-03-04 01:59:06,842 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 22 statements into 2 equivalence classes. [2025-03-04 01:59:06,863 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 22 of 22 statements. [2025-03-04 01:59:06,863 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-03-04 01:59:06,863 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:06,864 INFO L256 TraceCheckSpWp]: Trace formula consists of 165 conjuncts, 13 conjuncts are in the unsatisfiable core [2025-03-04 01:59:06,866 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:59:06,973 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2025-03-04 01:59:06,986 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:06,986 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-04 01:59:07,079 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:07,079 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [572901462] provided 0 perfect and 2 imperfect interpolant sequences [2025-03-04 01:59:07,079 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-03-04 01:59:07,079 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 17 [2025-03-04 01:59:07,079 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1575078148] [2025-03-04 01:59:07,079 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-03-04 01:59:07,080 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2025-03-04 01:59:07,080 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:59:07,080 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2025-03-04 01:59:07,080 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=63, Invalid=243, Unknown=0, NotChecked=0, Total=306 [2025-03-04 01:59:07,088 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 26 [2025-03-04 01:59:07,088 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 24 transitions, 96 flow. Second operand has 18 states, 18 states have (on average 8.722222222222221) internal successors, (157), 18 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 01:59:07,088 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 01:59:07,088 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 26 [2025-03-04 01:59:07,088 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 01:59:07,284 INFO L124 PetriNetUnfolderBase]: 15/53 cut-off events. [2025-03-04 01:59:07,284 INFO L125 PetriNetUnfolderBase]: For 18/18 co-relation queries the response was YES. [2025-03-04 01:59:07,284 INFO L83 FinitePrefix]: Finished finitePrefix Result has 163 conditions, 53 events. 15/53 cut-off events. For 18/18 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 48 event pairs, 6 based on Foata normal form. 0/50 useless extension candidates. Maximal degree in co-relation 140. Up to 29 conditions per place. [2025-03-04 01:59:07,285 INFO L140 encePairwiseOnDemand]: 21/26 looper letters, 21 selfloop transitions, 7 changer transitions 0/31 dead transitions. [2025-03-04 01:59:07,285 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 31 transitions, 174 flow [2025-03-04 01:59:07,285 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-04 01:59:07,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-04 01:59:07,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 77 transitions. [2025-03-04 01:59:07,286 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3701923076923077 [2025-03-04 01:59:07,286 INFO L175 Difference]: Start difference. First operand has 35 places, 24 transitions, 96 flow. Second operand 8 states and 77 transitions. [2025-03-04 01:59:07,286 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 31 transitions, 174 flow [2025-03-04 01:59:07,287 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 31 transitions, 162 flow, removed 2 selfloop flow, removed 4 redundant places. [2025-03-04 01:59:07,288 INFO L231 Difference]: Finished difference. Result has 40 places, 26 transitions, 120 flow [2025-03-04 01:59:07,288 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=26, PETRI_DIFFERENCE_MINUEND_FLOW=84, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=24, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=17, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=120, PETRI_PLACES=40, PETRI_TRANSITIONS=26} [2025-03-04 01:59:07,289 INFO L279 CegarLoopForPetriNet]: 25 programPoint places, 15 predicate places. [2025-03-04 01:59:07,289 INFO L471 AbstractCegarLoop]: Abstraction has has 40 places, 26 transitions, 120 flow [2025-03-04 01:59:07,289 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 8.722222222222221) internal successors, (157), 18 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 01:59:07,289 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 01:59:07,289 INFO L206 CegarLoopForPetriNet]: trace histogram [4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 01:59:07,296 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2025-03-04 01:59:07,493 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2025-03-04 01:59:07,493 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2025-03-04 01:59:07,494 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:59:07,494 INFO L85 PathProgramCache]: Analyzing trace with hash -23408100, now seen corresponding path program 3 times [2025-03-04 01:59:07,494 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:59:07,494 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277857631] [2025-03-04 01:59:07,494 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-04 01:59:07,494 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:59:07,506 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 24 statements into 4 equivalence classes. [2025-03-04 01:59:07,515 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) and asserted 24 of 24 statements. [2025-03-04 01:59:07,515 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2025-03-04 01:59:07,515 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:08,083 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:08,084 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:59:08,084 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277857631] [2025-03-04 01:59:08,084 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [277857631] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 01:59:08,084 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [109638412] [2025-03-04 01:59:08,084 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-04 01:59:08,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:59:08,084 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:59:08,086 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 01:59:08,088 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2025-03-04 01:59:08,129 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 24 statements into 4 equivalence classes. [2025-03-04 01:59:08,150 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) and asserted 24 of 24 statements. [2025-03-04 01:59:08,150 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2025-03-04 01:59:08,150 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:59:08,151 INFO L256 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 15 conjuncts are in the unsatisfiable core [2025-03-04 01:59:08,152 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:59:08,287 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2025-03-04 01:59:08,301 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:08,301 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-04 01:59:08,411 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 01:59:08,412 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [109638412] provided 0 perfect and 2 imperfect interpolant sequences [2025-03-04 01:59:08,412 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-03-04 01:59:08,412 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7, 7] total 23 [2025-03-04 01:59:08,412 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1351439221] [2025-03-04 01:59:08,412 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-03-04 01:59:08,412 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2025-03-04 01:59:08,412 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:59:08,413 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2025-03-04 01:59:08,413 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=74, Invalid=478, Unknown=0, NotChecked=0, Total=552 [2025-03-04 01:59:08,437 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 4 out of 26 [2025-03-04 01:59:08,437 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 40 places, 26 transitions, 120 flow. Second operand has 24 states, 24 states have (on average 6.541666666666667) internal successors, (157), 24 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 01:59:08,437 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 01:59:08,438 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 4 of 26 [2025-03-04 01:59:08,438 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 01:59:08,821 INFO L124 PetriNetUnfolderBase]: 17/57 cut-off events. [2025-03-04 01:59:08,821 INFO L125 PetriNetUnfolderBase]: For 40/40 co-relation queries the response was YES. [2025-03-04 01:59:08,821 INFO L83 FinitePrefix]: Finished finitePrefix Result has 199 conditions, 57 events. 17/57 cut-off events. For 40/40 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 52 event pairs, 1 based on Foata normal form. 1/55 useless extension candidates. Maximal degree in co-relation 174. Up to 15 conditions per place. [2025-03-04 01:59:08,822 INFO L140 encePairwiseOnDemand]: 18/26 looper letters, 0 selfloop transitions, 0 changer transitions 36/36 dead transitions. [2025-03-04 01:59:08,822 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 51 places, 36 transitions, 222 flow [2025-03-04 01:59:08,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2025-03-04 01:59:08,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2025-03-04 01:59:08,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 93 transitions. [2025-03-04 01:59:08,823 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.2554945054945055 [2025-03-04 01:59:08,823 INFO L175 Difference]: Start difference. First operand has 40 places, 26 transitions, 120 flow. Second operand 14 states and 93 transitions. [2025-03-04 01:59:08,823 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 51 places, 36 transitions, 222 flow [2025-03-04 01:59:08,824 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 36 transitions, 204 flow, removed 4 selfloop flow, removed 5 redundant places. [2025-03-04 01:59:08,824 INFO L231 Difference]: Finished difference. Result has 46 places, 0 transitions, 0 flow [2025-03-04 01:59:08,824 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=26, PETRI_DIFFERENCE_MINUEND_FLOW=98, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=24, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=14, PETRI_FLOW=0, PETRI_PLACES=46, PETRI_TRANSITIONS=0} [2025-03-04 01:59:08,825 INFO L279 CegarLoopForPetriNet]: 25 programPoint places, 21 predicate places. [2025-03-04 01:59:08,825 INFO L471 AbstractCegarLoop]: Abstraction has has 46 places, 0 transitions, 0 flow [2025-03-04 01:59:08,825 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 6.541666666666667) internal successors, (157), 24 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 01:59:08,827 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (2 of 3 remaining) [2025-03-04 01:59:08,827 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 3 remaining) [2025-03-04 01:59:08,827 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 3 remaining) [2025-03-04 01:59:08,834 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2025-03-04 01:59:09,028 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:59:09,029 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1] [2025-03-04 01:59:09,031 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-04 01:59:09,031 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-04 01:59:09,034 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.03 01:59:09 BasicIcfg [2025-03-04 01:59:09,035 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-04 01:59:09,035 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-04 01:59:09,035 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-04 01:59:09,035 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-04 01:59:09,036 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:59:04" (3/4) ... [2025-03-04 01:59:09,037 INFO L146 WitnessPrinter]: Generating witness for correct program [2025-03-04 01:59:09,040 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure thread1 [2025-03-04 01:59:09,040 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure thread2 [2025-03-04 01:59:09,046 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 34 nodes and edges [2025-03-04 01:59:09,046 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 19 nodes and edges [2025-03-04 01:59:09,046 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 8 nodes and edges [2025-03-04 01:59:09,046 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 3 nodes and edges [2025-03-04 01:59:09,046 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2025-03-04 01:59:09,115 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-04 01:59:09,116 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-04 01:59:09,116 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-04 01:59:09,116 INFO L158 Benchmark]: Toolchain (without parser) took 5134.58ms. Allocated memory is still 201.3MB. Free memory was 157.2MB in the beginning and 162.9MB in the end (delta: -5.7MB). Peak memory consumption was 103.8MB. Max. memory is 16.1GB. [2025-03-04 01:59:09,116 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 201.3MB. Free memory is still 117.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:59:09,118 INFO L158 Benchmark]: CACSL2BoogieTranslator took 417.82ms. Allocated memory is still 201.3MB. Free memory was 157.2MB in the beginning and 125.1MB in the end (delta: 32.1MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-03-04 01:59:09,118 INFO L158 Benchmark]: Boogie Procedure Inliner took 36.88ms. Allocated memory is still 201.3MB. Free memory was 125.1MB in the beginning and 123.3MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:59:09,119 INFO L158 Benchmark]: Boogie Preprocessor took 28.50ms. Allocated memory is still 201.3MB. Free memory was 123.3MB in the beginning and 121.4MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:59:09,119 INFO L158 Benchmark]: IcfgBuilder took 378.84ms. Allocated memory is still 201.3MB. Free memory was 121.4MB in the beginning and 100.4MB in the end (delta: 21.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-04 01:59:09,119 INFO L158 Benchmark]: TraceAbstraction took 4186.21ms. Allocated memory is still 201.3MB. Free memory was 100.0MB in the beginning and 59.9MB in the end (delta: 40.1MB). Peak memory consumption was 36.7MB. Max. memory is 16.1GB. [2025-03-04 01:59:09,119 INFO L158 Benchmark]: Witness Printer took 80.62ms. Allocated memory is still 201.3MB. Free memory was 59.9MB in the beginning and 162.9MB in the end (delta: -103.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-04 01:59:09,121 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 201.3MB. Free memory is still 117.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 417.82ms. Allocated memory is still 201.3MB. Free memory was 157.2MB in the beginning and 125.1MB in the end (delta: 32.1MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 36.88ms. Allocated memory is still 201.3MB. Free memory was 125.1MB in the beginning and 123.3MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 28.50ms. Allocated memory is still 201.3MB. Free memory was 123.3MB in the beginning and 121.4MB in the end (delta: 1.8MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 378.84ms. Allocated memory is still 201.3MB. Free memory was 121.4MB in the beginning and 100.4MB in the end (delta: 21.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 4186.21ms. Allocated memory is still 201.3MB. Free memory was 100.0MB in the beginning and 59.9MB in the end (delta: 40.1MB). Peak memory consumption was 36.7MB. Max. memory is 16.1GB. * Witness Printer took 80.62ms. Allocated memory is still 201.3MB. Free memory was 59.9MB in the beginning and 162.9MB in the end (delta: -103.1MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 1107]: a call to reach_error is unreachable For all program executions holds that a call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 34 locations, 3 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: 4.1s, OverallIterations: 5, TraceHistogramMax: 4, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 0.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 184 SdHoareTripleChecker+Valid, 0.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 183 mSDsluCounter, 110 SdHoareTripleChecker+Invalid, 0.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 108 mSDsCounter, 9 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 686 IncrementalHoareTripleChecker+Invalid, 695 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 9 mSolverCounterUnsat, 2 mSDtfsCounter, 686 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 182 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 77 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 330 ImplicationChecksByTransitivity, 0.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=120occurred in iteration=4, InterpolantAutomatonStates: 38, 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.1s SatisfiabilityAnalysisTime, 2.1s InterpolantComputationTime, 165 NumberOfCodeBlocks, 165 NumberOfCodeBlocksAsserted, 16 NumberOfCheckSat, 220 ConstructedInterpolants, 0 QuantifiedInterpolants, 1628 SizeOfPredicates, 12 NumberOfNonLiveVariables, 495 ConjunctsInSsa, 39 ConjunctsInUnsatCore, 11 InterpolantComputations, 2 PerfectInterpolantSequences, 0/60 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 - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2025-03-04 01:59:09,135 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE