./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/weaver/parallel-misc-4.wvr.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/weaver/parallel-misc-4.wvr.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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 287b872f435ea31dbbf77f267944e24b96122b5f745db0674c91555289f3b84c --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 16:41:46,156 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 16:41:46,217 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 16:41:46,224 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 16:41:46,224 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 16:41:46,255 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 16:41:46,257 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 16:41:46,257 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 16:41:46,257 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 16:41:46,258 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 16:41:46,258 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 16:41:46,258 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 16:41:46,258 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 16:41:46,258 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 16:41:46,259 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 16:41:46,259 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 16:41:46,260 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 16:41:46,261 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:41:46,261 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:41:46,262 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:41:46,262 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 16:41:46,262 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 16:41:46,263 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 16:41:46,263 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 16:41:46,263 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-jdk21/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 -> 287b872f435ea31dbbf77f267944e24b96122b5f745db0674c91555289f3b84c [2025-01-09 16:41:46,527 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 16:41:46,537 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 16:41:46,541 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 16:41:46,542 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 16:41:46,543 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 16:41:46,544 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/weaver/parallel-misc-4.wvr.c [2025-01-09 16:41:47,809 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/b06e6e572/7aeb24306dc04e668a7cddc017139011/FLAGd3dd9153e [2025-01-09 16:41:48,060 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 16:41:48,062 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/weaver/parallel-misc-4.wvr.c [2025-01-09 16:41:48,070 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/b06e6e572/7aeb24306dc04e668a7cddc017139011/FLAGd3dd9153e [2025-01-09 16:41:48,372 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/b06e6e572/7aeb24306dc04e668a7cddc017139011 [2025-01-09 16:41:48,375 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 16:41:48,376 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 16:41:48,378 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 16:41:48,378 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 16:41:48,381 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 16:41:48,382 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,383 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6764c83d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48, skipping insertion in model container [2025-01-09 16:41:48,383 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,401 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 16:41:48,556 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/weaver/parallel-misc-4.wvr.c[2257,2270] [2025-01-09 16:41:48,559 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:41:48,569 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 16:41:48,587 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/weaver/parallel-misc-4.wvr.c[2257,2270] [2025-01-09 16:41:48,587 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:41:48,600 INFO L204 MainTranslator]: Completed translation [2025-01-09 16:41:48,600 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48 WrapperNode [2025-01-09 16:41:48,601 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 16:41:48,602 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 16:41:48,602 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 16:41:48,602 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 16:41:48,607 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,618 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,634 INFO L138 Inliner]: procedures = 19, calls = 10, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 61 [2025-01-09 16:41:48,635 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 16:41:48,636 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 16:41:48,637 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 16:41:48,637 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 16:41:48,645 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,645 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,648 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,666 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-01-09 16:41:48,666 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,666 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,674 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,674 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,681 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,682 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,683 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,684 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 16:41:48,689 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 16:41:48,689 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 16:41:48,689 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 16:41:48,690 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (1/1) ... [2025-01-09 16:41:48,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:41:48,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 16:41:48,728 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-01-09 16:41:48,734 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-01-09 16:41:48,754 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-01-09 16:41:48,754 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2025-01-09 16:41:48,754 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 16:41:48,754 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 16:41:48,755 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 16:41:48,755 WARN L203 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-01-09 16:41:48,842 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 16:41:48,844 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 16:41:49,042 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-01-09 16:41:49,043 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 16:41:49,160 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 16:41:49,161 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 16:41:49,161 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:41:49 BoogieIcfgContainer [2025-01-09 16:41:49,161 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 16:41:49,166 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 16:41:49,166 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 16:41:49,170 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 16:41:49,170 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 04:41:48" (1/3) ... [2025-01-09 16:41:49,171 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e7968b1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:41:49, skipping insertion in model container [2025-01-09 16:41:49,171 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:41:48" (2/3) ... [2025-01-09 16:41:49,171 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e7968b1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:41:49, skipping insertion in model container [2025-01-09 16:41:49,171 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:41:49" (3/3) ... [2025-01-09 16:41:49,173 INFO L128 eAbstractionObserver]: Analyzing ICFG parallel-misc-4.wvr.c [2025-01-09 16:41:49,187 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 16:41:49,189 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG parallel-misc-4.wvr.c that has 4 procedures, 37 locations, 1 initial locations, 2 loop locations, and 1 error locations. [2025-01-09 16:41:49,189 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-01-09 16:41:49,257 INFO L143 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2025-01-09 16:41:49,292 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 46 places, 40 transitions, 101 flow [2025-01-09 16:41:49,338 INFO L124 PetriNetUnfolderBase]: 4/37 cut-off events. [2025-01-09 16:41:49,342 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2025-01-09 16:41:49,345 INFO L83 FinitePrefix]: Finished finitePrefix Result has 50 conditions, 37 events. 4/37 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 73 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 31. Up to 2 conditions per place. [2025-01-09 16:41:49,346 INFO L82 GeneralOperation]: Start removeDead. Operand has 46 places, 40 transitions, 101 flow [2025-01-09 16:41:49,349 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 42 places, 36 transitions, 90 flow [2025-01-09 16:41:49,363 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 16:41:49,381 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;@77cba98f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 16:41:49,381 INFO L334 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2025-01-09 16:41:49,397 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-01-09 16:41:49,399 INFO L124 PetriNetUnfolderBase]: 4/35 cut-off events. [2025-01-09 16:41:49,400 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2025-01-09 16:41:49,400 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:49,400 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] [2025-01-09 16:41:49,401 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:49,406 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:49,406 INFO L85 PathProgramCache]: Analyzing trace with hash 877022175, now seen corresponding path program 1 times [2025-01-09 16:41:49,413 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:49,413 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2118104775] [2025-01-09 16:41:49,414 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:49,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:49,489 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-01-09 16:41:49,536 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-01-09 16:41:49,537 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:49,537 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:49,916 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:49,916 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:49,917 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2118104775] [2025-01-09 16:41:49,917 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2118104775] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:49,917 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:49,918 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-09 16:41:49,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [231077214] [2025-01-09 16:41:49,920 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:49,925 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-01-09 16:41:49,929 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:49,944 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-09 16:41:49,945 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-09 16:41:49,975 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 40 [2025-01-09 16:41:49,978 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 36 transitions, 90 flow. Second operand has 4 states, 4 states have (on average 22.5) internal successors, (90), 4 states have internal predecessors, (90), 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-01-09 16:41:49,978 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:49,979 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 40 [2025-01-09 16:41:49,979 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:50,254 INFO L124 PetriNetUnfolderBase]: 480/948 cut-off events. [2025-01-09 16:41:50,254 INFO L125 PetriNetUnfolderBase]: For 75/75 co-relation queries the response was YES. [2025-01-09 16:41:50,262 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1663 conditions, 948 events. 480/948 cut-off events. For 75/75 co-relation queries the response was YES. Maximal size of possible extension queue 88. Compared 5549 event pairs, 58 based on Foata normal form. 64/901 useless extension candidates. Maximal degree in co-relation 1486. Up to 403 conditions per place. [2025-01-09 16:41:50,271 INFO L140 encePairwiseOnDemand]: 32/40 looper letters, 39 selfloop transitions, 8 changer transitions 1/63 dead transitions. [2025-01-09 16:41:50,271 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 46 places, 63 transitions, 264 flow [2025-01-09 16:41:50,273 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-01-09 16:41:50,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-01-09 16:41:50,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 142 transitions. [2025-01-09 16:41:50,282 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.71 [2025-01-09 16:41:50,284 INFO L175 Difference]: Start difference. First operand has 42 places, 36 transitions, 90 flow. Second operand 5 states and 142 transitions. [2025-01-09 16:41:50,284 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 46 places, 63 transitions, 264 flow [2025-01-09 16:41:50,289 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 40 places, 63 transitions, 236 flow, removed 0 selfloop flow, removed 6 redundant places. [2025-01-09 16:41:50,295 INFO L231 Difference]: Finished difference. Result has 43 places, 41 transitions, 133 flow [2025-01-09 16:41:50,298 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=78, PETRI_DIFFERENCE_MINUEND_PLACES=36, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=36, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=133, PETRI_PLACES=43, PETRI_TRANSITIONS=41} [2025-01-09 16:41:50,302 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 1 predicate places. [2025-01-09 16:41:50,302 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 41 transitions, 133 flow [2025-01-09 16:41:50,303 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 22.5) internal successors, (90), 4 states have internal predecessors, (90), 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-01-09 16:41:50,303 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:50,303 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] [2025-01-09 16:41:50,303 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-01-09 16:41:50,304 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:50,305 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:50,305 INFO L85 PathProgramCache]: Analyzing trace with hash 506215435, now seen corresponding path program 2 times [2025-01-09 16:41:50,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:50,305 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [621202615] [2025-01-09 16:41:50,305 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:41:50,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:50,317 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 22 statements into 1 equivalence classes. [2025-01-09 16:41:50,322 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-01-09 16:41:50,322 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-09 16:41:50,322 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:50,369 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:50,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:50,371 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [621202615] [2025-01-09 16:41:50,371 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [621202615] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:50,371 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:50,372 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 16:41:50,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1281727011] [2025-01-09 16:41:50,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:50,373 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 16:41:50,373 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:50,373 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 16:41:50,374 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 16:41:50,383 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 40 [2025-01-09 16:41:50,384 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 41 transitions, 133 flow. Second operand has 3 states, 3 states have (on average 23.666666666666668) internal successors, (71), 3 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:41:50,384 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:50,384 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 40 [2025-01-09 16:41:50,384 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:50,559 INFO L124 PetriNetUnfolderBase]: 632/1186 cut-off events. [2025-01-09 16:41:50,559 INFO L125 PetriNetUnfolderBase]: For 844/844 co-relation queries the response was YES. [2025-01-09 16:41:50,564 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2565 conditions, 1186 events. 632/1186 cut-off events. For 844/844 co-relation queries the response was YES. Maximal size of possible extension queue 111. Compared 7025 event pairs, 189 based on Foata normal form. 92/1141 useless extension candidates. Maximal degree in co-relation 1474. Up to 594 conditions per place. [2025-01-09 16:41:50,570 INFO L140 encePairwiseOnDemand]: 34/40 looper letters, 26 selfloop transitions, 5 changer transitions 1/49 dead transitions. [2025-01-09 16:41:50,571 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 49 transitions, 222 flow [2025-01-09 16:41:50,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 16:41:50,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-01-09 16:41:50,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 84 transitions. [2025-01-09 16:41:50,572 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7 [2025-01-09 16:41:50,572 INFO L175 Difference]: Start difference. First operand has 43 places, 41 transitions, 133 flow. Second operand 3 states and 84 transitions. [2025-01-09 16:41:50,572 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 49 transitions, 222 flow [2025-01-09 16:41:50,574 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 44 places, 49 transitions, 217 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-01-09 16:41:50,575 INFO L231 Difference]: Finished difference. Result has 46 places, 43 transitions, 160 flow [2025-01-09 16:41:50,575 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=128, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=41, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=160, PETRI_PLACES=46, PETRI_TRANSITIONS=43} [2025-01-09 16:41:50,576 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 4 predicate places. [2025-01-09 16:41:50,576 INFO L471 AbstractCegarLoop]: Abstraction has has 46 places, 43 transitions, 160 flow [2025-01-09 16:41:50,576 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 23.666666666666668) internal successors, (71), 3 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:41:50,576 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:50,577 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, 1] [2025-01-09 16:41:50,577 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 16:41:50,577 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:50,577 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:50,578 INFO L85 PathProgramCache]: Analyzing trace with hash 1577088131, now seen corresponding path program 1 times [2025-01-09 16:41:50,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:50,578 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [883439245] [2025-01-09 16:41:50,578 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:50,578 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:50,586 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-01-09 16:41:50,592 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-01-09 16:41:50,592 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:50,593 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:50,671 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:50,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:50,671 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [883439245] [2025-01-09 16:41:50,672 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [883439245] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:50,672 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:50,672 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 16:41:50,672 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1996075637] [2025-01-09 16:41:50,672 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:50,672 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 16:41:50,673 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:50,673 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 16:41:50,673 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 16:41:50,677 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 40 [2025-01-09 16:41:50,677 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 46 places, 43 transitions, 160 flow. Second operand has 3 states, 3 states have (on average 24.666666666666668) internal successors, (74), 3 states have internal predecessors, (74), 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-01-09 16:41:50,677 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:50,677 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 40 [2025-01-09 16:41:50,677 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:50,899 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,899 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 37#L55-1true, 33#L46-2true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,900 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,900 INFO L294 olderBase$Statistics]: this new event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,900 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,901 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2025-01-09 16:41:50,916 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,917 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 33#L46-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,917 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,917 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,918 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 12#L56true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,918 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,918 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,918 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,918 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,920 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 8#L43-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,920 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,920 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 37#L55-1true, 33#L46-2true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,921 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,921 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,922 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, 24#thread3EXITtrue, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,922 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,922 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,923 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,923 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,932 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 41#L69-1true, 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,932 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,932 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,932 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,932 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,932 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 37#L55-1true, 33#L46-2true, Black: 51#(<= 0 ~pos~0), 39#L88-4true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,932 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 12#L56true, 41#L69-1true, 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,933 INFO L294 olderBase$Statistics]: this new event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,933 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2025-01-09 16:41:50,936 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 8#L43-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,936 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,936 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 37#L55-1true, 33#L46-2true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,937 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 25#L42true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,937 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,937 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,940 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 12#L56true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,940 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), 41#L69-1true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,941 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,941 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 37#L55-1true, 33#L46-2true, Black: 51#(<= 0 ~pos~0), 41#L69-1true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,942 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,942 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, Black: 51#(<= 0 ~pos~0), 41#L69-1true, 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,943 INFO L294 olderBase$Statistics]: this new event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,943 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,943 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,943 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,943 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 24#thread3EXITtrue, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,943 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,944 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 33#L46-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,945 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,945 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,950 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][16], [65#(<= 1 (mod ~d2~0 256)), 60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, 22#L57true, Black: 58#true]) [2025-01-09 16:41:50,951 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,951 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,951 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,951 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,951 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][37], [65#(<= 1 (mod ~d2~0 256)), 60#(<= 1 (mod ~v_assert~0 256)), 33#L46-2true, Black: 51#(<= 0 ~pos~0), 41#L69-1true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, 22#L57true, Black: 58#true]) [2025-01-09 16:41:50,952 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,952 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,952 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 33#L46-2true, 37#L55-1true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,953 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][15], [60#(<= 1 (mod ~v_assert~0 256)), 25#L42true, Black: 51#(<= 0 ~pos~0), 12#L56true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, 63#true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,953 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,953 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 25 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 24#thread3EXITtrue, 37#L55-1true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,954 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 24#thread3EXITtrue, 37#L55-1true, 33#L46-2true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:50,954 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:50,954 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,959 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][32], [60#(<= 1 (mod ~v_assert~0 256)), 8#L43-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,959 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,959 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,959 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,959 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,959 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,960 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([216] L46-->L46-2: Formula: (and (= |v_thread1Thread1of1ForFork2_#t~post2_1| (+ v_~pos~0_13 1)) (= |v_thread1Thread1of1ForFork2_#t~post2_1| v_~pos~0_14)) InVars {~pos~0=v_~pos~0_14} OutVars{thread1Thread1of1ForFork2_#t~post2=|v_thread1Thread1of1ForFork2_#t~post2_1|, ~pos~0=v_~pos~0_13} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post2, ~pos~0][46], [60#(<= 1 (mod ~v_assert~0 256)), 33#L46-2true, 37#L55-1true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 41#L69-1true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, Black: 58#true]) [2025-01-09 16:41:50,960 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:50,960 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:50,960 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:50,960 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,960 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:50,961 INFO L124 PetriNetUnfolderBase]: 1341/2305 cut-off events. [2025-01-09 16:41:50,961 INFO L125 PetriNetUnfolderBase]: For 1767/1823 co-relation queries the response was YES. [2025-01-09 16:41:50,969 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5602 conditions, 2305 events. 1341/2305 cut-off events. For 1767/1823 co-relation queries the response was YES. Maximal size of possible extension queue 190. Compared 14176 event pairs, 439 based on Foata normal form. 11/1834 useless extension candidates. Maximal degree in co-relation 3065. Up to 897 conditions per place. [2025-01-09 16:41:50,981 INFO L140 encePairwiseOnDemand]: 36/40 looper letters, 34 selfloop transitions, 3 changer transitions 0/58 dead transitions. [2025-01-09 16:41:50,982 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 58 transitions, 290 flow [2025-01-09 16:41:50,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 16:41:50,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-01-09 16:41:50,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 91 transitions. [2025-01-09 16:41:50,986 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7583333333333333 [2025-01-09 16:41:50,986 INFO L175 Difference]: Start difference. First operand has 46 places, 43 transitions, 160 flow. Second operand 3 states and 91 transitions. [2025-01-09 16:41:50,986 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 58 transitions, 290 flow [2025-01-09 16:41:50,993 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 58 transitions, 280 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-01-09 16:41:50,995 INFO L231 Difference]: Finished difference. Result has 48 places, 45 transitions, 172 flow [2025-01-09 16:41:50,995 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=150, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=172, PETRI_PLACES=48, PETRI_TRANSITIONS=45} [2025-01-09 16:41:50,997 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 6 predicate places. [2025-01-09 16:41:50,997 INFO L471 AbstractCegarLoop]: Abstraction has has 48 places, 45 transitions, 172 flow [2025-01-09 16:41:50,997 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 24.666666666666668) internal successors, (74), 3 states have internal predecessors, (74), 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-01-09 16:41:50,997 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:50,997 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, 1, 1] [2025-01-09 16:41:50,997 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 16:41:50,998 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:50,999 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:50,999 INFO L85 PathProgramCache]: Analyzing trace with hash 403476801, now seen corresponding path program 1 times [2025-01-09 16:41:50,999 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:50,999 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [618575345] [2025-01-09 16:41:51,000 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:51,000 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:51,014 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 27 statements into 1 equivalence classes. [2025-01-09 16:41:51,018 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 27 of 27 statements. [2025-01-09 16:41:51,019 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:51,019 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:51,069 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:51,069 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:51,069 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [618575345] [2025-01-09 16:41:51,069 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [618575345] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:51,069 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:51,069 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 16:41:51,070 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [40954777] [2025-01-09 16:41:51,070 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:51,070 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 16:41:51,070 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:51,071 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 16:41:51,071 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 16:41:51,075 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 40 [2025-01-09 16:41:51,076 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 45 transitions, 172 flow. Second operand has 3 states, 3 states have (on average 25.0) internal successors, (75), 3 states have internal predecessors, (75), 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-01-09 16:41:51,076 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:51,076 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 40 [2025-01-09 16:41:51,077 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:51,241 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 3#L88-3true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,242 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,242 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:51,242 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:51,242 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:51,252 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, 35#$Ultimate##0true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,252 INFO L294 olderBase$Statistics]: this new event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,253 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:51,253 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:51,253 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:51,261 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, 24#thread3EXITtrue, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,261 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,261 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,261 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,262 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,266 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, Black: 51#(<= 0 ~pos~0), 35#$Ultimate##0true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, 68#true, Black: 58#true]) [2025-01-09 16:41:51,267 INFO L294 olderBase$Statistics]: this new event has 33 ancestors and is cut-off event [2025-01-09 16:41:51,267 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:51,267 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:51,267 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:51,276 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, 24#thread3EXITtrue, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,276 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,276 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,276 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,276 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,289 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([226] L60-->L60-1: Formula: (= v_~pos~0_6 (+ v_~pos~0_5 2)) InVars {~pos~0=v_~pos~0_6} OutVars{~pos~0=v_~pos~0_5} AuxVars[] AssignedVars[~pos~0][45], [24#thread3EXITtrue, 4#L60-1true, Black: 65#(<= 1 (mod ~d2~0 256)), 33#L46-2true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,289 INFO L294 olderBase$Statistics]: this new event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,289 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,289 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,289 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,296 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([226] L60-->L60-1: Formula: (= v_~pos~0_6 (+ v_~pos~0_5 2)) InVars {~pos~0=v_~pos~0_6} OutVars{~pos~0=v_~pos~0_5} AuxVars[] AssignedVars[~pos~0][45], [Black: 65#(<= 1 (mod ~d2~0 256)), 24#thread3EXITtrue, 4#L60-1true, 33#L46-2true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 6#L89true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,296 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,297 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,297 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,297 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,298 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 51#(<= 0 ~pos~0), 41#L69-1true, 12#L56true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 63#true, 6#L89true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,298 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,298 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,298 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,298 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,299 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 24#thread3EXITtrue, 25#L42true, 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,299 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,299 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,300 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,300 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,300 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,301 INFO L292 olderBase$Statistics]: inserting event number 6 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [24#thread3EXITtrue, 25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), 39#L88-4true, Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,301 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,301 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,301 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,301 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,301 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,302 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,304 INFO L292 olderBase$Statistics]: inserting event number 5 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [24#thread3EXITtrue, 25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 51#(<= 0 ~pos~0), 12#L56true, 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 6#L89true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,305 INFO L294 olderBase$Statistics]: this new event has 36 ancestors and is cut-off event [2025-01-09 16:41:51,305 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,305 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,305 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,305 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L292 olderBase$Statistics]: inserting event number 6 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [25#L42true, 24#thread3EXITtrue, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 51#(<= 0 ~pos~0), 63#true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 6#L89true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,306 INFO L294 olderBase$Statistics]: this new event has 36 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,306 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,307 INFO L124 PetriNetUnfolderBase]: 1000/2000 cut-off events. [2025-01-09 16:41:51,307 INFO L125 PetriNetUnfolderBase]: For 1108/1213 co-relation queries the response was YES. [2025-01-09 16:41:51,316 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4689 conditions, 2000 events. 1000/2000 cut-off events. For 1108/1213 co-relation queries the response was YES. Maximal size of possible extension queue 168. Compared 13287 event pairs, 391 based on Foata normal form. 14/1764 useless extension candidates. Maximal degree in co-relation 2415. Up to 731 conditions per place. [2025-01-09 16:41:51,327 INFO L140 encePairwiseOnDemand]: 36/40 looper letters, 32 selfloop transitions, 3 changer transitions 0/58 dead transitions. [2025-01-09 16:41:51,328 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 50 places, 58 transitions, 285 flow [2025-01-09 16:41:51,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 16:41:51,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-01-09 16:41:51,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 91 transitions. [2025-01-09 16:41:51,330 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7583333333333333 [2025-01-09 16:41:51,330 INFO L175 Difference]: Start difference. First operand has 48 places, 45 transitions, 172 flow. Second operand 3 states and 91 transitions. [2025-01-09 16:41:51,331 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 50 places, 58 transitions, 285 flow [2025-01-09 16:41:51,337 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 58 transitions, 279 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-01-09 16:41:51,338 INFO L231 Difference]: Finished difference. Result has 50 places, 47 transitions, 188 flow [2025-01-09 16:41:51,338 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=166, PETRI_DIFFERENCE_MINUEND_PLACES=46, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=45, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=42, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=188, PETRI_PLACES=50, PETRI_TRANSITIONS=47} [2025-01-09 16:41:51,339 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 8 predicate places. [2025-01-09 16:41:51,340 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 47 transitions, 188 flow [2025-01-09 16:41:51,340 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 25.0) internal successors, (75), 3 states have internal predecessors, (75), 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-01-09 16:41:51,340 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:51,340 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:41:51,340 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-01-09 16:41:51,340 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:51,341 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:51,341 INFO L85 PathProgramCache]: Analyzing trace with hash -1960654089, now seen corresponding path program 1 times [2025-01-09 16:41:51,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:51,341 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [147445565] [2025-01-09 16:41:51,341 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:51,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:51,353 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 30 statements into 1 equivalence classes. [2025-01-09 16:41:51,373 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 30 of 30 statements. [2025-01-09 16:41:51,376 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:51,376 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:51,546 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:51,546 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:51,546 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [147445565] [2025-01-09 16:41:51,546 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [147445565] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:51,546 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:51,546 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-01-09 16:41:51,547 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [463343690] [2025-01-09 16:41:51,547 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:51,547 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-01-09 16:41:51,547 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:51,548 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-01-09 16:41:51,548 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-01-09 16:41:51,561 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 40 [2025-01-09 16:41:51,562 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 47 transitions, 188 flow. Second operand has 5 states, 5 states have (on average 21.0) internal successors, (105), 5 states have internal predecessors, (105), 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-01-09 16:41:51,562 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:51,562 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 40 [2025-01-09 16:41:51,562 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:51,843 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [38#L87-4true, Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,843 INFO L294 olderBase$Statistics]: this new event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,843 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:51,843 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:51,843 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,891 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, Black: 51#(<= 0 ~pos~0), 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, 3#L88-3true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,892 INFO L294 olderBase$Statistics]: this new event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,892 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,892 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:51,892 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,917 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 51#(<= 0 ~pos~0), 39#L88-4true, 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,917 INFO L294 olderBase$Statistics]: this new event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,917 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:51,917 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,917 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,943 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, Black: 70#(<= 1 (mod ~d1~0 256)), 73#true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 6#L89true, 68#true, Black: 58#true]) [2025-01-09 16:41:51,944 INFO L294 olderBase$Statistics]: this new event has 33 ancestors and is cut-off event [2025-01-09 16:41:51,944 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:51,944 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,944 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:51,966 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [Black: 65#(<= 1 (mod ~d2~0 256)), 25#L42true, 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 70#(<= 1 (mod ~d1~0 256)), Black: 51#(<= 0 ~pos~0), 39#L88-4true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, 12#L56true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), 68#true, Black: 58#true]) [2025-01-09 16:41:51,966 INFO L294 olderBase$Statistics]: this new event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,966 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:51,966 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:51,966 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,978 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [25#L42true, Black: 65#(<= 1 (mod ~d2~0 256)), Black: 70#(<= 1 (mod ~d1~0 256)), 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 51#(<= 0 ~pos~0), 12#L56true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 41#L69-1true, 6#L89true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,978 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,978 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,978 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,978 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,979 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [25#L42true, 24#thread3EXITtrue, Black: 65#(<= 1 (mod ~d2~0 256)), 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 51#(<= 0 ~pos~0), 39#L88-4true, Black: 70#(<= 1 (mod ~d1~0 256)), 12#L56true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,980 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,980 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:51,980 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:51,980 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,988 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([221] L55-1-->L56: Formula: (not (= (mod v_~v_assert~0_4 256) 0)) InVars {~v_assert~0=v_~v_assert~0_4} OutVars{~v_assert~0=v_~v_assert~0_4} AuxVars[] AssignedVars[][14], [Black: 65#(<= 1 (mod ~d2~0 256)), 24#thread3EXITtrue, 25#L42true, 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 70#(<= 1 (mod ~d1~0 256)), Black: 51#(<= 0 ~pos~0), 12#L56true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 6#L89true, 68#true, 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:51,989 INFO L294 olderBase$Statistics]: this new event has 36 ancestors and is cut-off event [2025-01-09 16:41:51,989 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:51,989 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2025-01-09 16:41:51,989 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2025-01-09 16:41:51,997 INFO L124 PetriNetUnfolderBase]: 1979/3946 cut-off events. [2025-01-09 16:41:51,997 INFO L125 PetriNetUnfolderBase]: For 3284/3448 co-relation queries the response was YES. [2025-01-09 16:41:52,014 INFO L83 FinitePrefix]: Finished finitePrefix Result has 9717 conditions, 3946 events. 1979/3946 cut-off events. For 3284/3448 co-relation queries the response was YES. Maximal size of possible extension queue 296. Compared 29945 event pairs, 395 based on Foata normal form. 157/3632 useless extension candidates. Maximal degree in co-relation 6255. Up to 932 conditions per place. [2025-01-09 16:41:52,026 INFO L140 encePairwiseOnDemand]: 31/40 looper letters, 38 selfloop transitions, 19 changer transitions 9/86 dead transitions. [2025-01-09 16:41:52,027 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 56 places, 86 transitions, 461 flow [2025-01-09 16:41:52,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-01-09 16:41:52,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2025-01-09 16:41:52,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 183 transitions. [2025-01-09 16:41:52,028 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6535714285714286 [2025-01-09 16:41:52,029 INFO L175 Difference]: Start difference. First operand has 50 places, 47 transitions, 188 flow. Second operand 7 states and 183 transitions. [2025-01-09 16:41:52,029 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 56 places, 86 transitions, 461 flow [2025-01-09 16:41:52,037 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 86 transitions, 455 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-01-09 16:41:52,039 INFO L231 Difference]: Finished difference. Result has 58 places, 58 transitions, 325 flow [2025-01-09 16:41:52,039 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=182, PETRI_DIFFERENCE_MINUEND_PLACES=48, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=47, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=10, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=325, PETRI_PLACES=58, PETRI_TRANSITIONS=58} [2025-01-09 16:41:52,042 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 16 predicate places. [2025-01-09 16:41:52,043 INFO L471 AbstractCegarLoop]: Abstraction has has 58 places, 58 transitions, 325 flow [2025-01-09 16:41:52,043 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 21.0) internal successors, (105), 5 states have internal predecessors, (105), 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-01-09 16:41:52,043 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:52,043 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:41:52,043 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-01-09 16:41:52,044 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:52,044 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:52,045 INFO L85 PathProgramCache]: Analyzing trace with hash -557050374, now seen corresponding path program 1 times [2025-01-09 16:41:52,045 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:52,046 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [444648643] [2025-01-09 16:41:52,046 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:52,046 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:52,057 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-01-09 16:41:52,070 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-09 16:41:52,070 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:52,070 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:52,263 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:52,263 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:52,263 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [444648643] [2025-01-09 16:41:52,264 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [444648643] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:52,264 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:52,264 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-01-09 16:41:52,264 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [383740039] [2025-01-09 16:41:52,264 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:52,264 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-01-09 16:41:52,265 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:52,265 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-01-09 16:41:52,265 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-01-09 16:41:52,285 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 40 [2025-01-09 16:41:52,285 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 58 places, 58 transitions, 325 flow. Second operand has 5 states, 5 states have (on average 21.0) internal successors, (105), 5 states have internal predecessors, (105), 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-01-09 16:41:52,286 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:52,286 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 40 [2025-01-09 16:41:52,286 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:52,781 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([225] L57-->L60-1: Formula: (= v_~pos~0_7 (+ v_~pos~0_8 2)) InVars {~pos~0=v_~pos~0_8} OutVars{~pos~0=v_~pos~0_7} AuxVars[] AssignedVars[~pos~0][84], [Black: 63#true, 33#L46-2true, 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), 86#true, 38#L87-4true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,781 INFO L294 olderBase$Statistics]: this new event has 35 ancestors and is cut-off event [2025-01-09 16:41:52,781 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:52,781 INFO L297 olderBase$Statistics]: existing Event has 26 ancestors and is cut-off event [2025-01-09 16:41:52,782 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:52,814 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([225] L57-->L60-1: Formula: (= v_~pos~0_7 (+ v_~pos~0_8 2)) InVars {~pos~0=v_~pos~0_8} OutVars{~pos~0=v_~pos~0_7} AuxVars[] AssignedVars[~pos~0][84], [Black: 63#true, 33#L46-2true, 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), 3#L88-3true, 86#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,815 INFO L294 olderBase$Statistics]: this new event has 36 ancestors and is cut-off event [2025-01-09 16:41:52,815 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:52,815 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:52,815 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:52,841 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([225] L57-->L60-1: Formula: (= v_~pos~0_7 (+ v_~pos~0_8 2)) InVars {~pos~0=v_~pos~0_8} OutVars{~pos~0=v_~pos~0_7} AuxVars[] AssignedVars[~pos~0][84], [Black: 63#true, 33#L46-2true, Black: 70#(<= 1 (mod ~d1~0 256)), 73#true, 86#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), 39#L88-4true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,841 INFO L294 olderBase$Statistics]: this new event has 37 ancestors and is cut-off event [2025-01-09 16:41:52,841 INFO L297 olderBase$Statistics]: existing Event has 28 ancestors and is cut-off event [2025-01-09 16:41:52,841 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:52,841 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:52,845 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), 86#true, 38#L87-4true, Black: 75#(<= 0 ~pos~0), 25#L42true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,845 INFO L294 olderBase$Statistics]: this new event has 36 ancestors and is cut-off event [2025-01-09 16:41:52,845 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:52,845 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:52,845 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:52,863 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][53], [24#thread3EXITtrue, 8#L43-2true, Black: 63#true, 73#true, Black: 68#true, 86#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,863 INFO L294 olderBase$Statistics]: this new event has 37 ancestors and is cut-off event [2025-01-09 16:41:52,863 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2025-01-09 16:41:52,863 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,863 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,865 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([225] L57-->L60-1: Formula: (= v_~pos~0_7 (+ v_~pos~0_8 2)) InVars {~pos~0=v_~pos~0_8} OutVars{~pos~0=v_~pos~0_7} AuxVars[] AssignedVars[~pos~0][84], [Black: 63#true, 33#L46-2true, Black: 70#(<= 1 (mod ~d1~0 256)), 73#true, 86#true, 6#L89true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), 35#$Ultimate##0true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,865 INFO L294 olderBase$Statistics]: this new event has 38 ancestors and is cut-off event [2025-01-09 16:41:52,865 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,865 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:52,865 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:52,868 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), 73#true, Black: 70#(<= 1 (mod ~d1~0 256)), 3#L88-3true, 86#true, Black: 75#(<= 0 ~pos~0), 25#L42true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,868 INFO L294 olderBase$Statistics]: this new event has 37 ancestors and is cut-off event [2025-01-09 16:41:52,868 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:52,868 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:52,868 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:52,879 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][53], [24#thread3EXITtrue, Black: 65#(<= 1 (mod ~d2~0 256)), 8#L43-2true, 73#true, Black: 68#true, 86#true, Black: 75#(<= 0 ~pos~0), 4#L60-1true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), 39#L88-4true, Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,879 INFO L294 olderBase$Statistics]: this new event has 38 ancestors and is cut-off event [2025-01-09 16:41:52,880 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2025-01-09 16:41:52,880 INFO L297 olderBase$Statistics]: existing Event has 29 ancestors and is cut-off event [2025-01-09 16:41:52,880 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,883 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][53], [8#L43-2true, 24#thread3EXITtrue, Black: 63#true, 73#true, Black: 68#true, 6#L89true, 86#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,883 INFO L294 olderBase$Statistics]: this new event has 38 ancestors and is cut-off event [2025-01-09 16:41:52,884 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2025-01-09 16:41:52,884 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:52,884 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:52,885 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), Black: 70#(<= 1 (mod ~d1~0 256)), 73#true, 86#true, Black: 75#(<= 0 ~pos~0), 25#L42true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), 39#L88-4true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,885 INFO L294 olderBase$Statistics]: this new event has 38 ancestors and is cut-off event [2025-01-09 16:41:52,885 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:52,885 INFO L297 olderBase$Statistics]: existing Event has 31 ancestors and is cut-off event [2025-01-09 16:41:52,885 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,897 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][53], [24#thread3EXITtrue, 8#L43-2true, Black: 65#(<= 1 (mod ~d2~0 256)), 73#true, Black: 68#true, 6#L89true, 86#true, Black: 75#(<= 0 ~pos~0), 4#L60-1true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,897 INFO L294 olderBase$Statistics]: this new event has 39 ancestors and is cut-off event [2025-01-09 16:41:52,897 INFO L297 olderBase$Statistics]: existing Event has 30 ancestors and is cut-off event [2025-01-09 16:41:52,897 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2025-01-09 16:41:52,897 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:52,901 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([211] L41-1-->L42: Formula: (not (= (mod v_~v_assert~0_1 256) 0)) InVars {~v_assert~0=v_~v_assert~0_1} OutVars{~v_assert~0=v_~v_assert~0_1} AuxVars[] AssignedVars[][9], [Black: 65#(<= 1 (mod ~d2~0 256)), Black: 70#(<= 1 (mod ~d1~0 256)), 73#true, 86#true, 6#L89true, Black: 75#(<= 0 ~pos~0), 25#L42true, Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), 35#$Ultimate##0true, Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 12#L56true, Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true]) [2025-01-09 16:41:52,901 INFO L294 olderBase$Statistics]: this new event has 39 ancestors and is cut-off event [2025-01-09 16:41:52,901 INFO L297 olderBase$Statistics]: existing Event has 34 ancestors and is cut-off event [2025-01-09 16:41:52,901 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:52,901 INFO L297 olderBase$Statistics]: existing Event has 33 ancestors and is cut-off event [2025-01-09 16:41:52,999 INFO L124 PetriNetUnfolderBase]: 2890/5968 cut-off events. [2025-01-09 16:41:53,000 INFO L125 PetriNetUnfolderBase]: For 11760/12039 co-relation queries the response was YES. [2025-01-09 16:41:53,026 INFO L83 FinitePrefix]: Finished finitePrefix Result has 16851 conditions, 5968 events. 2890/5968 cut-off events. For 11760/12039 co-relation queries the response was YES. Maximal size of possible extension queue 358. Compared 47593 event pairs, 488 based on Foata normal form. 143/5323 useless extension candidates. Maximal degree in co-relation 13709. Up to 1640 conditions per place. [2025-01-09 16:41:53,043 INFO L140 encePairwiseOnDemand]: 30/40 looper letters, 38 selfloop transitions, 19 changer transitions 39/116 dead transitions. [2025-01-09 16:41:53,043 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 64 places, 116 transitions, 862 flow [2025-01-09 16:41:53,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-01-09 16:41:53,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2025-01-09 16:41:53,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 185 transitions. [2025-01-09 16:41:53,044 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6607142857142857 [2025-01-09 16:41:53,044 INFO L175 Difference]: Start difference. First operand has 58 places, 58 transitions, 325 flow. Second operand 7 states and 185 transitions. [2025-01-09 16:41:53,044 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 64 places, 116 transitions, 862 flow [2025-01-09 16:41:53,062 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 64 places, 116 transitions, 798 flow, removed 32 selfloop flow, removed 0 redundant places. [2025-01-09 16:41:53,064 INFO L231 Difference]: Finished difference. Result has 69 places, 64 transitions, 429 flow [2025-01-09 16:41:53,064 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=307, PETRI_DIFFERENCE_MINUEND_PLACES=58, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=58, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=10, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=43, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=429, PETRI_PLACES=69, PETRI_TRANSITIONS=64} [2025-01-09 16:41:53,065 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 27 predicate places. [2025-01-09 16:41:53,065 INFO L471 AbstractCegarLoop]: Abstraction has has 69 places, 64 transitions, 429 flow [2025-01-09 16:41:53,065 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 21.0) internal successors, (105), 5 states have internal predecessors, (105), 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-01-09 16:41:53,065 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:53,065 INFO L206 CegarLoopForPetriNet]: trace histogram [3, 3, 2, 2, 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-01-09 16:41:53,066 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-01-09 16:41:53,066 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:53,066 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:53,066 INFO L85 PathProgramCache]: Analyzing trace with hash -1422199793, now seen corresponding path program 2 times [2025-01-09 16:41:53,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:53,067 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2061192145] [2025-01-09 16:41:53,067 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:41:53,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:53,075 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 34 statements into 2 equivalence classes. [2025-01-09 16:41:53,088 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 34 of 34 statements. [2025-01-09 16:41:53,089 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-09 16:41:53,089 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:53,206 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2025-01-09 16:41:53,206 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:53,206 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2061192145] [2025-01-09 16:41:53,206 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2061192145] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:53,206 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:53,206 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-09 16:41:53,207 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1148669228] [2025-01-09 16:41:53,207 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:53,207 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-01-09 16:41:53,207 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:53,207 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-09 16:41:53,207 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-09 16:41:53,212 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 40 [2025-01-09 16:41:53,212 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 69 places, 64 transitions, 429 flow. Second operand has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 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-01-09 16:41:53,212 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:53,212 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 40 [2025-01-09 16:41:53,213 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:53,663 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][23], [Black: 88#(<= 0 ~pos~0), Black: 92#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 8#L43-2true, Black: 89#(<= 1 ~pos~0), Black: 94#(and (<= 1 ~v_assert~0) (<= 1 ~pos~0) (<= (div ~v_assert~0 256) 0)), Black: 63#true, 73#true, Black: 68#true, 41#L69-1true, 86#true, 6#L89true, 100#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true, Black: 90#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0))]) [2025-01-09 16:41:53,664 INFO L294 olderBase$Statistics]: this new event has 41 ancestors and is cut-off event [2025-01-09 16:41:53,664 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2025-01-09 16:41:53,664 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2025-01-09 16:41:53,664 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2025-01-09 16:41:53,681 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][23], [Black: 88#(<= 0 ~pos~0), Black: 92#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 24#thread3EXITtrue, 8#L43-2true, Black: 89#(<= 1 ~pos~0), Black: 94#(and (<= 1 ~v_assert~0) (<= 1 ~pos~0) (<= (div ~v_assert~0 256) 0)), Black: 63#true, 73#true, Black: 68#true, 86#true, 6#L89true, 100#true, 4#L60-1true, Black: 75#(<= 0 ~pos~0), Black: 77#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 81#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 2 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 52#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0)), Black: 58#true, Black: 90#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0))]) [2025-01-09 16:41:53,682 INFO L294 olderBase$Statistics]: this new event has 42 ancestors and is cut-off event [2025-01-09 16:41:53,682 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2025-01-09 16:41:53,682 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2025-01-09 16:41:53,682 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2025-01-09 16:41:53,700 INFO L124 PetriNetUnfolderBase]: 2427/4359 cut-off events. [2025-01-09 16:41:53,701 INFO L125 PetriNetUnfolderBase]: For 16313/17026 co-relation queries the response was YES. [2025-01-09 16:41:53,721 INFO L83 FinitePrefix]: Finished finitePrefix Result has 15176 conditions, 4359 events. 2427/4359 cut-off events. For 16313/17026 co-relation queries the response was YES. Maximal size of possible extension queue 232. Compared 29763 event pairs, 730 based on Foata normal form. 81/3568 useless extension candidates. Maximal degree in co-relation 11414. Up to 1362 conditions per place. [2025-01-09 16:41:53,746 INFO L140 encePairwiseOnDemand]: 35/40 looper letters, 61 selfloop transitions, 5 changer transitions 0/98 dead transitions. [2025-01-09 16:41:53,747 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 65 places, 98 transitions, 803 flow [2025-01-09 16:41:53,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-09 16:41:53,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-01-09 16:41:53,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 124 transitions. [2025-01-09 16:41:53,748 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.775 [2025-01-09 16:41:53,748 INFO L175 Difference]: Start difference. First operand has 69 places, 64 transitions, 429 flow. Second operand 4 states and 124 transitions. [2025-01-09 16:41:53,748 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 65 places, 98 transitions, 803 flow [2025-01-09 16:41:53,777 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 60 places, 98 transitions, 729 flow, removed 37 selfloop flow, removed 5 redundant places. [2025-01-09 16:41:53,779 INFO L231 Difference]: Finished difference. Result has 63 places, 66 transitions, 435 flow [2025-01-09 16:41:53,780 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=399, PETRI_DIFFERENCE_MINUEND_PLACES=57, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=64, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=59, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=435, PETRI_PLACES=63, PETRI_TRANSITIONS=66} [2025-01-09 16:41:53,781 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 21 predicate places. [2025-01-09 16:41:53,781 INFO L471 AbstractCegarLoop]: Abstraction has has 63 places, 66 transitions, 435 flow [2025-01-09 16:41:53,781 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 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-01-09 16:41:53,781 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:53,782 INFO L206 CegarLoopForPetriNet]: trace histogram [3, 3, 2, 2, 2, 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-01-09 16:41:53,782 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-01-09 16:41:53,782 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:53,783 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:53,783 INFO L85 PathProgramCache]: Analyzing trace with hash 780044386, now seen corresponding path program 2 times [2025-01-09 16:41:53,783 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:53,783 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [147264116] [2025-01-09 16:41:53,783 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:41:53,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:53,792 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 37 statements into 2 equivalence classes. [2025-01-09 16:41:53,817 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 37 of 37 statements. [2025-01-09 16:41:53,817 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-09 16:41:53,817 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:53,938 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2025-01-09 16:41:53,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:53,939 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [147264116] [2025-01-09 16:41:53,939 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [147264116] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:41:53,939 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:41:53,939 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-09 16:41:53,939 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [137078896] [2025-01-09 16:41:53,939 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:41:53,939 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-01-09 16:41:53,939 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:53,940 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-09 16:41:53,940 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-09 16:41:53,947 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 40 [2025-01-09 16:41:53,947 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 63 places, 66 transitions, 435 flow. Second operand has 4 states, 4 states have (on average 25.0) internal successors, (100), 4 states have internal predecessors, (100), 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-01-09 16:41:53,947 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:53,947 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 40 [2025-01-09 16:41:53,947 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:54,041 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][25], [Black: 88#(<= 0 ~pos~0), Black: 92#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 8#L43-2true, Black: 63#true, 107#true, Black: 68#true, Black: 102#(= (mod ~d2~0 256) 0), Black: 103#(and (<= (div ~d2~0 256) 0) (<= 1 ~d2~0)), 6#L89true, 100#true, 51#(<= 0 ~pos~0), Black: 75#(<= 0 ~pos~0), 4#L60-1true, Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, 76#(<= 2 ~pos~0), Black: 58#true, 89#(<= 1 ~pos~0)]) [2025-01-09 16:41:54,041 INFO L294 olderBase$Statistics]: this new event has 24 ancestors and is cut-off event [2025-01-09 16:41:54,041 INFO L297 olderBase$Statistics]: existing Event has 19 ancestors and is cut-off event [2025-01-09 16:41:54,042 INFO L297 olderBase$Statistics]: existing Event has 19 ancestors and is cut-off event [2025-01-09 16:41:54,042 INFO L297 olderBase$Statistics]: existing Event has 24 ancestors and is cut-off event [2025-01-09 16:41:54,119 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([215] L43-->L43-2: Formula: (and (= (+ |v_thread1Thread1of1ForFork2_#t~post1_1| 1) v_~pos~0_17) (= |v_thread1Thread1of1ForFork2_#t~post1_1| v_~pos~0_18)) InVars {~pos~0=v_~pos~0_18} OutVars{thread1Thread1of1ForFork2_#t~post1=|v_thread1Thread1of1ForFork2_#t~post1_1|, ~pos~0=v_~pos~0_17} AuxVars[] AssignedVars[thread1Thread1of1ForFork2_#t~post1, ~pos~0][25], [Black: 88#(<= 0 ~pos~0), Black: 92#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 8#L43-2true, Black: 89#(<= 1 ~pos~0), Black: 63#true, 107#true, Black: 68#true, Black: 102#(= (mod ~d2~0 256) 0), 86#true, 6#L89true, Black: 100#true, Black: 75#(<= 0 ~pos~0), 4#L60-1true, Black: 79#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), Black: 51#(<= 0 ~pos~0), Black: 54#(and (<= 1 ~v_assert~0) (<= (div ~v_assert~0 256) 0) (<= 0 ~pos~0)), 35#$Ultimate##0true, 76#(<= 2 ~pos~0), 103#(and (<= (div ~d2~0 256) 0) (<= 1 ~d2~0)), Black: 58#true]) [2025-01-09 16:41:54,119 INFO L294 olderBase$Statistics]: this new event has 32 ancestors and is cut-off event [2025-01-09 16:41:54,119 INFO L297 olderBase$Statistics]: existing Event has 32 ancestors and is cut-off event [2025-01-09 16:41:54,119 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:54,119 INFO L297 olderBase$Statistics]: existing Event has 27 ancestors and is cut-off event [2025-01-09 16:41:54,323 INFO L124 PetriNetUnfolderBase]: 1307/2978 cut-off events. [2025-01-09 16:41:54,323 INFO L125 PetriNetUnfolderBase]: For 5007/5239 co-relation queries the response was YES. [2025-01-09 16:41:54,339 INFO L83 FinitePrefix]: Finished finitePrefix Result has 9190 conditions, 2978 events. 1307/2978 cut-off events. For 5007/5239 co-relation queries the response was YES. Maximal size of possible extension queue 170. Compared 21965 event pairs, 451 based on Foata normal form. 74/2831 useless extension candidates. Maximal degree in co-relation 6853. Up to 674 conditions per place. [2025-01-09 16:41:54,353 INFO L140 encePairwiseOnDemand]: 35/40 looper letters, 47 selfloop transitions, 5 changer transitions 0/86 dead transitions. [2025-01-09 16:41:54,353 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 66 places, 86 transitions, 603 flow [2025-01-09 16:41:54,354 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-09 16:41:54,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-01-09 16:41:54,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 120 transitions. [2025-01-09 16:41:54,355 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.75 [2025-01-09 16:41:54,355 INFO L175 Difference]: Start difference. First operand has 63 places, 66 transitions, 435 flow. Second operand 4 states and 120 transitions. [2025-01-09 16:41:54,355 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 66 places, 86 transitions, 603 flow [2025-01-09 16:41:54,362 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 66 places, 86 transitions, 603 flow, removed 0 selfloop flow, removed 0 redundant places. [2025-01-09 16:41:54,364 INFO L231 Difference]: Finished difference. Result has 69 places, 66 transitions, 454 flow [2025-01-09 16:41:54,364 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=418, PETRI_DIFFERENCE_MINUEND_PLACES=63, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=64, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=59, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=454, PETRI_PLACES=69, PETRI_TRANSITIONS=66} [2025-01-09 16:41:54,365 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 27 predicate places. [2025-01-09 16:41:54,365 INFO L471 AbstractCegarLoop]: Abstraction has has 69 places, 66 transitions, 454 flow [2025-01-09 16:41:54,365 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 25.0) internal successors, (100), 4 states have internal predecessors, (100), 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-01-09 16:41:54,365 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:54,366 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:41:54,366 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2025-01-09 16:41:54,366 INFO L396 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:54,366 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:54,367 INFO L85 PathProgramCache]: Analyzing trace with hash 2109068726, now seen corresponding path program 1 times [2025-01-09 16:41:54,367 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:54,367 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980207799] [2025-01-09 16:41:54,367 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:54,367 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:54,402 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 40 statements into 1 equivalence classes. [2025-01-09 16:41:54,412 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 40 of 40 statements. [2025-01-09 16:41:54,412 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:54,412 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:54,577 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:54,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:54,578 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1980207799] [2025-01-09 16:41:54,578 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1980207799] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 16:41:54,578 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [307397862] [2025-01-09 16:41:54,578 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:41:54,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 16:41:54,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 16:41:54,582 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-09 16:41:54,583 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-01-09 16:41:54,631 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 40 statements into 1 equivalence classes. [2025-01-09 16:41:54,651 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 40 of 40 statements. [2025-01-09 16:41:54,652 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:41:54,652 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:54,656 INFO L256 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 13 conjuncts are in the unsatisfiable core [2025-01-09 16:41:54,661 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 16:41:54,842 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:54,842 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 16:41:55,007 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:55,008 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [307397862] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 16:41:55,008 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-09 16:41:55,008 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 9, 7] total 12 [2025-01-09 16:41:55,008 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [704805993] [2025-01-09 16:41:55,008 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-09 16:41:55,008 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2025-01-09 16:41:55,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:55,011 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-01-09 16:41:55,011 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2025-01-09 16:41:55,031 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 40 [2025-01-09 16:41:55,032 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 69 places, 66 transitions, 454 flow. Second operand has 12 states, 12 states have (on average 16.25) internal successors, (195), 12 states have internal predecessors, (195), 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-01-09 16:41:55,032 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:55,032 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 40 [2025-01-09 16:41:55,032 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:56,557 INFO L124 PetriNetUnfolderBase]: 6927/12321 cut-off events. [2025-01-09 16:41:56,557 INFO L125 PetriNetUnfolderBase]: For 32790/32830 co-relation queries the response was YES. [2025-01-09 16:41:56,623 INFO L83 FinitePrefix]: Finished finitePrefix Result has 44744 conditions, 12321 events. 6927/12321 cut-off events. For 32790/32830 co-relation queries the response was YES. Maximal size of possible extension queue 475. Compared 90331 event pairs, 697 based on Foata normal form. 236/12475 useless extension candidates. Maximal degree in co-relation 36604. Up to 2586 conditions per place. [2025-01-09 16:41:56,670 INFO L140 encePairwiseOnDemand]: 27/40 looper letters, 93 selfloop transitions, 55 changer transitions 77/238 dead transitions. [2025-01-09 16:41:56,670 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 84 places, 238 transitions, 1962 flow [2025-01-09 16:41:56,670 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2025-01-09 16:41:56,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2025-01-09 16:41:56,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 352 transitions. [2025-01-09 16:41:56,673 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.55 [2025-01-09 16:41:56,673 INFO L175 Difference]: Start difference. First operand has 69 places, 66 transitions, 454 flow. Second operand 16 states and 352 transitions. [2025-01-09 16:41:56,673 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 84 places, 238 transitions, 1962 flow [2025-01-09 16:41:56,801 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 84 places, 238 transitions, 1962 flow, removed 0 selfloop flow, removed 0 redundant places. [2025-01-09 16:41:56,804 INFO L231 Difference]: Finished difference. Result has 93 places, 103 transitions, 1018 flow [2025-01-09 16:41:56,805 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=454, PETRI_DIFFERENCE_MINUEND_PLACES=69, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=66, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=24, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=16, PETRI_FLOW=1018, PETRI_PLACES=93, PETRI_TRANSITIONS=103} [2025-01-09 16:41:56,806 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 51 predicate places. [2025-01-09 16:41:56,806 INFO L471 AbstractCegarLoop]: Abstraction has has 93 places, 103 transitions, 1018 flow [2025-01-09 16:41:56,807 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 16.25) internal successors, (195), 12 states have internal predecessors, (195), 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-01-09 16:41:56,807 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:41:56,807 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:41:56,815 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-01-09 16:41:57,007 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 16:41:57,009 INFO L396 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-01-09 16:41:57,010 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:41:57,010 INFO L85 PathProgramCache]: Analyzing trace with hash -1524766722, now seen corresponding path program 2 times [2025-01-09 16:41:57,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:41:57,011 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [204093693] [2025-01-09 16:41:57,011 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:41:57,011 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:41:57,020 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 40 statements into 2 equivalence classes. [2025-01-09 16:41:57,038 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 40 of 40 statements. [2025-01-09 16:41:57,039 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-09 16:41:57,039 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:57,245 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:57,248 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:41:57,248 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [204093693] [2025-01-09 16:41:57,248 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [204093693] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 16:41:57,248 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [958656044] [2025-01-09 16:41:57,248 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:41:57,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 16:41:57,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 16:41:57,250 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-09 16:41:57,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-01-09 16:41:57,305 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 40 statements into 2 equivalence classes. [2025-01-09 16:41:57,335 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 40 of 40 statements. [2025-01-09 16:41:57,336 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-09 16:41:57,336 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:41:57,337 INFO L256 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 10 conjuncts are in the unsatisfiable core [2025-01-09 16:41:57,339 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 16:41:57,423 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:57,423 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 16:41:57,538 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:41:57,538 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [958656044] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 16:41:57,538 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-09 16:41:57,538 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 7] total 10 [2025-01-09 16:41:57,538 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [791313686] [2025-01-09 16:41:57,538 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-09 16:41:57,538 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-01-09 16:41:57,539 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:41:57,539 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-01-09 16:41:57,539 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=63, Unknown=0, NotChecked=0, Total=90 [2025-01-09 16:41:57,561 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 15 out of 40 [2025-01-09 16:41:57,562 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 93 places, 103 transitions, 1018 flow. Second operand has 10 states, 10 states have (on average 19.2) internal successors, (192), 10 states have internal predecessors, (192), 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-01-09 16:41:57,562 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:41:57,562 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 15 of 40 [2025-01-09 16:41:57,562 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:41:58,494 INFO L124 PetriNetUnfolderBase]: 2781/6032 cut-off events. [2025-01-09 16:41:58,495 INFO L125 PetriNetUnfolderBase]: For 36125/36225 co-relation queries the response was YES. [2025-01-09 16:41:58,521 INFO L83 FinitePrefix]: Finished finitePrefix Result has 25610 conditions, 6032 events. 2781/6032 cut-off events. For 36125/36225 co-relation queries the response was YES. Maximal size of possible extension queue 248. Compared 47662 event pairs, 143 based on Foata normal form. 212/6206 useless extension candidates. Maximal degree in co-relation 25580. Up to 1658 conditions per place. [2025-01-09 16:41:58,530 INFO L140 encePairwiseOnDemand]: 30/40 looper letters, 0 selfloop transitions, 0 changer transitions 190/190 dead transitions. [2025-01-09 16:41:58,530 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 92 places, 190 transitions, 2110 flow [2025-01-09 16:41:58,530 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-01-09 16:41:58,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-01-09 16:41:58,532 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 269 transitions. [2025-01-09 16:41:58,532 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5604166666666667 [2025-01-09 16:41:58,532 INFO L175 Difference]: Start difference. First operand has 93 places, 103 transitions, 1018 flow. Second operand 12 states and 269 transitions. [2025-01-09 16:41:58,532 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 92 places, 190 transitions, 2110 flow [2025-01-09 16:41:58,647 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 83 places, 190 transitions, 1811 flow, removed 144 selfloop flow, removed 9 redundant places. [2025-01-09 16:41:58,650 INFO L231 Difference]: Finished difference. Result has 83 places, 0 transitions, 0 flow [2025-01-09 16:41:58,650 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=40, PETRI_DIFFERENCE_MINUEND_FLOW=851, PETRI_DIFFERENCE_MINUEND_PLACES=72, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=97, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=97, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=0, PETRI_PLACES=83, PETRI_TRANSITIONS=0} [2025-01-09 16:41:58,650 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 41 predicate places. [2025-01-09 16:41:58,651 INFO L471 AbstractCegarLoop]: Abstraction has has 83 places, 0 transitions, 0 flow [2025-01-09 16:41:58,652 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 19.2) internal successors, (192), 10 states have internal predecessors, (192), 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-01-09 16:41:58,654 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2025-01-09 16:41:58,655 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2025-01-09 16:41:58,655 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2025-01-09 16:41:58,655 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2025-01-09 16:41:58,662 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2025-01-09 16:41:58,859 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9,3 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 16:41:58,859 INFO L422 BasicCegarLoop]: Path program histogram: [2, 2, 2, 2, 1, 1] [2025-01-09 16:41:58,862 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-01-09 16:41:58,862 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 16:41:58,866 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 04:41:58 BasicIcfg [2025-01-09 16:41:58,866 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 16:41:58,867 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 16:41:58,867 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 16:41:58,867 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 16:41:58,868 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:41:49" (3/4) ... [2025-01-09 16:41:58,869 INFO L146 WitnessPrinter]: Generating witness for correct program [2025-01-09 16:41:58,871 INFO L362 RCFGBacktranslator]: Ignoring RootEdge to procedure thread1 [2025-01-09 16:41:58,871 INFO L362 RCFGBacktranslator]: Ignoring RootEdge to procedure thread2 [2025-01-09 16:41:58,871 INFO L362 RCFGBacktranslator]: Ignoring RootEdge to procedure thread3 [2025-01-09 16:41:58,875 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 49 nodes and edges [2025-01-09 16:41:58,876 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 15 nodes and edges [2025-01-09 16:41:58,876 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 6 nodes and edges [2025-01-09 16:41:58,876 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2025-01-09 16:41:58,956 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-01-09 16:41:58,957 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.yml [2025-01-09 16:41:58,957 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 16:41:58,957 INFO L158 Benchmark]: Toolchain (without parser) took 10581.13ms. Allocated memory was 142.6MB in the beginning and 729.8MB in the end (delta: 587.2MB). Free memory was 113.2MB in the beginning and 178.4MB in the end (delta: -65.2MB). Peak memory consumption was 518.0MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,958 INFO L158 Benchmark]: CDTParser took 0.25ms. Allocated memory is still 201.3MB. Free memory is still 123.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:41:58,959 INFO L158 Benchmark]: CACSL2BoogieTranslator took 223.55ms. Allocated memory is still 142.6MB. Free memory was 113.2MB in the beginning and 101.6MB in the end (delta: 11.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,960 INFO L158 Benchmark]: Boogie Procedure Inliner took 33.81ms. Allocated memory is still 142.6MB. Free memory was 101.6MB in the beginning and 100.6MB in the end (delta: 980.9kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:41:58,960 INFO L158 Benchmark]: Boogie Preprocessor took 48.30ms. Allocated memory is still 142.6MB. Free memory was 100.6MB in the beginning and 98.9MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,960 INFO L158 Benchmark]: RCFGBuilder took 472.16ms. Allocated memory is still 142.6MB. Free memory was 98.9MB in the beginning and 79.2MB in the end (delta: 19.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,961 INFO L158 Benchmark]: TraceAbstraction took 9700.36ms. Allocated memory was 142.6MB in the beginning and 729.8MB in the end (delta: 587.2MB). Free memory was 78.7MB in the beginning and 185.4MB in the end (delta: -106.7MB). Peak memory consumption was 476.0MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,961 INFO L158 Benchmark]: Witness Printer took 89.82ms. Allocated memory is still 729.8MB. Free memory was 185.4MB in the beginning and 178.4MB in the end (delta: 7.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 16:41:58,963 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.25ms. Allocated memory is still 201.3MB. Free memory is still 123.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 223.55ms. Allocated memory is still 142.6MB. Free memory was 113.2MB in the beginning and 101.6MB in the end (delta: 11.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 33.81ms. Allocated memory is still 142.6MB. Free memory was 101.6MB in the beginning and 100.6MB in the end (delta: 980.9kB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 48.30ms. Allocated memory is still 142.6MB. Free memory was 100.6MB in the beginning and 98.9MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * RCFGBuilder took 472.16ms. Allocated memory is still 142.6MB. Free memory was 98.9MB in the beginning and 79.2MB in the end (delta: 19.7MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 9700.36ms. Allocated memory was 142.6MB in the beginning and 729.8MB in the end (delta: 587.2MB). Free memory was 78.7MB in the beginning and 185.4MB in the end (delta: -106.7MB). Peak memory consumption was 476.0MB. Max. memory is 16.1GB. * Witness Printer took 89.82ms. Allocated memory is still 729.8MB. Free memory was 185.4MB in the beginning and 178.4MB in the end (delta: 7.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 93]: 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 7 procedures, 60 locations, 4 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: 9.6s, OverallIterations: 10, TraceHistogramMax: 3, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 6.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 405 SdHoareTripleChecker+Valid, 1.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 374 mSDsluCounter, 56 SdHoareTripleChecker+Invalid, 1.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 43 mSDsCounter, 68 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1304 IncrementalHoareTripleChecker+Invalid, 1372 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 68 mSolverCounterUnsat, 13 mSDtfsCounter, 1304 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 239 GetRequests, 169 SyntacticMatches, 10 SemanticMatches, 60 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 213 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=1018occurred in iteration=9, InterpolantAutomatonStates: 64, 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.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 2.1s InterpolantComputationTime, 390 NumberOfCodeBlocks, 390 NumberOfCodeBlocksAsserted, 16 NumberOfCheckSat, 456 ConstructedInterpolants, 0 QuantifiedInterpolants, 1182 SizeOfPredicates, 12 NumberOfNonLiveVariables, 338 ConjunctsInSsa, 23 ConjunctsInUnsatCore, 14 InterpolantComputations, 8 PerfectInterpolantSequences, 34/40 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-01-09 16:41:58,978 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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