./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/rfi007_tso.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c7c6ca5d 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/rfi007_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 62e921ac3b02bdecb866366797768eb8fcdb22a87147dc14adf7fddb42ab9cb2 --- Real Ultimate output --- This is Ultimate 0.2.5-?-c7c6ca5-m [2024-11-09 02:31:05,834 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-09 02:31:05,879 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-09 02:31:05,882 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-09 02:31:05,883 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-09 02:31:05,899 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-09 02:31:05,900 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-09 02:31:05,900 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-09 02:31:05,901 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-09 02:31:05,901 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-09 02:31:05,901 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-09 02:31:05,902 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-09 02:31:05,902 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-09 02:31:05,902 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-09 02:31:05,903 INFO L153 SettingsManager]: * Use SBE=true [2024-11-09 02:31:05,903 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-09 02:31:05,903 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-09 02:31:05,904 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-09 02:31:05,904 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-09 02:31:05,904 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-09 02:31:05,905 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-09 02:31:05,905 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-09 02:31:05,905 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-09 02:31:05,906 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-09 02:31:05,906 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-09 02:31:05,906 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-09 02:31:05,906 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-09 02:31:05,907 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-09 02:31:05,907 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-09 02:31:05,907 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-09 02:31:05,908 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-09 02:31:05,908 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-09 02:31:05,908 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 02:31:05,908 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-09 02:31:05,908 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-09 02:31:05,909 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-09 02:31:05,909 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-09 02:31:05,918 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-09 02:31:05,919 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-09 02:31:05,919 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-09 02:31:05,919 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-09 02:31:05,920 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-09 02:31:05,920 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 -> 62e921ac3b02bdecb866366797768eb8fcdb22a87147dc14adf7fddb42ab9cb2 [2024-11-09 02:31:06,121 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-09 02:31:06,149 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-09 02:31:06,153 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-09 02:31:06,154 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-09 02:31:06,155 INFO L274 PluginConnector]: CDTParser initialized [2024-11-09 02:31:06,156 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/rfi007_tso.i [2024-11-09 02:31:07,679 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-09 02:31:07,917 INFO L384 CDTParser]: Found 1 translation units. [2024-11-09 02:31:07,917 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi007_tso.i [2024-11-09 02:31:07,929 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0c4b66880/ebe3d6cc0bda4b22ae1dcab0741df31e/FLAG696168f0d [2024-11-09 02:31:07,940 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0c4b66880/ebe3d6cc0bda4b22ae1dcab0741df31e [2024-11-09 02:31:07,942 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-09 02:31:07,944 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-09 02:31:07,945 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-09 02:31:07,945 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-09 02:31:07,949 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-09 02:31:07,951 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 02:31:07" (1/1) ... [2024-11-09 02:31:07,952 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6345e1fa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:07, skipping insertion in model container [2024-11-09 02:31:07,954 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 02:31:07" (1/1) ... [2024-11-09 02:31:08,001 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-09 02:31:08,196 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/rfi007_tso.i[944,957] [2024-11-09 02:31:08,364 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 02:31:08,378 INFO L200 MainTranslator]: Completed pre-run [2024-11-09 02:31:08,390 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/rfi007_tso.i[944,957] [2024-11-09 02:31:08,420 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 02:31:08,449 INFO L204 MainTranslator]: Completed translation [2024-11-09 02:31:08,450 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08 WrapperNode [2024-11-09 02:31:08,450 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-09 02:31:08,451 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-09 02:31:08,451 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-09 02:31:08,451 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-09 02:31:08,458 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,472 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,499 INFO L138 Inliner]: procedures = 174, calls = 35, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 145 [2024-11-09 02:31:08,499 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-09 02:31:08,500 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-09 02:31:08,500 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-09 02:31:08,500 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-09 02:31:08,514 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,515 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,519 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,533 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-09 02:31:08,533 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,533 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,539 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,542 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,543 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,544 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,547 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-09 02:31:08,547 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-09 02:31:08,548 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-09 02:31:08,548 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-09 02:31:08,548 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (1/1) ... [2024-11-09 02:31:08,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 02:31:08,563 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 02:31:08,599 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-09 02:31:08,601 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-09 02:31:08,643 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-11-09 02:31:08,644 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-09 02:31:08,644 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-11-09 02:31:08,644 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-11-09 02:31:08,644 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-11-09 02:31:08,644 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-11-09 02:31:08,645 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-09 02:31:08,645 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-11-09 02:31:08,645 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-09 02:31:08,645 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-09 02:31:08,647 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-11-09 02:31:08,771 INFO L238 CfgBuilder]: Building ICFG [2024-11-09 02:31:08,774 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-09 02:31:08,990 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-11-09 02:31:08,990 INFO L287 CfgBuilder]: Performing block encoding [2024-11-09 02:31:09,186 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-09 02:31:09,188 INFO L316 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-09 02:31:09,189 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 02:31:09 BoogieIcfgContainer [2024-11-09 02:31:09,189 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-09 02:31:09,190 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-09 02:31:09,191 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-09 02:31:09,193 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-09 02:31:09,194 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.11 02:31:07" (1/3) ... [2024-11-09 02:31:09,194 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@574ae58b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 02:31:09, skipping insertion in model container [2024-11-09 02:31:09,194 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 02:31:08" (2/3) ... [2024-11-09 02:31:09,195 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@574ae58b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 02:31:09, skipping insertion in model container [2024-11-09 02:31:09,195 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 02:31:09" (3/3) ... [2024-11-09 02:31:09,196 INFO L112 eAbstractionObserver]: Analyzing ICFG rfi007_tso.i [2024-11-09 02:31:09,211 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-09 02:31:09,212 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-09 02:31:09,212 INFO L489 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-11-09 02:31:09,254 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-11-09 02:31:09,283 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 31 transitions, 70 flow [2024-11-09 02:31:09,302 INFO L124 PetriNetUnfolderBase]: 1/29 cut-off events. [2024-11-09 02:31:09,302 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-09 02:31:09,308 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 44 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-09 02:31:09,308 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 31 transitions, 70 flow [2024-11-09 02:31:09,310 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 35 places, 29 transitions, 64 flow [2024-11-09 02:31:09,319 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-09 02:31:09,324 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;@1bbda79c, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-09 02:31:09,325 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-11-09 02:31:09,328 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-11-09 02:31:09,328 INFO L124 PetriNetUnfolderBase]: 0/9 cut-off events. [2024-11-09 02:31:09,329 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-09 02:31:09,329 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:09,329 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2024-11-09 02:31:09,329 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-09 02:31:09,334 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:09,334 INFO L85 PathProgramCache]: Analyzing trace with hash 1838594265, now seen corresponding path program 1 times [2024-11-09 02:31:09,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:09,341 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1041347058] [2024-11-09 02:31:09,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:09,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:09,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:09,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-09 02:31:09,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:09,704 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1041347058] [2024-11-09 02:31:09,705 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1041347058] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:09,705 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:09,705 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-11-09 02:31:09,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [112383642] [2024-11-09 02:31:09,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:09,751 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-09 02:31:09,766 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:09,803 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 02:31:09,804 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 02:31:09,805 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 31 [2024-11-09 02:31:09,807 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 29 transitions, 64 flow. Second operand has 3 states, 3 states have (on average 14.666666666666666) internal successors, (44), 3 states have internal predecessors, (44), 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-09 02:31:09,807 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:09,807 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 31 [2024-11-09 02:31:09,808 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:09,964 INFO L124 PetriNetUnfolderBase]: 144/317 cut-off events. [2024-11-09 02:31:09,964 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-09 02:31:09,966 INFO L83 FinitePrefix]: Finished finitePrefix Result has 585 conditions, 317 events. 144/317 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 30. Compared 1628 event pairs, 16 based on Foata normal form. 15/326 useless extension candidates. Maximal degree in co-relation 575. Up to 213 conditions per place. [2024-11-09 02:31:09,969 INFO L140 encePairwiseOnDemand]: 27/31 looper letters, 20 selfloop transitions, 2 changer transitions 2/35 dead transitions. [2024-11-09 02:31:09,970 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 35 transitions, 124 flow [2024-11-09 02:31:09,972 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 02:31:09,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-09 02:31:09,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2024-11-09 02:31:09,980 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7096774193548387 [2024-11-09 02:31:09,981 INFO L175 Difference]: Start difference. First operand has 35 places, 29 transitions, 64 flow. Second operand 3 states and 66 transitions. [2024-11-09 02:31:09,981 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 35 transitions, 124 flow [2024-11-09 02:31:09,983 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 35 transitions, 122 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-09 02:31:09,984 INFO L231 Difference]: Finished difference. Result has 34 places, 26 transitions, 60 flow [2024-11-09 02:31:09,986 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-09 02:31:09,989 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, -1 predicate places. [2024-11-09 02:31:09,989 INFO L471 AbstractCegarLoop]: Abstraction has has 34 places, 26 transitions, 60 flow [2024-11-09 02:31:09,990 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 14.666666666666666) internal successors, (44), 3 states have internal predecessors, (44), 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-09 02:31:09,990 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:09,990 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:31:09,990 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-09 02:31:09,990 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-09 02:31:09,991 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:09,991 INFO L85 PathProgramCache]: Analyzing trace with hash 1669036513, now seen corresponding path program 1 times [2024-11-09 02:31:09,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:09,991 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [505155666] [2024-11-09 02:31:09,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:09,991 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:10,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:10,840 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-09 02:31:10,841 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:10,841 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [505155666] [2024-11-09 02:31:10,841 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [505155666] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:10,841 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:10,841 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-09 02:31:10,842 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1364579124] [2024-11-09 02:31:10,842 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:10,843 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-09 02:31:10,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:10,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-09 02:31:10,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2024-11-09 02:31:10,854 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-09 02:31:10,854 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 34 places, 26 transitions, 60 flow. Second operand has 6 states, 6 states have (on average 11.666666666666666) internal successors, (70), 6 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-09 02:31:10,854 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:10,854 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-09 02:31:10,854 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:11,103 INFO L124 PetriNetUnfolderBase]: 232/459 cut-off events. [2024-11-09 02:31:11,104 INFO L125 PetriNetUnfolderBase]: For 21/21 co-relation queries the response was YES. [2024-11-09 02:31:11,105 INFO L83 FinitePrefix]: Finished finitePrefix Result has 905 conditions, 459 events. 232/459 cut-off events. For 21/21 co-relation queries the response was YES. Maximal size of possible extension queue 44. Compared 2530 event pairs, 54 based on Foata normal form. 0/444 useless extension candidates. Maximal degree in co-relation 895. Up to 204 conditions per place. [2024-11-09 02:31:11,107 INFO L140 encePairwiseOnDemand]: 25/31 looper letters, 20 selfloop transitions, 2 changer transitions 29/59 dead transitions. [2024-11-09 02:31:11,108 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 59 transitions, 232 flow [2024-11-09 02:31:11,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-11-09 02:31:11,109 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-11-09 02:31:11,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 133 transitions. [2024-11-09 02:31:11,111 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5362903225806451 [2024-11-09 02:31:11,111 INFO L175 Difference]: Start difference. First operand has 34 places, 26 transitions, 60 flow. Second operand 8 states and 133 transitions. [2024-11-09 02:31:11,111 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 59 transitions, 232 flow [2024-11-09 02:31:11,113 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 59 transitions, 224 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-09 02:31:11,115 INFO L231 Difference]: Finished difference. Result has 43 places, 25 transitions, 70 flow [2024-11-09 02:31:11,116 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-09 02:31:11,116 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2024-11-09 02:31:11,117 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 25 transitions, 70 flow [2024-11-09 02:31:11,117 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 11.666666666666666) internal successors, (70), 6 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-09 02:31:11,117 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:11,117 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 02:31:11,117 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-09 02:31:11,118 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-09 02:31:11,118 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:11,119 INFO L85 PathProgramCache]: Analyzing trace with hash -1541269216, now seen corresponding path program 1 times [2024-11-09 02:31:11,119 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:11,119 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1633882930] [2024-11-09 02:31:11,119 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:11,120 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:11,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:12,349 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-09 02:31:12,350 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:12,358 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1633882930] [2024-11-09 02:31:12,358 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1633882930] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:12,359 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:12,359 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-11-09 02:31:12,359 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [465753305] [2024-11-09 02:31:12,359 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:12,359 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-11-09 02:31:12,359 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:12,360 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-11-09 02:31:12,360 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2024-11-09 02:31:12,412 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2024-11-09 02:31:12,413 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 25 transitions, 70 flow. Second operand has 8 states, 8 states have (on average 8.625) internal successors, (69), 8 states have internal predecessors, (69), 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-09 02:31:12,413 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:12,413 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2024-11-09 02:31:12,413 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:12,897 INFO L124 PetriNetUnfolderBase]: 240/469 cut-off events. [2024-11-09 02:31:12,897 INFO L125 PetriNetUnfolderBase]: For 34/34 co-relation queries the response was YES. [2024-11-09 02:31:12,904 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1039 conditions, 469 events. 240/469 cut-off events. For 34/34 co-relation queries the response was YES. Maximal size of possible extension queue 27. Compared 1990 event pairs, 15 based on Foata normal form. 30/498 useless extension candidates. Maximal degree in co-relation 1024. Up to 229 conditions per place. [2024-11-09 02:31:12,909 INFO L140 encePairwiseOnDemand]: 24/31 looper letters, 39 selfloop transitions, 8 changer transitions 3/55 dead transitions. [2024-11-09 02:31:12,909 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 55 transitions, 240 flow [2024-11-09 02:31:12,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-09 02:31:12,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-09 02:31:12,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 96 transitions. [2024-11-09 02:31:12,917 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5161290322580645 [2024-11-09 02:31:12,917 INFO L175 Difference]: Start difference. First operand has 43 places, 25 transitions, 70 flow. Second operand 6 states and 96 transitions. [2024-11-09 02:31:12,917 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 55 transitions, 240 flow [2024-11-09 02:31:12,927 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 55 transitions, 224 flow, removed 4 selfloop flow, removed 6 redundant places. [2024-11-09 02:31:12,928 INFO L231 Difference]: Finished difference. Result has 40 places, 31 transitions, 120 flow [2024-11-09 02:31:12,928 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=19, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=120, PETRI_PLACES=40, PETRI_TRANSITIONS=31} [2024-11-09 02:31:12,929 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 5 predicate places. [2024-11-09 02:31:12,929 INFO L471 AbstractCegarLoop]: Abstraction has has 40 places, 31 transitions, 120 flow [2024-11-09 02:31:12,933 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 8.625) internal successors, (69), 8 states have internal predecessors, (69), 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-09 02:31:12,933 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:12,933 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-09 02:31:12,933 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-11-09 02:31:12,934 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-09 02:31:12,934 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:12,934 INFO L85 PathProgramCache]: Analyzing trace with hash 548800035, now seen corresponding path program 1 times [2024-11-09 02:31:12,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:12,934 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1294753357] [2024-11-09 02:31:12,935 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:12,935 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:13,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:13,610 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-09 02:31:13,611 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:13,611 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1294753357] [2024-11-09 02:31:13,611 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1294753357] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:13,611 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:13,611 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-09 02:31:13,612 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [934354008] [2024-11-09 02:31:13,612 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:13,612 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-09 02:31:13,612 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:13,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-09 02:31:13,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-11-09 02:31:13,618 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-09 02:31:13,618 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 40 places, 31 transitions, 120 flow. Second operand has 5 states, 5 states have (on average 12.8) internal successors, (64), 5 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 02:31:13,619 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:13,619 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-09 02:31:13,619 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:13,711 INFO L124 PetriNetUnfolderBase]: 104/228 cut-off events. [2024-11-09 02:31:13,711 INFO L125 PetriNetUnfolderBase]: For 193/195 co-relation queries the response was YES. [2024-11-09 02:31:13,712 INFO L83 FinitePrefix]: Finished finitePrefix Result has 600 conditions, 228 events. 104/228 cut-off events. For 193/195 co-relation queries the response was YES. Maximal size of possible extension queue 13. Compared 747 event pairs, 25 based on Foata normal form. 20/246 useless extension candidates. Maximal degree in co-relation 585. Up to 95 conditions per place. [2024-11-09 02:31:13,712 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 28 selfloop transitions, 7 changer transitions 0/43 dead transitions. [2024-11-09 02:31:13,712 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 43 transitions, 220 flow [2024-11-09 02:31:13,715 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-09 02:31:13,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-09 02:31:13,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2024-11-09 02:31:13,716 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5483870967741935 [2024-11-09 02:31:13,716 INFO L175 Difference]: Start difference. First operand has 40 places, 31 transitions, 120 flow. Second operand 5 states and 85 transitions. [2024-11-09 02:31:13,716 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 43 transitions, 220 flow [2024-11-09 02:31:13,717 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 43 transitions, 205 flow, removed 2 selfloop flow, removed 3 redundant places. [2024-11-09 02:31:13,717 INFO L231 Difference]: Finished difference. Result has 43 places, 32 transitions, 139 flow [2024-11-09 02:31:13,718 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=108, PETRI_DIFFERENCE_MINUEND_PLACES=37, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=139, PETRI_PLACES=43, PETRI_TRANSITIONS=32} [2024-11-09 02:31:13,718 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2024-11-09 02:31:13,718 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 32 transitions, 139 flow [2024-11-09 02:31:13,719 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.8) internal successors, (64), 5 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 02:31:13,719 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:13,719 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-09 02:31:13,719 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-11-09 02:31:13,719 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-09 02:31:13,719 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:13,720 INFO L85 PathProgramCache]: Analyzing trace with hash 1972397697, now seen corresponding path program 1 times [2024-11-09 02:31:13,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:13,720 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [520776572] [2024-11-09 02:31:13,720 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:13,720 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:13,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:13,936 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-09 02:31:13,936 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:13,936 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [520776572] [2024-11-09 02:31:13,936 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [520776572] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:13,936 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:13,937 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2024-11-09 02:31:13,937 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2126377269] [2024-11-09 02:31:13,937 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:13,937 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-09 02:31:13,937 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:13,938 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-09 02:31:13,938 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-09 02:31:13,945 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 31 [2024-11-09 02:31:13,945 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 32 transitions, 139 flow. Second operand has 6 states, 6 states have (on average 11.666666666666666) internal successors, (70), 6 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-09 02:31:13,945 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:13,945 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 31 [2024-11-09 02:31:13,945 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:14,122 INFO L124 PetriNetUnfolderBase]: 135/327 cut-off events. [2024-11-09 02:31:14,122 INFO L125 PetriNetUnfolderBase]: For 277/281 co-relation queries the response was YES. [2024-11-09 02:31:14,123 INFO L83 FinitePrefix]: Finished finitePrefix Result has 821 conditions, 327 events. 135/327 cut-off events. For 277/281 co-relation queries the response was YES. Maximal size of possible extension queue 22. Compared 1326 event pairs, 27 based on Foata normal form. 6/325 useless extension candidates. Maximal degree in co-relation 805. Up to 148 conditions per place. [2024-11-09 02:31:14,123 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 20 selfloop transitions, 1 changer transitions 22/53 dead transitions. [2024-11-09 02:31:14,123 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 53 transitions, 279 flow [2024-11-09 02:31:14,125 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-09 02:31:14,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-09 02:31:14,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2024-11-09 02:31:14,125 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5053763440860215 [2024-11-09 02:31:14,126 INFO L175 Difference]: Start difference. First operand has 43 places, 32 transitions, 139 flow. Second operand 6 states and 94 transitions. [2024-11-09 02:31:14,126 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 53 transitions, 279 flow [2024-11-09 02:31:14,127 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 53 transitions, 269 flow, removed 2 selfloop flow, removed 2 redundant places. [2024-11-09 02:31:14,128 INFO L231 Difference]: Finished difference. Result has 50 places, 28 transitions, 115 flow [2024-11-09 02:31:14,128 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=129, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=115, PETRI_PLACES=50, PETRI_TRANSITIONS=28} [2024-11-09 02:31:14,129 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 15 predicate places. [2024-11-09 02:31:14,129 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 28 transitions, 115 flow [2024-11-09 02:31:14,129 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 11.666666666666666) internal successors, (70), 6 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-09 02:31:14,129 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:14,129 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-09 02:31:14,129 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-11-09 02:31:14,129 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-09 02:31:14,130 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:14,130 INFO L85 PathProgramCache]: Analyzing trace with hash -177163949, now seen corresponding path program 2 times [2024-11-09 02:31:14,130 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:14,130 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [530851083] [2024-11-09 02:31:14,130 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:14,131 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:14,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 02:31:16,843 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-09 02:31:16,844 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 02:31:16,844 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [530851083] [2024-11-09 02:31:16,844 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [530851083] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 02:31:16,845 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 02:31:16,845 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2024-11-09 02:31:16,845 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [456974975] [2024-11-09 02:31:16,846 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 02:31:16,846 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2024-11-09 02:31:16,849 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 02:31:16,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-11-09 02:31:16,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2024-11-09 02:31:16,862 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-09 02:31:16,862 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 28 transitions, 115 flow. Second operand has 11 states, 11 states have (on average 11.363636363636363) internal successors, (125), 11 states have internal predecessors, (125), 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-09 02:31:16,862 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-09 02:31:16,862 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-09 02:31:16,862 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-09 02:31:17,282 INFO L124 PetriNetUnfolderBase]: 95/244 cut-off events. [2024-11-09 02:31:17,283 INFO L125 PetriNetUnfolderBase]: For 183/187 co-relation queries the response was YES. [2024-11-09 02:31:17,283 INFO L83 FinitePrefix]: Finished finitePrefix Result has 628 conditions, 244 events. 95/244 cut-off events. For 183/187 co-relation queries the response was YES. Maximal size of possible extension queue 23. Compared 987 event pairs, 27 based on Foata normal form. 6/240 useless extension candidates. Maximal degree in co-relation 609. Up to 78 conditions per place. [2024-11-09 02:31:17,284 INFO L140 encePairwiseOnDemand]: 22/31 looper letters, 18 selfloop transitions, 4 changer transitions 21/54 dead transitions. [2024-11-09 02:31:17,284 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 54 transitions, 271 flow [2024-11-09 02:31:17,285 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-09 02:31:17,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2024-11-09 02:31:17,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 144 transitions. [2024-11-09 02:31:17,286 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.4645161290322581 [2024-11-09 02:31:17,286 INFO L175 Difference]: Start difference. First operand has 50 places, 28 transitions, 115 flow. Second operand 10 states and 144 transitions. [2024-11-09 02:31:17,286 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 54 transitions, 271 flow [2024-11-09 02:31:17,288 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 54 transitions, 245 flow, removed 10 selfloop flow, removed 7 redundant places. [2024-11-09 02:31:17,289 INFO L231 Difference]: Finished difference. Result has 54 places, 28 transitions, 120 flow [2024-11-09 02:31:17,289 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=97, PETRI_DIFFERENCE_MINUEND_PLACES=39, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=10, PETRI_FLOW=120, PETRI_PLACES=54, PETRI_TRANSITIONS=28} [2024-11-09 02:31:17,290 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 19 predicate places. [2024-11-09 02:31:17,290 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 28 transitions, 120 flow [2024-11-09 02:31:17,290 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 11.363636363636363) internal successors, (125), 11 states have internal predecessors, (125), 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-09 02:31:17,291 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-09 02:31:17,291 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-09 02:31:17,291 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-11-09 02:31:17,291 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-09 02:31:17,291 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 02:31:17,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1532654255, now seen corresponding path program 3 times [2024-11-09 02:31:17,292 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 02:31:17,292 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1371072851] [2024-11-09 02:31:17,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 02:31:17,292 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 02:31:17,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 02:31:17,486 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 02:31:17,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 02:31:17,784 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 02:31:17,788 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-11-09 02:31:17,789 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2024-11-09 02:31:17,791 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2024-11-09 02:31:17,795 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2024-11-09 02:31:17,796 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-11-09 02:31:17,796 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2024-11-09 02:31:17,796 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-11-09 02:31:17,797 INFO L407 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2024-11-09 02:31:17,876 INFO L239 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-11-09 02:31:17,876 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2024-11-09 02:31:17,886 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.11 02:31:17 BasicIcfg [2024-11-09 02:31:17,890 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-11-09 02:31:17,891 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-09 02:31:17,891 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-09 02:31:17,891 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-09 02:31:17,892 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 02:31:09" (3/4) ... [2024-11-09 02:31:17,893 INFO L136 WitnessPrinter]: Generating witness for reachability counterexample [2024-11-09 02:31:17,975 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-11-09 02:31:17,976 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-09 02:31:17,976 INFO L158 Benchmark]: Toolchain (without parser) took 10032.25ms. Allocated memory was 146.8MB in the beginning and 536.9MB in the end (delta: 390.1MB). Free memory was 74.3MB in the beginning and 430.7MB in the end (delta: -356.4MB). Peak memory consumption was 35.7MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,977 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 146.8MB. Free memory is still 98.8MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-09 02:31:17,977 INFO L158 Benchmark]: CACSL2BoogieTranslator took 505.22ms. Allocated memory was 146.8MB in the beginning and 213.9MB in the end (delta: 67.1MB). Free memory was 74.1MB in the beginning and 169.7MB in the end (delta: -95.6MB). Peak memory consumption was 15.7MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,977 INFO L158 Benchmark]: Boogie Procedure Inliner took 48.41ms. Allocated memory is still 213.9MB. Free memory was 169.7MB in the beginning and 166.5MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,978 INFO L158 Benchmark]: Boogie Preprocessor took 46.97ms. Allocated memory is still 213.9MB. Free memory was 166.5MB in the beginning and 162.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,978 INFO L158 Benchmark]: RCFGBuilder took 641.67ms. Allocated memory is still 213.9MB. Free memory was 162.3MB in the beginning and 104.7MB in the end (delta: 57.7MB). Peak memory consumption was 56.6MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,978 INFO L158 Benchmark]: TraceAbstraction took 8699.95ms. Allocated memory was 213.9MB in the beginning and 536.9MB in the end (delta: 323.0MB). Free memory was 103.6MB in the beginning and 439.0MB in the end (delta: -335.4MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-09 02:31:17,979 INFO L158 Benchmark]: Witness Printer took 85.04ms. Allocated memory is still 536.9MB. Free memory was 439.0MB in the beginning and 430.7MB in the end (delta: 8.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-11-09 02:31:17,980 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.10ms. Allocated memory is still 146.8MB. Free memory is still 98.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 505.22ms. Allocated memory was 146.8MB in the beginning and 213.9MB in the end (delta: 67.1MB). Free memory was 74.1MB in the beginning and 169.7MB in the end (delta: -95.6MB). Peak memory consumption was 15.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 48.41ms. Allocated memory is still 213.9MB. Free memory was 169.7MB in the beginning and 166.5MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 46.97ms. Allocated memory is still 213.9MB. Free memory was 166.5MB in the beginning and 162.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 641.67ms. Allocated memory is still 213.9MB. Free memory was 162.3MB in the beginning and 104.7MB in the end (delta: 57.7MB). Peak memory consumption was 56.6MB. Max. memory is 16.1GB. * TraceAbstraction took 8699.95ms. Allocated memory was 213.9MB in the beginning and 536.9MB in the end (delta: 323.0MB). Free memory was 103.6MB in the beginning and 439.0MB in the end (delta: -335.4MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 85.04ms. Allocated memory is still 536.9MB. Free memory was 439.0MB in the beginning and 430.7MB in the end (delta: 8.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; [L718] 0 int y = 0; [L719] 0 _Bool y$flush_delayed; [L720] 0 int y$mem_tmp; [L721] 0 _Bool y$r_buff0_thd0; [L722] 0 _Bool y$r_buff0_thd1; [L723] 0 _Bool y$r_buff0_thd2; [L724] 0 _Bool y$r_buff1_thd0; [L725] 0 _Bool y$r_buff1_thd1; [L726] 0 _Bool y$r_buff1_thd2; [L727] 0 _Bool y$read_delayed; [L728] 0 int *y$read_delayed_var; [L729] 0 int y$w_buff0; [L730] 0 _Bool y$w_buff0_used; [L731] 0 int y$w_buff1; [L732] 0 _Bool y$w_buff1_used; [L733] 0 _Bool weak$$choice0; [L734] 0 _Bool weak$$choice2; [L810] 0 pthread_t t1717; [L811] FCALL, FORK 0 pthread_create(&t1717, ((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, t1717=-1, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0] [L812] 0 pthread_t t1718; [L813] FCALL, FORK 0 pthread_create(&t1718, ((void *)0), P1, ((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, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0] [L758] 2 y$w_buff1 = y$w_buff0 [L759] 2 y$w_buff0 = 2 [L760] 2 y$w_buff1_used = y$w_buff0_used [L761] 2 y$w_buff0_used = (_Bool)1 [L762] CALL 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L762] RET 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L763] 2 y$r_buff1_thd0 = y$r_buff0_thd0 [L764] 2 y$r_buff1_thd1 = y$r_buff0_thd1 [L765] 2 y$r_buff1_thd2 = y$r_buff0_thd2 [L766] 2 y$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}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L769] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L770] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L771] 2 y$flush_delayed = weak$$choice2 [L772] 2 y$mem_tmp = y [L773] 2 y = !y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff1) [L774] 2 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff0)) [L775] 2 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff1 : y$w_buff1)) [L776] 2 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used)) [L777] 2 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L778] 2 y$r_buff0_thd2 = weak$$choice2 ? y$r_buff0_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff0_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2)) [L779] 2 y$r_buff1_thd2 = weak$$choice2 ? y$r_buff1_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff1_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L780] 2 __unbuffered_p1_EAX = y [L781] 2 y = y$flush_delayed ? y$mem_tmp : y [L782] 2 y$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}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L785] 2 __unbuffered_p1_EBX = x 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=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L738] 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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L741] 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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L744] 1 y = y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd1 ? y$w_buff1 : y) [L745] 1 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$w_buff0_used [L746] 1 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$w_buff1_used [L747] 1 y$r_buff0_thd1 = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$r_buff0_thd1 [L748] 1 y$r_buff1_thd1 = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L788] 2 y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L789] 2 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used [L790] 2 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$w_buff1_used [L791] 2 y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2 [L792] 2 y$r_buff1_thd2 = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$r_buff1_thd2 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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L795] 2 __unbuffered_cnt = __unbuffered_cnt + 1 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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L751] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __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=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [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, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [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 y = y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L820] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L821] 0 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$w_buff1_used [L822] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L823] 0 y$r_buff1_thd0 = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$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, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L826] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L827] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L828] 0 y$flush_delayed = weak$$choice2 [L829] 0 y$mem_tmp = y [L830] 0 y = !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L831] 0 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff0)) [L832] 0 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff1 : y$w_buff1)) [L833] 0 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used)) [L834] 0 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L835] 0 y$r_buff0_thd0 = weak$$choice2 ? y$r_buff0_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff0_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0)) [L836] 0 y$r_buff1_thd0 = weak$$choice2 ? y$r_buff1_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff1_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L837] 0 main$tmp_guard1 = !(y == 2 && __unbuffered_p1_EAX == 2 && __unbuffered_p1_EBX == 0) [L838] 0 y = y$flush_delayed ? y$mem_tmp : y [L839] 0 y$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, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [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=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [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=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] - 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: 8.5s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 242 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 220 mSDsluCounter, 125 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 102 mSDsCounter, 37 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 638 IncrementalHoareTripleChecker+Invalid, 675 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 37 mSolverCounterUnsat, 23 mSDtfsCounter, 638 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 52 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=139occurred in iteration=4, InterpolantAutomatonStates: 38, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 5.5s InterpolantComputationTime, 120 NumberOfCodeBlocks, 120 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 91 ConstructedInterpolants, 0 QuantifiedInterpolants, 866 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-09 02:31:18,015 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