./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 3061b6dc 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-tmp.dk.eval-assert-order-craig-3061b6d-m [2024-11-19 01:35:19,544 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-19 01:35:19,682 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-19 01:35:19,692 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-19 01:35:19,697 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-19 01:35:19,736 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-19 01:35:19,736 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-19 01:35:19,737 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-19 01:35:19,737 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-19 01:35:19,738 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-19 01:35:19,738 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-19 01:35:19,738 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-19 01:35:19,739 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-19 01:35:19,739 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-19 01:35:19,739 INFO L153 SettingsManager]: * Use SBE=true [2024-11-19 01:35:19,740 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-19 01:35:19,741 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-19 01:35:19,742 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-19 01:35:19,742 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-19 01:35:19,742 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-19 01:35:19,743 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-19 01:35:19,744 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-19 01:35:19,744 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-19 01:35:19,744 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-19 01:35:19,745 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-19 01:35:19,745 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-19 01:35:19,745 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-19 01:35:19,746 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-19 01:35:19,750 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-19 01:35:19,750 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-19 01:35:19,751 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-19 01:35:19,751 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-19 01:35:19,751 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-19 01:35:19,752 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-19 01:35:19,752 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-19 01:35:19,752 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-19 01:35:19,752 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-19 01:35:19,753 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-19 01:35:19,753 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-19 01:35:19,753 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-19 01:35:19,753 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-19 01:35:19,754 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-19 01:35:19,754 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-19 01:35:19,973 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-19 01:35:20,004 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-19 01:35:20,007 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-19 01:35:20,008 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-19 01:35:20,008 INFO L274 PluginConnector]: CDTParser initialized [2024-11-19 01:35:20,009 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-19 01:35:21,593 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-19 01:35:21,835 INFO L384 CDTParser]: Found 1 translation units. [2024-11-19 01:35:21,836 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi007_tso.i [2024-11-19 01:35:21,858 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f3866f578/195b86c994d74666abff6cabcc947197/FLAG3b1905b1a [2024-11-19 01:35:21,875 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f3866f578/195b86c994d74666abff6cabcc947197 [2024-11-19 01:35:21,878 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-19 01:35:21,880 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-19 01:35:21,881 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-19 01:35:21,882 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-19 01:35:21,888 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-19 01:35:21,889 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 01:35:21" (1/1) ... [2024-11-19 01:35:21,890 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@646cf72a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:21, skipping insertion in model container [2024-11-19 01:35:21,890 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 01:35:21" (1/1) ... [2024-11-19 01:35:21,937 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-19 01:35:22,186 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-19 01:35:22,378 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 01:35:22,391 INFO L200 MainTranslator]: Completed pre-run [2024-11-19 01:35:22,403 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-19 01:35:22,446 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 01:35:22,479 INFO L204 MainTranslator]: Completed translation [2024-11-19 01:35:22,479 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22 WrapperNode [2024-11-19 01:35:22,479 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-19 01:35:22,480 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-19 01:35:22,481 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-19 01:35:22,481 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-19 01:35:22,487 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,514 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,549 INFO L138 Inliner]: procedures = 174, calls = 35, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 145 [2024-11-19 01:35:22,549 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-19 01:35:22,550 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-19 01:35:22,550 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-19 01:35:22,550 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-19 01:35:22,571 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,575 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,582 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,608 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-19 01:35:22,611 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,611 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,621 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,627 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,630 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,635 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,637 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-19 01:35:22,638 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-19 01:35:22,638 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-19 01:35:22,638 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-19 01:35:22,639 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (1/1) ... [2024-11-19 01:35:22,646 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-19 01:35:22,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 01:35:22,668 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-19 01:35:22,678 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-19 01:35:22,717 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-11-19 01:35:22,718 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-19 01:35:22,719 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-11-19 01:35:22,719 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-11-19 01:35:22,719 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-11-19 01:35:22,719 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-11-19 01:35:22,719 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-19 01:35:22,721 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-11-19 01:35:22,721 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-19 01:35:22,721 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-19 01:35:22,723 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-11-19 01:35:22,858 INFO L238 CfgBuilder]: Building ICFG [2024-11-19 01:35:22,860 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-19 01:35:23,096 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-11-19 01:35:23,096 INFO L287 CfgBuilder]: Performing block encoding [2024-11-19 01:35:23,386 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-19 01:35:23,388 INFO L316 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-19 01:35:23,389 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 01:35:23 BoogieIcfgContainer [2024-11-19 01:35:23,389 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-19 01:35:23,391 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-19 01:35:23,391 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-19 01:35:23,394 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-19 01:35:23,395 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 19.11 01:35:21" (1/3) ... [2024-11-19 01:35:23,395 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2d405a0a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 19.11 01:35:23, skipping insertion in model container [2024-11-19 01:35:23,395 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 01:35:22" (2/3) ... [2024-11-19 01:35:23,396 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2d405a0a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 19.11 01:35:23, skipping insertion in model container [2024-11-19 01:35:23,396 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 01:35:23" (3/3) ... [2024-11-19 01:35:23,397 INFO L112 eAbstractionObserver]: Analyzing ICFG rfi007_tso.i [2024-11-19 01:35:23,409 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-19 01:35:23,410 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-19 01:35:23,410 INFO L489 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-11-19 01:35:23,458 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-11-19 01:35:23,493 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 31 transitions, 70 flow [2024-11-19 01:35:23,526 INFO L124 PetriNetUnfolderBase]: 1/29 cut-off events. [2024-11-19 01:35:23,526 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-19 01:35:23,530 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-19 01:35:23,531 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 31 transitions, 70 flow [2024-11-19 01:35:23,533 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 35 places, 29 transitions, 64 flow [2024-11-19 01:35:23,544 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-19 01:35:23,555 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;@25d38a8f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-19 01:35:23,556 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-11-19 01:35:23,560 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-11-19 01:35:23,561 INFO L124 PetriNetUnfolderBase]: 0/9 cut-off events. [2024-11-19 01:35:23,561 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-19 01:35:23,561 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:23,562 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2024-11-19 01:35:23,562 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-19 01:35:23,567 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:23,567 INFO L85 PathProgramCache]: Analyzing trace with hash 1838594265, now seen corresponding path program 1 times [2024-11-19 01:35:23,577 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:23,577 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1900531685] [2024-11-19 01:35:23,577 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 01:35:23,578 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:23,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 01:35:24,107 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-19 01:35:24,108 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:24,109 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1900531685] [2024-11-19 01:35:24,109 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1900531685] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:24,110 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:24,110 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-11-19 01:35:24,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [498122901] [2024-11-19 01:35:24,112 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:24,119 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-19 01:35:24,124 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:24,151 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 01:35:24,152 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 01:35:24,154 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 31 [2024-11-19 01:35:24,156 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-19 01:35:24,156 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:24,157 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 31 [2024-11-19 01:35:24,157 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:24,396 INFO L124 PetriNetUnfolderBase]: 144/317 cut-off events. [2024-11-19 01:35:24,397 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-19 01:35:24,399 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-19 01:35:24,403 INFO L140 encePairwiseOnDemand]: 27/31 looper letters, 20 selfloop transitions, 2 changer transitions 2/35 dead transitions. [2024-11-19 01:35:24,403 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 35 transitions, 124 flow [2024-11-19 01:35:24,406 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 01:35:24,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-19 01:35:24,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2024-11-19 01:35:24,417 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7096774193548387 [2024-11-19 01:35:24,419 INFO L175 Difference]: Start difference. First operand has 35 places, 29 transitions, 64 flow. Second operand 3 states and 66 transitions. [2024-11-19 01:35:24,420 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 35 transitions, 124 flow [2024-11-19 01:35:24,422 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 35 transitions, 122 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-19 01:35:24,424 INFO L231 Difference]: Finished difference. Result has 34 places, 26 transitions, 60 flow [2024-11-19 01:35:24,426 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-19 01:35:24,430 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, -1 predicate places. [2024-11-19 01:35:24,430 INFO L471 AbstractCegarLoop]: Abstraction has has 34 places, 26 transitions, 60 flow [2024-11-19 01:35:24,430 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-19 01:35:24,430 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:24,431 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 01:35:24,431 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-19 01:35:24,431 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-19 01:35:24,432 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:24,432 INFO L85 PathProgramCache]: Analyzing trace with hash 1669036513, now seen corresponding path program 1 times [2024-11-19 01:35:24,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:24,433 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [812261010] [2024-11-19 01:35:24,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 01:35:24,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:24,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 01:35:25,110 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-19 01:35:25,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:25,110 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [812261010] [2024-11-19 01:35:25,110 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [812261010] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:25,110 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:25,110 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-19 01:35:25,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [562537477] [2024-11-19 01:35:25,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:25,111 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-19 01:35:25,112 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:25,112 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-19 01:35:25,112 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2024-11-19 01:35:25,125 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-19 01:35:25,125 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-19 01:35:25,126 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:25,126 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-19 01:35:25,126 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:25,375 INFO L124 PetriNetUnfolderBase]: 232/459 cut-off events. [2024-11-19 01:35:25,375 INFO L125 PetriNetUnfolderBase]: For 21/21 co-relation queries the response was YES. [2024-11-19 01:35:25,377 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-19 01:35:25,381 INFO L140 encePairwiseOnDemand]: 25/31 looper letters, 20 selfloop transitions, 2 changer transitions 29/59 dead transitions. [2024-11-19 01:35:25,381 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 59 transitions, 232 flow [2024-11-19 01:35:25,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-11-19 01:35:25,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-11-19 01:35:25,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 133 transitions. [2024-11-19 01:35:25,383 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5362903225806451 [2024-11-19 01:35:25,383 INFO L175 Difference]: Start difference. First operand has 34 places, 26 transitions, 60 flow. Second operand 8 states and 133 transitions. [2024-11-19 01:35:25,383 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 59 transitions, 232 flow [2024-11-19 01:35:25,384 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 59 transitions, 224 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-19 01:35:25,387 INFO L231 Difference]: Finished difference. Result has 43 places, 25 transitions, 70 flow [2024-11-19 01:35:25,387 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-19 01:35:25,388 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2024-11-19 01:35:25,388 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 25 transitions, 70 flow [2024-11-19 01:35:25,388 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-19 01:35:25,388 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:25,388 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 01:35:25,388 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-19 01:35:25,389 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-19 01:35:25,389 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:25,390 INFO L85 PathProgramCache]: Analyzing trace with hash -1541269216, now seen corresponding path program 1 times [2024-11-19 01:35:25,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:25,390 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1197180699] [2024-11-19 01:35:25,390 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 01:35:25,391 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:25,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 01:35:25,958 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-19 01:35:25,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:25,958 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1197180699] [2024-11-19 01:35:25,959 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1197180699] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:25,959 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:25,959 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-11-19 01:35:25,959 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [574488023] [2024-11-19 01:35:25,959 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:25,959 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-11-19 01:35:25,960 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:25,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-11-19 01:35:25,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2024-11-19 01:35:25,979 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2024-11-19 01:35:25,979 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-19 01:35:25,979 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:25,979 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2024-11-19 01:35:25,979 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:26,206 INFO L124 PetriNetUnfolderBase]: 240/469 cut-off events. [2024-11-19 01:35:26,206 INFO L125 PetriNetUnfolderBase]: For 34/34 co-relation queries the response was YES. [2024-11-19 01:35:26,207 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-19 01:35:26,209 INFO L140 encePairwiseOnDemand]: 24/31 looper letters, 39 selfloop transitions, 8 changer transitions 3/55 dead transitions. [2024-11-19 01:35:26,209 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 55 transitions, 240 flow [2024-11-19 01:35:26,209 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-19 01:35:26,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-19 01:35:26,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 96 transitions. [2024-11-19 01:35:26,210 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5161290322580645 [2024-11-19 01:35:26,210 INFO L175 Difference]: Start difference. First operand has 43 places, 25 transitions, 70 flow. Second operand 6 states and 96 transitions. [2024-11-19 01:35:26,211 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 55 transitions, 240 flow [2024-11-19 01:35:26,213 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 55 transitions, 224 flow, removed 4 selfloop flow, removed 6 redundant places. [2024-11-19 01:35:26,214 INFO L231 Difference]: Finished difference. Result has 40 places, 31 transitions, 120 flow [2024-11-19 01:35:26,214 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-19 01:35:26,214 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 5 predicate places. [2024-11-19 01:35:26,215 INFO L471 AbstractCegarLoop]: Abstraction has has 40 places, 31 transitions, 120 flow [2024-11-19 01:35:26,215 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-19 01:35:26,215 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:26,215 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-19 01:35:26,215 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-11-19 01:35:26,215 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-19 01:35:26,216 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:26,216 INFO L85 PathProgramCache]: Analyzing trace with hash 548800035, now seen corresponding path program 1 times [2024-11-19 01:35:26,216 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:26,216 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1513202651] [2024-11-19 01:35:26,216 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 01:35:26,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:26,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 01:35:26,420 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-19 01:35:26,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:26,420 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1513202651] [2024-11-19 01:35:26,420 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1513202651] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:26,422 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:26,422 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 01:35:26,422 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2113354637] [2024-11-19 01:35:26,422 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:26,423 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-19 01:35:26,423 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:26,423 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 01:35:26,423 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-11-19 01:35:26,429 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-19 01:35:26,430 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-19 01:35:26,430 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:26,430 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-19 01:35:26,430 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:26,516 INFO L124 PetriNetUnfolderBase]: 104/228 cut-off events. [2024-11-19 01:35:26,516 INFO L125 PetriNetUnfolderBase]: For 193/195 co-relation queries the response was YES. [2024-11-19 01:35:26,516 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-19 01:35:26,517 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 28 selfloop transitions, 7 changer transitions 0/43 dead transitions. [2024-11-19 01:35:26,517 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 43 transitions, 220 flow [2024-11-19 01:35:26,518 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 01:35:26,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-19 01:35:26,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2024-11-19 01:35:26,518 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5483870967741935 [2024-11-19 01:35:26,518 INFO L175 Difference]: Start difference. First operand has 40 places, 31 transitions, 120 flow. Second operand 5 states and 85 transitions. [2024-11-19 01:35:26,519 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 43 transitions, 220 flow [2024-11-19 01:35:26,520 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 43 transitions, 205 flow, removed 2 selfloop flow, removed 3 redundant places. [2024-11-19 01:35:26,520 INFO L231 Difference]: Finished difference. Result has 43 places, 32 transitions, 139 flow [2024-11-19 01:35:26,520 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-19 01:35:26,521 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2024-11-19 01:35:26,521 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 32 transitions, 139 flow [2024-11-19 01:35:26,521 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-19 01:35:26,521 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:26,521 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-19 01:35:26,522 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-11-19 01:35:26,522 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-19 01:35:26,522 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:26,522 INFO L85 PathProgramCache]: Analyzing trace with hash 1972397697, now seen corresponding path program 1 times [2024-11-19 01:35:26,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:26,522 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [28521522] [2024-11-19 01:35:26,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 01:35:26,523 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:26,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 01:35:26,742 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-19 01:35:26,742 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:26,742 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [28521522] [2024-11-19 01:35:26,742 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [28521522] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:26,742 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:26,742 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2024-11-19 01:35:26,743 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [86061955] [2024-11-19 01:35:26,743 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:26,743 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-19 01:35:26,743 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:26,743 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-19 01:35:26,744 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-19 01:35:26,748 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 31 [2024-11-19 01:35:26,748 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-19 01:35:26,748 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:26,748 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 31 [2024-11-19 01:35:26,748 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:26,900 INFO L124 PetriNetUnfolderBase]: 135/327 cut-off events. [2024-11-19 01:35:26,900 INFO L125 PetriNetUnfolderBase]: For 277/281 co-relation queries the response was YES. [2024-11-19 01:35:26,901 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-19 01:35:26,902 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 20 selfloop transitions, 1 changer transitions 22/53 dead transitions. [2024-11-19 01:35:26,902 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 53 transitions, 279 flow [2024-11-19 01:35:26,903 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-19 01:35:26,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-19 01:35:26,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2024-11-19 01:35:26,903 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5053763440860215 [2024-11-19 01:35:26,903 INFO L175 Difference]: Start difference. First operand has 43 places, 32 transitions, 139 flow. Second operand 6 states and 94 transitions. [2024-11-19 01:35:26,904 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 53 transitions, 279 flow [2024-11-19 01:35:26,905 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 53 transitions, 269 flow, removed 2 selfloop flow, removed 2 redundant places. [2024-11-19 01:35:26,906 INFO L231 Difference]: Finished difference. Result has 50 places, 28 transitions, 115 flow [2024-11-19 01:35:26,906 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-19 01:35:26,906 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 15 predicate places. [2024-11-19 01:35:26,907 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 28 transitions, 115 flow [2024-11-19 01:35:26,907 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-19 01:35:26,907 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:26,907 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-19 01:35:26,907 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-11-19 01:35:26,907 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-19 01:35:26,907 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:26,908 INFO L85 PathProgramCache]: Analyzing trace with hash -177163949, now seen corresponding path program 2 times [2024-11-19 01:35:26,908 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:26,908 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [987827652] [2024-11-19 01:35:26,908 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 01:35:26,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:26,957 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 01:35:26,958 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 01:35:28,427 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-19 01:35:28,428 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 01:35:28,428 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [987827652] [2024-11-19 01:35:28,428 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [987827652] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 01:35:28,428 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 01:35:28,428 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2024-11-19 01:35:28,428 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [976479752] [2024-11-19 01:35:28,428 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 01:35:28,428 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2024-11-19 01:35:28,429 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 01:35:28,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-11-19 01:35:28,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2024-11-19 01:35:28,440 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 31 [2024-11-19 01:35:28,440 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-19 01:35:28,440 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-19 01:35:28,440 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 31 [2024-11-19 01:35:28,440 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-19 01:35:28,816 INFO L124 PetriNetUnfolderBase]: 95/244 cut-off events. [2024-11-19 01:35:28,816 INFO L125 PetriNetUnfolderBase]: For 183/187 co-relation queries the response was YES. [2024-11-19 01:35:28,816 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-19 01:35:28,817 INFO L140 encePairwiseOnDemand]: 22/31 looper letters, 18 selfloop transitions, 4 changer transitions 21/54 dead transitions. [2024-11-19 01:35:28,817 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 54 transitions, 271 flow [2024-11-19 01:35:28,817 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-19 01:35:28,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2024-11-19 01:35:28,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 144 transitions. [2024-11-19 01:35:28,818 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.4645161290322581 [2024-11-19 01:35:28,818 INFO L175 Difference]: Start difference. First operand has 50 places, 28 transitions, 115 flow. Second operand 10 states and 144 transitions. [2024-11-19 01:35:28,818 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 54 transitions, 271 flow [2024-11-19 01:35:28,819 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 54 transitions, 245 flow, removed 10 selfloop flow, removed 7 redundant places. [2024-11-19 01:35:28,820 INFO L231 Difference]: Finished difference. Result has 54 places, 28 transitions, 120 flow [2024-11-19 01:35:28,820 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-19 01:35:28,821 INFO L277 CegarLoopForPetriNet]: 35 programPoint places, 19 predicate places. [2024-11-19 01:35:28,821 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 28 transitions, 120 flow [2024-11-19 01:35:28,835 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-19 01:35:28,835 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-11-19 01:35:28,835 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-19 01:35:28,835 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-11-19 01:35:28,835 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-19 01:35:28,836 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 01:35:28,836 INFO L85 PathProgramCache]: Analyzing trace with hash 1532654255, now seen corresponding path program 3 times [2024-11-19 01:35:28,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 01:35:28,836 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [603402089] [2024-11-19 01:35:28,836 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 01:35:28,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 01:35:28,913 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 01:35:28,913 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 01:35:28,914 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 01:35:28,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 01:35:29,023 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 01:35:29,023 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-11-19 01:35:29,024 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2024-11-19 01:35:29,028 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2024-11-19 01:35:29,028 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2024-11-19 01:35:29,028 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-11-19 01:35:29,028 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2024-11-19 01:35:29,028 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-11-19 01:35:29,028 INFO L407 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2024-11-19 01:35:29,091 INFO L239 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-11-19 01:35:29,091 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2024-11-19 01:35:29,096 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 19.11 01:35:29 BasicIcfg [2024-11-19 01:35:29,096 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-11-19 01:35:29,096 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-19 01:35:29,096 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-19 01:35:29,096 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-19 01:35:29,097 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 01:35:23" (3/4) ... [2024-11-19 01:35:29,097 INFO L136 WitnessPrinter]: Generating witness for reachability counterexample [2024-11-19 01:35:29,176 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-11-19 01:35:29,176 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-19 01:35:29,177 INFO L158 Benchmark]: Toolchain (without parser) took 7297.32ms. Allocated memory was 148.9MB in the beginning and 289.4MB in the end (delta: 140.5MB). Free memory was 78.6MB in the beginning and 166.2MB in the end (delta: -87.5MB). Peak memory consumption was 53.4MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,177 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 148.9MB. Free memory was 106.9MB in the beginning and 106.8MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-19 01:35:29,177 INFO L158 Benchmark]: CACSL2BoogieTranslator took 598.82ms. Allocated memory is still 148.9MB. Free memory was 78.5MB in the beginning and 101.8MB in the end (delta: -23.3MB). Peak memory consumption was 8.2MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,177 INFO L158 Benchmark]: Boogie Procedure Inliner took 68.93ms. Allocated memory is still 148.9MB. Free memory was 101.8MB in the beginning and 98.7MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,177 INFO L158 Benchmark]: Boogie Preprocessor took 87.92ms. Allocated memory is still 148.9MB. Free memory was 98.7MB in the beginning and 95.0MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,178 INFO L158 Benchmark]: RCFGBuilder took 751.10ms. Allocated memory is still 148.9MB. Free memory was 95.0MB in the beginning and 110.8MB in the end (delta: -15.8MB). Peak memory consumption was 57.1MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,178 INFO L158 Benchmark]: TraceAbstraction took 5704.68ms. Allocated memory was 148.9MB in the beginning and 289.4MB in the end (delta: 140.5MB). Free memory was 110.2MB in the beginning and 174.5MB in the end (delta: -64.3MB). Peak memory consumption was 78.3MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,178 INFO L158 Benchmark]: Witness Printer took 80.09ms. Allocated memory is still 289.4MB. Free memory was 174.5MB in the beginning and 166.2MB in the end (delta: 8.4MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2024-11-19 01:35:29,179 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 148.9MB. Free memory was 106.9MB in the beginning and 106.8MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 598.82ms. Allocated memory is still 148.9MB. Free memory was 78.5MB in the beginning and 101.8MB in the end (delta: -23.3MB). Peak memory consumption was 8.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 68.93ms. Allocated memory is still 148.9MB. Free memory was 101.8MB in the beginning and 98.7MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 87.92ms. Allocated memory is still 148.9MB. Free memory was 98.7MB in the beginning and 95.0MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 751.10ms. Allocated memory is still 148.9MB. Free memory was 95.0MB in the beginning and 110.8MB in the end (delta: -15.8MB). Peak memory consumption was 57.1MB. Max. memory is 16.1GB. * TraceAbstraction took 5704.68ms. Allocated memory was 148.9MB in the beginning and 289.4MB in the end (delta: 140.5MB). Free memory was 110.2MB in the beginning and 174.5MB in the end (delta: -64.3MB). Peak memory consumption was 78.3MB. Max. memory is 16.1GB. * Witness Printer took 80.09ms. Allocated memory is still 289.4MB. Free memory was 174.5MB in the beginning and 166.2MB in the end (delta: 8.4MB). Peak memory consumption was 6.3MB. 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: 5.5s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 242 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 220 mSDsluCounter, 125 SdHoareTripleChecker+Invalid, 0.6s 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.6s 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.3s SatisfiabilityAnalysisTime, 3.3s 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-19 01:35:29,202 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE