./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/mix022_tso.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 023d838f Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/mix022_tso.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash c9c6cc212d45f96c9e6587b0ee0d7644c3fabb2c198a03ef385d6df2e7b46689 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-023d838-m [2024-11-10 10:13:17,305 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-10 10:13:17,367 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-10 10:13:17,391 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-10 10:13:17,392 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-10 10:13:17,424 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-10 10:13:17,425 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-10 10:13:17,425 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-10 10:13:17,426 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-10 10:13:17,426 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-10 10:13:17,426 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-10 10:13:17,427 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-10 10:13:17,427 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-10 10:13:17,427 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-10 10:13:17,428 INFO L153 SettingsManager]: * Use SBE=true [2024-11-10 10:13:17,428 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-10 10:13:17,428 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-10 10:13:17,428 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-10 10:13:17,429 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-10 10:13:17,429 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-10 10:13:17,429 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-10 10:13:17,430 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-10 10:13:17,430 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-10 10:13:17,430 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-10 10:13:17,430 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-10 10:13:17,431 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-10 10:13:17,431 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-10 10:13:17,431 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-10 10:13:17,431 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-10 10:13:17,431 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-10 10:13:17,432 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-10 10:13:17,432 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-10 10:13:17,432 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 10:13:17,432 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-10 10:13:17,433 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-10 10:13:17,434 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-10 10:13:17,434 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/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 -> c9c6cc212d45f96c9e6587b0ee0d7644c3fabb2c198a03ef385d6df2e7b46689 [2024-11-10 10:13:17,664 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-10 10:13:17,687 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-10 10:13:17,690 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-10 10:13:17,691 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-10 10:13:17,691 INFO L274 PluginConnector]: CDTParser initialized [2024-11-10 10:13:17,692 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/mix022_tso.i [2024-11-10 10:13:19,076 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-10 10:13:19,326 INFO L384 CDTParser]: Found 1 translation units. [2024-11-10 10:13:19,327 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix022_tso.i [2024-11-10 10:13:19,339 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c210f9f17/b677e6fc84f343b990c5440cb30b6724/FLAG0c9cad855 [2024-11-10 10:13:19,647 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c210f9f17/b677e6fc84f343b990c5440cb30b6724 [2024-11-10 10:13:19,649 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-10 10:13:19,650 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-10 10:13:19,651 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-10 10:13:19,651 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-10 10:13:19,655 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-10 10:13:19,656 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 10:13:19" (1/1) ... [2024-11-10 10:13:19,657 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@609205e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:19, skipping insertion in model container [2024-11-10 10:13:19,657 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 10:13:19" (1/1) ... [2024-11-10 10:13:19,700 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-10 10:13:19,867 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix022_tso.i[944,957] [2024-11-10 10:13:20,231 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 10:13:20,259 INFO L200 MainTranslator]: Completed pre-run [2024-11-10 10:13:20,283 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix022_tso.i[944,957] [2024-11-10 10:13:20,374 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 10:13:20,447 INFO L204 MainTranslator]: Completed translation [2024-11-10 10:13:20,447 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20 WrapperNode [2024-11-10 10:13:20,447 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-10 10:13:20,448 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-10 10:13:20,448 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-10 10:13:20,449 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-10 10:13:20,454 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,471 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,500 INFO L138 Inliner]: procedures = 174, calls = 35, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 145 [2024-11-10 10:13:20,501 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-10 10:13:20,502 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-10 10:13:20,502 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-10 10:13:20,502 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-10 10:13:20,515 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,516 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,519 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,545 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-11-10 10:13:20,546 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,546 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,551 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,551 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,552 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,553 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,556 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-10 10:13:20,556 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-10 10:13:20,557 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-10 10:13:20,557 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-10 10:13:20,557 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (1/1) ... [2024-11-10 10:13:20,564 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 10:13:20,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 10:13:20,586 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-10 10:13:20,588 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-10 10:13:20,622 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-11-10 10:13:20,622 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-10 10:13:20,622 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-11-10 10:13:20,623 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-11-10 10:13:20,623 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-11-10 10:13:20,623 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-11-10 10:13:20,623 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-10 10:13:20,623 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-11-10 10:13:20,623 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-10 10:13:20,623 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-10 10:13:20,625 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-11-10 10:13:20,773 INFO L256 CfgBuilder]: Building ICFG [2024-11-10 10:13:20,775 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-10 10:13:21,124 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-11-10 10:13:21,124 INFO L307 CfgBuilder]: Performing block encoding [2024-11-10 10:13:21,398 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-10 10:13:21,399 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-10 10:13:21,399 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 10:13:21 BoogieIcfgContainer [2024-11-10 10:13:21,403 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-10 10:13:21,406 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-10 10:13:21,407 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-10 10:13:21,413 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-10 10:13:21,414 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.11 10:13:19" (1/3) ... [2024-11-10 10:13:21,414 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e640a1d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 10:13:21, skipping insertion in model container [2024-11-10 10:13:21,415 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 10:13:20" (2/3) ... [2024-11-10 10:13:21,415 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3e640a1d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 10:13:21, skipping insertion in model container [2024-11-10 10:13:21,416 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 10:13:21" (3/3) ... [2024-11-10 10:13:21,417 INFO L112 eAbstractionObserver]: Analyzing ICFG mix022_tso.i [2024-11-10 10:13:21,447 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-10 10:13:21,451 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-10 10:13:21,451 INFO L489 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-11-10 10:13:21,533 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-11-10 10:13:21,601 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 31 transitions, 70 flow [2024-11-10 10:13:21,651 INFO L124 PetriNetUnfolderBase]: 1/29 cut-off events. [2024-11-10 10:13:21,651 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-10 10:13:21,655 INFO L83 FinitePrefix]: Finished finitePrefix Result has 36 conditions, 29 events. 1/29 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 43 event pairs, 0 based on Foata normal form. 0/26 useless extension candidates. Maximal degree in co-relation 29. Up to 2 conditions per place. [2024-11-10 10:13:21,655 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 31 transitions, 70 flow [2024-11-10 10:13:21,658 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 35 places, 29 transitions, 64 flow [2024-11-10 10:13:21,671 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-10 10:13:21,679 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;@331d3038, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-10 10:13:21,679 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-11-10 10:13:21,685 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-11-10 10:13:21,685 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2024-11-10 10:13:21,685 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-10 10:13:21,685 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:21,686 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2024-11-10 10:13:21,687 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:21,691 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:21,691 INFO L85 PathProgramCache]: Analyzing trace with hash 1908705397, now seen corresponding path program 1 times [2024-11-10 10:13:21,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:21,699 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [784666617] [2024-11-10 10:13:21,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:21,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:21,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:22,044 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:22,044 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:22,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [784666617] [2024-11-10 10:13:22,045 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [784666617] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:22,045 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:22,046 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-11-10 10:13:22,047 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [988259490] [2024-11-10 10:13:22,047 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:22,054 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-10 10:13:22,059 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:22,082 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-10 10:13:22,083 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-10 10:13:22,085 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2024-11-10 10:13:22,087 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 29 transitions, 64 flow. Second operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:22,087 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:22,088 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2024-11-10 10:13:22,089 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:22,451 INFO L124 PetriNetUnfolderBase]: 608/1014 cut-off events. [2024-11-10 10:13:22,452 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2024-11-10 10:13:22,456 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2031 conditions, 1014 events. 608/1014 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 52. Compared 4598 event pairs, 50 based on Foata normal form. 42/1053 useless extension candidates. Maximal degree in co-relation 2021. Up to 883 conditions per place. [2024-11-10 10:13:22,464 INFO L140 encePairwiseOnDemand]: 27/31 looper letters, 32 selfloop transitions, 2 changer transitions 2/40 dead transitions. [2024-11-10 10:13:22,465 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 40 transitions, 158 flow [2024-11-10 10:13:22,466 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-10 10:13:22,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-10 10:13:22,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 57 transitions. [2024-11-10 10:13:22,475 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6129032258064516 [2024-11-10 10:13:22,476 INFO L175 Difference]: Start difference. First operand has 35 places, 29 transitions, 64 flow. Second operand 3 states and 57 transitions. [2024-11-10 10:13:22,477 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 40 transitions, 158 flow [2024-11-10 10:13:22,480 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 40 transitions, 156 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-10 10:13:22,482 INFO L231 Difference]: Finished difference. Result has 34 places, 26 transitions, 60 flow [2024-11-10 10:13:22,484 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=58, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=25, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=60, PETRI_PLACES=34, PETRI_TRANSITIONS=26} [2024-11-10 10:13:22,488 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, -1 predicate places. [2024-11-10 10:13:22,488 INFO L471 AbstractCegarLoop]: Abstraction has has 34 places, 26 transitions, 60 flow [2024-11-10 10:13:22,488 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:22,488 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:22,489 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:22,489 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-10 10:13:22,489 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:22,490 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:22,490 INFO L85 PathProgramCache]: Analyzing trace with hash -1203981912, now seen corresponding path program 1 times [2024-11-10 10:13:22,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:22,490 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1419322105] [2024-11-10 10:13:22,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:22,490 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:22,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:22,748 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:22,748 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:22,748 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1419322105] [2024-11-10 10:13:22,748 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1419322105] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:22,748 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:22,749 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-10 10:13:22,749 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1303240190] [2024-11-10 10:13:22,749 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:22,750 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-10 10:13:22,750 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:22,750 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-10 10:13:22,750 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-10 10:13:22,753 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 31 [2024-11-10 10:13:22,754 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 34 places, 26 transitions, 60 flow. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:22,754 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:22,754 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 31 [2024-11-10 10:13:22,754 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:23,029 INFO L124 PetriNetUnfolderBase]: 703/1205 cut-off events. [2024-11-10 10:13:23,029 INFO L125 PetriNetUnfolderBase]: For 48/48 co-relation queries the response was YES. [2024-11-10 10:13:23,031 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2443 conditions, 1205 events. 703/1205 cut-off events. For 48/48 co-relation queries the response was YES. Maximal size of possible extension queue 60. Compared 5716 event pairs, 151 based on Foata normal form. 0/1172 useless extension candidates. Maximal degree in co-relation 2433. Up to 633 conditions per place. [2024-11-10 10:13:23,035 INFO L140 encePairwiseOnDemand]: 25/31 looper letters, 29 selfloop transitions, 2 changer transitions 47/81 dead transitions. [2024-11-10 10:13:23,035 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 81 transitions, 330 flow [2024-11-10 10:13:23,036 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-11-10 10:13:23,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-11-10 10:13:23,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 120 transitions. [2024-11-10 10:13:23,037 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.4838709677419355 [2024-11-10 10:13:23,037 INFO L175 Difference]: Start difference. First operand has 34 places, 26 transitions, 60 flow. Second operand 8 states and 120 transitions. [2024-11-10 10:13:23,037 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 81 transitions, 330 flow [2024-11-10 10:13:23,038 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 81 transitions, 322 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-10 10:13:23,039 INFO L231 Difference]: Finished difference. Result has 43 places, 25 transitions, 70 flow [2024-11-10 10:13:23,040 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=56, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=26, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=70, PETRI_PLACES=43, PETRI_TRANSITIONS=25} [2024-11-10 10:13:23,040 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2024-11-10 10:13:23,041 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 25 transitions, 70 flow [2024-11-10 10:13:23,041 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:23,041 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:23,041 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:23,041 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-10 10:13:23,041 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:23,042 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:23,042 INFO L85 PathProgramCache]: Analyzing trace with hash -1815759410, now seen corresponding path program 1 times [2024-11-10 10:13:23,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:23,042 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1645647245] [2024-11-10 10:13:23,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:23,042 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:23,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:23,286 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:23,287 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:23,287 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1645647245] [2024-11-10 10:13:23,287 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1645647245] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:23,287 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:23,287 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-10 10:13:23,288 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1622865384] [2024-11-10 10:13:23,288 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:23,288 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-11-10 10:13:23,288 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:23,289 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-10 10:13:23,289 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-10 10:13:23,289 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2024-11-10 10:13:23,289 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 25 transitions, 70 flow. Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:23,290 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:23,290 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2024-11-10 10:13:23,290 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:23,429 INFO L124 PetriNetUnfolderBase]: 328/608 cut-off events. [2024-11-10 10:13:23,430 INFO L125 PetriNetUnfolderBase]: For 58/58 co-relation queries the response was YES. [2024-11-10 10:13:23,431 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1356 conditions, 608 events. 328/608 cut-off events. For 58/58 co-relation queries the response was YES. Maximal size of possible extension queue 28. Compared 2523 event pairs, 86 based on Foata normal form. 42/647 useless extension candidates. Maximal degree in co-relation 1341. Up to 289 conditions per place. [2024-11-10 10:13:23,432 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 41 selfloop transitions, 4 changer transitions 1/49 dead transitions. [2024-11-10 10:13:23,432 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 49 transitions, 218 flow [2024-11-10 10:13:23,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-10 10:13:23,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-11-10 10:13:23,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 72 transitions. [2024-11-10 10:13:23,434 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5806451612903226 [2024-11-10 10:13:23,434 INFO L175 Difference]: Start difference. First operand has 43 places, 25 transitions, 70 flow. Second operand 4 states and 72 transitions. [2024-11-10 10:13:23,434 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 49 transitions, 218 flow [2024-11-10 10:13:23,436 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 49 transitions, 202 flow, removed 4 selfloop flow, removed 6 redundant places. [2024-11-10 10:13:23,437 INFO L231 Difference]: Finished difference. Result has 36 places, 27 transitions, 84 flow [2024-11-10 10:13:23,437 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=58, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=25, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=21, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=84, PETRI_PLACES=36, PETRI_TRANSITIONS=27} [2024-11-10 10:13:23,438 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 1 predicate places. [2024-11-10 10:13:23,438 INFO L471 AbstractCegarLoop]: Abstraction has has 36 places, 27 transitions, 84 flow [2024-11-10 10:13:23,438 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:23,438 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:23,439 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:23,439 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-11-10 10:13:23,439 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:23,440 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:23,440 INFO L85 PathProgramCache]: Analyzing trace with hash -1300717624, now seen corresponding path program 1 times [2024-11-10 10:13:23,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:23,440 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [721844043] [2024-11-10 10:13:23,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:23,441 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:23,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:23,704 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:23,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:23,704 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [721844043] [2024-11-10 10:13:23,705 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [721844043] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:23,705 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:23,705 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-10 10:13:23,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [6765454] [2024-11-10 10:13:23,705 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:23,706 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-10 10:13:23,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:23,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-10 10:13:23,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-11-10 10:13:23,707 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2024-11-10 10:13:23,707 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 27 transitions, 84 flow. Second operand has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:23,707 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:23,707 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2024-11-10 10:13:23,707 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:23,806 INFO L124 PetriNetUnfolderBase]: 162/312 cut-off events. [2024-11-10 10:13:23,806 INFO L125 PetriNetUnfolderBase]: For 73/73 co-relation queries the response was YES. [2024-11-10 10:13:23,807 INFO L83 FinitePrefix]: Finished finitePrefix Result has 760 conditions, 312 events. 162/312 cut-off events. For 73/73 co-relation queries the response was YES. Maximal size of possible extension queue 17. Compared 1031 event pairs, 58 based on Foata normal form. 22/331 useless extension candidates. Maximal degree in co-relation 747. Up to 131 conditions per place. [2024-11-10 10:13:23,807 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 33 selfloop transitions, 6 changer transitions 1/43 dead transitions. [2024-11-10 10:13:23,808 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 43 transitions, 202 flow [2024-11-10 10:13:23,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-10 10:13:23,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-10 10:13:23,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2024-11-10 10:13:23,809 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.4645161290322581 [2024-11-10 10:13:23,809 INFO L175 Difference]: Start difference. First operand has 36 places, 27 transitions, 84 flow. Second operand 5 states and 72 transitions. [2024-11-10 10:13:23,809 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 43 transitions, 202 flow [2024-11-10 10:13:23,810 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 37 places, 43 transitions, 188 flow, removed 2 selfloop flow, removed 3 redundant places. [2024-11-10 10:13:23,811 INFO L231 Difference]: Finished difference. Result has 39 places, 27 transitions, 96 flow [2024-11-10 10:13:23,811 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=73, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=21, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=96, PETRI_PLACES=39, PETRI_TRANSITIONS=27} [2024-11-10 10:13:23,811 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 4 predicate places. [2024-11-10 10:13:23,812 INFO L471 AbstractCegarLoop]: Abstraction has has 39 places, 27 transitions, 96 flow [2024-11-10 10:13:23,812 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.2) internal successors, (46), 5 states have internal predecessors, (46), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:23,812 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:23,812 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:23,812 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-11-10 10:13:23,812 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:23,812 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:23,812 INFO L85 PathProgramCache]: Analyzing trace with hash -1693873197, now seen corresponding path program 1 times [2024-11-10 10:13:23,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:23,813 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1718987624] [2024-11-10 10:13:23,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:23,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:23,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:24,076 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:24,077 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:24,077 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1718987624] [2024-11-10 10:13:24,077 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1718987624] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:24,078 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:24,078 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2024-11-10 10:13:24,078 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [700035758] [2024-11-10 10:13:24,078 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:24,078 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-10 10:13:24,079 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:24,079 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-10 10:13:24,079 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-10 10:13:24,082 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 31 [2024-11-10 10:13:24,082 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 39 places, 27 transitions, 96 flow. Second operand has 6 states, 6 states have (on average 8.333333333333334) internal successors, (50), 6 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:24,082 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:24,082 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 31 [2024-11-10 10:13:24,082 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:24,269 INFO L124 PetriNetUnfolderBase]: 197/384 cut-off events. [2024-11-10 10:13:24,270 INFO L125 PetriNetUnfolderBase]: For 196/196 co-relation queries the response was YES. [2024-11-10 10:13:24,272 INFO L83 FinitePrefix]: Finished finitePrefix Result has 962 conditions, 384 events. 197/384 cut-off events. For 196/196 co-relation queries the response was YES. Maximal size of possible extension queue 20. Compared 1363 event pairs, 40 based on Foata normal form. 4/386 useless extension candidates. Maximal degree in co-relation 948. Up to 223 conditions per place. [2024-11-10 10:13:24,272 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 27 selfloop transitions, 1 changer transitions 24/55 dead transitions. [2024-11-10 10:13:24,273 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 55 transitions, 298 flow [2024-11-10 10:13:24,273 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-10 10:13:24,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-10 10:13:24,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2024-11-10 10:13:24,274 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.42473118279569894 [2024-11-10 10:13:24,275 INFO L175 Difference]: Start difference. First operand has 39 places, 27 transitions, 96 flow. Second operand 6 states and 79 transitions. [2024-11-10 10:13:24,275 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 55 transitions, 298 flow [2024-11-10 10:13:24,278 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 55 transitions, 241 flow, removed 10 selfloop flow, removed 6 redundant places. [2024-11-10 10:13:24,279 INFO L231 Difference]: Finished difference. Result has 42 places, 27 transitions, 79 flow [2024-11-10 10:13:24,279 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=68, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=79, PETRI_PLACES=42, PETRI_TRANSITIONS=27} [2024-11-10 10:13:24,279 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 7 predicate places. [2024-11-10 10:13:24,279 INFO L471 AbstractCegarLoop]: Abstraction has has 42 places, 27 transitions, 79 flow [2024-11-10 10:13:24,280 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 8.333333333333334) internal successors, (50), 6 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:24,280 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:24,280 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:24,280 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-11-10 10:13:24,280 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:24,280 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:24,281 INFO L85 PathProgramCache]: Analyzing trace with hash -426155963, now seen corresponding path program 2 times [2024-11-10 10:13:24,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:24,281 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [527648639] [2024-11-10 10:13:24,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:24,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:24,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 10:13:25,311 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 10:13:25,312 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 10:13:25,312 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [527648639] [2024-11-10 10:13:25,312 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [527648639] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 10:13:25,312 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 10:13:25,312 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2024-11-10 10:13:25,313 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [328792613] [2024-11-10 10:13:25,313 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 10:13:25,314 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2024-11-10 10:13:25,314 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 10:13:25,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2024-11-10 10:13:25,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2024-11-10 10:13:25,316 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 31 [2024-11-10 10:13:25,316 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 27 transitions, 79 flow. Second operand has 10 states, 10 states have (on average 7.0) internal successors, (70), 10 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:25,316 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-10 10:13:25,316 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 31 [2024-11-10 10:13:25,316 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-10 10:13:25,758 INFO L124 PetriNetUnfolderBase]: 179/367 cut-off events. [2024-11-10 10:13:25,759 INFO L125 PetriNetUnfolderBase]: For 62/62 co-relation queries the response was YES. [2024-11-10 10:13:25,760 INFO L83 FinitePrefix]: Finished finitePrefix Result has 833 conditions, 367 events. 179/367 cut-off events. For 62/62 co-relation queries the response was YES. Maximal size of possible extension queue 18. Compared 1307 event pairs, 37 based on Foata normal form. 4/368 useless extension candidates. Maximal degree in co-relation 819. Up to 140 conditions per place. [2024-11-10 10:13:25,761 INFO L140 encePairwiseOnDemand]: 22/31 looper letters, 25 selfloop transitions, 7 changer transitions 33/68 dead transitions. [2024-11-10 10:13:25,761 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 68 transitions, 318 flow [2024-11-10 10:13:25,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-11-10 10:13:25,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2024-11-10 10:13:25,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 107 transitions. [2024-11-10 10:13:25,762 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.3835125448028674 [2024-11-10 10:13:25,763 INFO L175 Difference]: Start difference. First operand has 42 places, 27 transitions, 79 flow. Second operand 9 states and 107 transitions. [2024-11-10 10:13:25,763 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 68 transitions, 318 flow [2024-11-10 10:13:25,764 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 68 transitions, 305 flow, removed 5 selfloop flow, removed 4 redundant places. [2024-11-10 10:13:25,764 INFO L231 Difference]: Finished difference. Result has 47 places, 29 transitions, 103 flow [2024-11-10 10:13:25,764 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=21, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=103, PETRI_PLACES=47, PETRI_TRANSITIONS=29} [2024-11-10 10:13:25,765 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 12 predicate places. [2024-11-10 10:13:25,766 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 29 transitions, 103 flow [2024-11-10 10:13:25,767 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 7.0) internal successors, (70), 10 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-10 10:13:25,767 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-10 10:13:25,767 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 10:13:25,767 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-11-10 10:13:25,767 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-11-10 10:13:25,768 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 10:13:25,768 INFO L85 PathProgramCache]: Analyzing trace with hash 167955971, now seen corresponding path program 3 times [2024-11-10 10:13:25,768 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 10:13:25,769 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1513741822] [2024-11-10 10:13:25,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 10:13:25,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 10:13:25,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 10:13:25,870 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-10 10:13:25,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-10 10:13:25,967 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-10 10:13:25,968 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-11-10 10:13:25,969 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2024-11-10 10:13:25,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2024-11-10 10:13:25,971 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2024-11-10 10:13:25,972 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-11-10 10:13:25,972 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2024-11-10 10:13:25,972 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-11-10 10:13:25,972 INFO L407 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2024-11-10 10:13:26,036 INFO L239 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-11-10 10:13:26,039 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2024-11-10 10:13:26,043 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 10.11 10:13:26 BasicIcfg [2024-11-10 10:13:26,043 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-11-10 10:13:26,046 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-10 10:13:26,046 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-10 10:13:26,046 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-10 10:13:26,047 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 10:13:21" (3/4) ... [2024-11-10 10:13:26,047 INFO L137 WitnessPrinter]: Generating witness for reachability counterexample [2024-11-10 10:13:26,123 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-11-10 10:13:26,125 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-10 10:13:26,126 INFO L158 Benchmark]: Toolchain (without parser) took 6475.27ms. Allocated memory was 220.2MB in the beginning and 396.4MB in the end (delta: 176.2MB). Free memory was 149.9MB in the beginning and 247.7MB in the end (delta: -97.9MB). Peak memory consumption was 80.8MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,126 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 130.0MB. Free memory is still 96.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 10:13:26,126 INFO L158 Benchmark]: CACSL2BoogieTranslator took 796.36ms. Allocated memory is still 220.2MB. Free memory was 149.9MB in the beginning and 123.1MB in the end (delta: 26.8MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,126 INFO L158 Benchmark]: Boogie Procedure Inliner took 52.84ms. Allocated memory is still 220.2MB. Free memory was 123.1MB in the beginning and 120.1MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,126 INFO L158 Benchmark]: Boogie Preprocessor took 54.19ms. Allocated memory is still 220.2MB. Free memory was 120.1MB in the beginning and 116.4MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,127 INFO L158 Benchmark]: IcfgBuilder took 846.72ms. Allocated memory is still 220.2MB. Free memory was 116.4MB in the beginning and 139.6MB in the end (delta: -23.2MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,127 INFO L158 Benchmark]: TraceAbstraction took 4636.99ms. Allocated memory was 220.2MB in the beginning and 396.4MB in the end (delta: 176.2MB). Free memory was 139.6MB in the beginning and 257.2MB in the end (delta: -117.6MB). Peak memory consumption was 62.8MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,127 INFO L158 Benchmark]: Witness Printer took 79.09ms. Allocated memory is still 396.4MB. Free memory was 257.2MB in the beginning and 247.7MB in the end (delta: 9.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-11-10 10:13:26,128 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.16ms. Allocated memory is still 130.0MB. Free memory is still 96.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 796.36ms. Allocated memory is still 220.2MB. Free memory was 149.9MB in the beginning and 123.1MB in the end (delta: 26.8MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 52.84ms. Allocated memory is still 220.2MB. Free memory was 123.1MB in the beginning and 120.1MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 54.19ms. Allocated memory is still 220.2MB. Free memory was 120.1MB in the beginning and 116.4MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * IcfgBuilder took 846.72ms. Allocated memory is still 220.2MB. Free memory was 116.4MB in the beginning and 139.6MB in the end (delta: -23.2MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * TraceAbstraction took 4636.99ms. Allocated memory was 220.2MB in the beginning and 396.4MB in the end (delta: 176.2MB). Free memory was 139.6MB in the beginning and 257.2MB in the end (delta: -117.6MB). Peak memory consumption was 62.8MB. Max. memory is 16.1GB. * Witness Printer took 79.09ms. Allocated memory is still 396.4MB. Free memory was 257.2MB in the beginning and 247.7MB in the end (delta: 9.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L708] 0 int __unbuffered_cnt = 0; [L710] 0 int __unbuffered_p1_EAX = 0; [L712] 0 int __unbuffered_p1_EBX = 0; [L713] 0 _Bool main$tmp_guard0; [L714] 0 _Bool main$tmp_guard1; [L716] 0 int x = 0; [L717] 0 _Bool x$flush_delayed; [L718] 0 int x$mem_tmp; [L719] 0 _Bool x$r_buff0_thd0; [L720] 0 _Bool x$r_buff0_thd1; [L721] 0 _Bool x$r_buff0_thd2; [L722] 0 _Bool x$r_buff1_thd0; [L723] 0 _Bool x$r_buff1_thd1; [L724] 0 _Bool x$r_buff1_thd2; [L725] 0 _Bool x$read_delayed; [L726] 0 int *x$read_delayed_var; [L727] 0 int x$w_buff0; [L728] 0 _Bool x$w_buff0_used; [L729] 0 int x$w_buff1; [L730] 0 _Bool x$w_buff1_used; [L732] 0 int y = 0; [L733] 0 _Bool weak$$choice0; [L734] 0 _Bool weak$$choice2; [L810] 0 pthread_t t597; [L811] FCALL, FORK 0 pthread_create(&t597, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t597=-1, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L812] 0 pthread_t t598; [L813] FCALL, FORK 0 pthread_create(&t598, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t597=-1, t598=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L758] 2 x$w_buff1 = x$w_buff0 [L759] 2 x$w_buff0 = 2 [L760] 2 x$w_buff1_used = x$w_buff0_used [L761] 2 x$w_buff0_used = (_Bool)1 [L762] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L762] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L763] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L764] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L765] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L766] 2 x$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L769] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L770] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L771] 2 x$flush_delayed = weak$$choice2 [L772] 2 x$mem_tmp = x [L773] 2 x = !x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : x$w_buff1) [L774] 2 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : x$w_buff0)) [L775] 2 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff1 : x$w_buff1)) [L776] 2 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used)) [L777] 2 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L778] 2 x$r_buff0_thd2 = weak$$choice2 ? x$r_buff0_thd2 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$r_buff0_thd2 : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2)) [L779] 2 x$r_buff1_thd2 = weak$$choice2 ? x$r_buff1_thd2 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$r_buff1_thd2 : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L780] 2 __unbuffered_p1_EAX = x [L781] 2 x = x$flush_delayed ? x$mem_tmp : x [L782] 2 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L785] 2 __unbuffered_p1_EBX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L738] 1 y = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L741] 1 x = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1] [L744] 1 x = x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd1 ? x$w_buff1 : x) [L745] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L746] 1 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$w_buff1_used [L747] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L748] 1 x$r_buff1_thd1 = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$r_buff1_thd1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1] [L751] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1] [L788] 2 x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L789] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L790] 2 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$w_buff1_used [L791] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L792] 2 x$r_buff1_thd2 = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L795] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L815] 0 main$tmp_guard0 = __unbuffered_cnt == 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t597=-1, t598=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L817] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L817] RET 0 assume_abort_if_not(main$tmp_guard0) [L819] 0 x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L820] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L821] 0 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$w_buff1_used [L822] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L823] 0 x$r_buff1_thd0 = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$r_buff1_thd0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t597=-1, t598=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L826] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L827] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L828] 0 x$flush_delayed = weak$$choice2 [L829] 0 x$mem_tmp = x [L830] 0 x = !x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1) [L831] 0 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0)) [L832] 0 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1)) [L833] 0 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used)) [L834] 0 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L835] 0 x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff0_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0)) [L836] 0 x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff1_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L837] 0 main$tmp_guard1 = !(x == 2 && __unbuffered_p1_EAX == 2 && __unbuffered_p1_EBX == 0) [L838] 0 x = x$flush_delayed ? x$mem_tmp : x [L839] 0 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t597=-1, t598=0, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L841] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 811]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - UnprovableResult [Line: 813]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 49 locations, 5 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 4.4s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 235 SdHoareTripleChecker+Valid, 0.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 233 mSDsluCounter, 6 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 5 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 672 IncrementalHoareTripleChecker+Invalid, 696 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 1 mSDtfsCounter, 672 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 41 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=103occurred in iteration=6, InterpolantAutomatonStates: 35, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 2.1s InterpolantComputationTime, 120 NumberOfCodeBlocks, 120 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 91 ConstructedInterpolants, 0 QuantifiedInterpolants, 759 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 6 InterpolantComputations, 6 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2024-11-10 10:13:26,165 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE