./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/mix001.oepc.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/mix001.oepc.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 54b7204af3591799bdde98d626e5c17b99e9c1ebc668ecbb3e0b1bb3bb8aa3c2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 16:25:10,174 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 16:25:10,225 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 16:25:10,228 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 16:25:10,231 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 16:25:10,245 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 16:25:10,245 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 16:25:10,245 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 16:25:10,246 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 16:25:10,246 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 16:25:10,246 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 16:25:10,246 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 16:25:10,246 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 16:25:10,247 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 16:25:10,248 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:25:10,248 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:25:10,248 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:25:10,248 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 16:25:10,249 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 54b7204af3591799bdde98d626e5c17b99e9c1ebc668ecbb3e0b1bb3bb8aa3c2 [2025-01-09 16:25:10,463 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 16:25:10,470 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 16:25:10,472 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 16:25:10,473 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 16:25:10,473 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 16:25:10,474 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/mix001.oepc.i [2025-01-09 16:25:11,651 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/947488b4b/5ebd7b367622472e917bd948ebd84fdf/FLAG1bb249614 [2025-01-09 16:25:11,962 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 16:25:11,963 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix001.oepc.i [2025-01-09 16:25:11,975 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/947488b4b/5ebd7b367622472e917bd948ebd84fdf/FLAG1bb249614 [2025-01-09 16:25:12,224 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/947488b4b/5ebd7b367622472e917bd948ebd84fdf [2025-01-09 16:25:12,225 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 16:25:12,227 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 16:25:12,227 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 16:25:12,228 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 16:25:12,230 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 16:25:12,231 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,232 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@19a335aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12, skipping insertion in model container [2025-01-09 16:25:12,232 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,257 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 16:25:12,374 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix001.oepc.i[988,1001] [2025-01-09 16:25:12,495 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:25:12,507 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 16:25:12,518 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix001.oepc.i[988,1001] [2025-01-09 16:25:12,596 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:25:12,626 INFO L204 MainTranslator]: Completed translation [2025-01-09 16:25:12,627 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12 WrapperNode [2025-01-09 16:25:12,628 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 16:25:12,629 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 16:25:12,629 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 16:25:12,629 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 16:25:12,635 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,651 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,677 INFO L138 Inliner]: procedures = 175, calls = 48, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 141 [2025-01-09 16:25:12,680 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 16:25:12,681 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 16:25:12,681 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 16:25:12,684 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 16:25:12,691 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,691 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,698 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,718 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-01-09 16:25:12,719 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,719 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,724 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,724 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,726 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,727 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,728 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,729 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 16:25:12,730 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 16:25:12,730 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 16:25:12,730 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 16:25:12,731 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (1/1) ... [2025-01-09 16:25:12,734 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:25:12,745 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 16:25:12,761 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-01-09 16:25:12,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-01-09 16:25:12,779 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-01-09 16:25:12,780 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-01-09 16:25:12,780 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-01-09 16:25:12,780 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-01-09 16:25:12,780 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 16:25:12,780 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 16:25:12,781 WARN L203 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-01-09 16:25:12,873 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 16:25:12,875 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 16:25:13,154 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-01-09 16:25:13,154 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 16:25:13,351 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 16:25:13,351 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 16:25:13,352 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:25:13 BoogieIcfgContainer [2025-01-09 16:25:13,352 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 16:25:13,353 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 16:25:13,354 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 16:25:13,357 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 16:25:13,357 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 04:25:12" (1/3) ... [2025-01-09 16:25:13,357 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4384e685 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:25:13, skipping insertion in model container [2025-01-09 16:25:13,357 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:25:12" (2/3) ... [2025-01-09 16:25:13,358 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4384e685 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:25:13, skipping insertion in model container [2025-01-09 16:25:13,358 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:25:13" (3/3) ... [2025-01-09 16:25:13,359 INFO L128 eAbstractionObserver]: Analyzing ICFG mix001.oepc.i [2025-01-09 16:25:13,368 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 16:25:13,370 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG mix001.oepc.i that has 4 procedures, 42 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-01-09 16:25:13,370 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-01-09 16:25:13,408 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-01-09 16:25:13,445 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 51 places, 42 transitions, 96 flow [2025-01-09 16:25:13,480 INFO L124 PetriNetUnfolderBase]: 1/39 cut-off events. [2025-01-09 16:25:13,481 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-01-09 16:25:13,486 INFO L83 FinitePrefix]: Finished finitePrefix Result has 49 conditions, 39 events. 1/39 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 73 event pairs, 0 based on Foata normal form. 0/36 useless extension candidates. Maximal degree in co-relation 41. Up to 2 conditions per place. [2025-01-09 16:25:13,486 INFO L82 GeneralOperation]: Start removeDead. Operand has 51 places, 42 transitions, 96 flow [2025-01-09 16:25:13,488 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 48 places, 39 transitions, 87 flow [2025-01-09 16:25:13,498 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 16:25:13,517 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;@4b3a5430, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 16:25:13,517 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2025-01-09 16:25:13,520 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-01-09 16:25:13,520 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2025-01-09 16:25:13,520 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-01-09 16:25:13,520 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:13,521 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2025-01-09 16:25:13,521 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P0Err0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:13,524 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:13,524 INFO L85 PathProgramCache]: Analyzing trace with hash 12587807, now seen corresponding path program 1 times [2025-01-09 16:25:13,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:13,530 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1171448825] [2025-01-09 16:25:13,530 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:25:13,530 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:13,581 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-01-09 16:25:13,598 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-01-09 16:25:13,598 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:13,598 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:13,864 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:13,864 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:13,864 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1171448825] [2025-01-09 16:25:13,865 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1171448825] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:13,865 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:13,865 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-01-09 16:25:13,866 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [675668972] [2025-01-09 16:25:13,866 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:13,870 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 16:25:13,873 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:13,887 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 16:25:13,887 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 16:25:13,888 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 20 out of 42 [2025-01-09 16:25:13,890 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 39 transitions, 87 flow. Second operand has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:13,890 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:13,890 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 20 of 42 [2025-01-09 16:25:13,891 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:14,219 INFO L124 PetriNetUnfolderBase]: 791/1415 cut-off events. [2025-01-09 16:25:14,219 INFO L125 PetriNetUnfolderBase]: For 16/16 co-relation queries the response was YES. [2025-01-09 16:25:14,223 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2654 conditions, 1415 events. 791/1415 cut-off events. For 16/16 co-relation queries the response was YES. Maximal size of possible extension queue 107. Compared 9236 event pairs, 95 based on Foata normal form. 57/1443 useless extension candidates. Maximal degree in co-relation 2643. Up to 1017 conditions per place. [2025-01-09 16:25:14,229 INFO L140 encePairwiseOnDemand]: 38/42 looper letters, 30 selfloop transitions, 2 changer transitions 2/51 dead transitions. [2025-01-09 16:25:14,229 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 51 transitions, 185 flow [2025-01-09 16:25:14,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 16:25:14,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-01-09 16:25:14,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2025-01-09 16:25:14,237 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7698412698412699 [2025-01-09 16:25:14,238 INFO L175 Difference]: Start difference. First operand has 48 places, 39 transitions, 87 flow. Second operand 3 states and 97 transitions. [2025-01-09 16:25:14,239 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 51 transitions, 185 flow [2025-01-09 16:25:14,241 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 51 transitions, 180 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-01-09 16:25:14,243 INFO L231 Difference]: Finished difference. Result has 46 places, 36 transitions, 82 flow [2025-01-09 16:25:14,244 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=82, PETRI_PLACES=46, PETRI_TRANSITIONS=36} [2025-01-09 16:25:14,246 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, -2 predicate places. [2025-01-09 16:25:14,247 INFO L471 AbstractCegarLoop]: Abstraction has has 46 places, 36 transitions, 82 flow [2025-01-09 16:25:14,247 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 21.0) internal successors, (63), 3 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:14,247 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:14,247 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:14,247 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-01-09 16:25:14,247 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:14,248 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:14,248 INFO L85 PathProgramCache]: Analyzing trace with hash -1905624400, now seen corresponding path program 1 times [2025-01-09 16:25:14,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:14,248 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1467800404] [2025-01-09 16:25:14,248 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:25:14,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:14,259 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-01-09 16:25:14,292 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-01-09 16:25:14,293 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:14,293 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:14,425 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:14,426 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:14,426 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1467800404] [2025-01-09 16:25:14,426 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1467800404] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:14,426 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:14,426 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 16:25:14,426 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1523930711] [2025-01-09 16:25:14,426 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:14,427 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-01-09 16:25:14,427 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:14,428 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-09 16:25:14,428 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-09 16:25:14,438 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 42 [2025-01-09 16:25:14,438 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 46 places, 36 transitions, 82 flow. Second operand has 4 states, 4 states have (on average 18.75) internal successors, (75), 4 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:14,439 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:14,439 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 42 [2025-01-09 16:25:14,439 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:14,847 INFO L124 PetriNetUnfolderBase]: 1585/2811 cut-off events. [2025-01-09 16:25:14,847 INFO L125 PetriNetUnfolderBase]: For 126/126 co-relation queries the response was YES. [2025-01-09 16:25:14,853 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5393 conditions, 2811 events. 1585/2811 cut-off events. For 126/126 co-relation queries the response was YES. Maximal size of possible extension queue 190. Compared 18341 event pairs, 235 based on Foata normal form. 120/2789 useless extension candidates. Maximal degree in co-relation 5383. Up to 1241 conditions per place. [2025-01-09 16:25:14,861 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 44 selfloop transitions, 5 changer transitions 1/63 dead transitions. [2025-01-09 16:25:14,861 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 63 transitions, 244 flow [2025-01-09 16:25:14,862 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-09 16:25:14,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-01-09 16:25:14,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 116 transitions. [2025-01-09 16:25:14,863 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6904761904761905 [2025-01-09 16:25:14,864 INFO L175 Difference]: Start difference. First operand has 46 places, 36 transitions, 82 flow. Second operand 4 states and 116 transitions. [2025-01-09 16:25:14,864 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 63 transitions, 244 flow [2025-01-09 16:25:14,865 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 63 transitions, 236 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-01-09 16:25:14,866 INFO L231 Difference]: Finished difference. Result has 48 places, 39 transitions, 112 flow [2025-01-09 16:25:14,867 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=78, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=36, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=112, PETRI_PLACES=48, PETRI_TRANSITIONS=39} [2025-01-09 16:25:14,867 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 0 predicate places. [2025-01-09 16:25:14,868 INFO L471 AbstractCegarLoop]: Abstraction has has 48 places, 39 transitions, 112 flow [2025-01-09 16:25:14,868 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 18.75) internal successors, (75), 4 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:14,868 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:14,868 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:14,869 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 16:25:14,869 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:14,869 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:14,870 INFO L85 PathProgramCache]: Analyzing trace with hash -1454485710, now seen corresponding path program 1 times [2025-01-09 16:25:14,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:14,870 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [191271087] [2025-01-09 16:25:14,870 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:25:14,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:14,883 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-09 16:25:14,979 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-09 16:25:14,983 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:14,983 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:15,186 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:15,187 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:15,187 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [191271087] [2025-01-09 16:25:15,187 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [191271087] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:15,187 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:15,187 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-09 16:25:15,187 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1092443571] [2025-01-09 16:25:15,187 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:15,188 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-01-09 16:25:15,188 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:15,188 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-01-09 16:25:15,188 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-01-09 16:25:15,200 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 42 [2025-01-09 16:25:15,200 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 39 transitions, 112 flow. Second operand has 5 states, 5 states have (on average 19.0) internal successors, (95), 5 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:15,200 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:15,200 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 42 [2025-01-09 16:25:15,200 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:15,502 INFO L124 PetriNetUnfolderBase]: 1045/1831 cut-off events. [2025-01-09 16:25:15,502 INFO L125 PetriNetUnfolderBase]: For 442/442 co-relation queries the response was YES. [2025-01-09 16:25:15,507 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4129 conditions, 1831 events. 1045/1831 cut-off events. For 442/442 co-relation queries the response was YES. Maximal size of possible extension queue 97. Compared 10314 event pairs, 133 based on Foata normal form. 96/1848 useless extension candidates. Maximal degree in co-relation 4117. Up to 513 conditions per place. [2025-01-09 16:25:15,513 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 56 selfloop transitions, 8 changer transitions 1/78 dead transitions. [2025-01-09 16:25:15,513 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 52 places, 78 transitions, 341 flow [2025-01-09 16:25:15,513 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-01-09 16:25:15,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-01-09 16:25:15,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 147 transitions. [2025-01-09 16:25:15,518 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7 [2025-01-09 16:25:15,518 INFO L175 Difference]: Start difference. First operand has 48 places, 39 transitions, 112 flow. Second operand 5 states and 147 transitions. [2025-01-09 16:25:15,518 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 52 places, 78 transitions, 341 flow [2025-01-09 16:25:15,519 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 50 places, 78 transitions, 331 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-01-09 16:25:15,521 INFO L231 Difference]: Finished difference. Result has 52 places, 42 transitions, 152 flow [2025-01-09 16:25:15,521 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=104, PETRI_DIFFERENCE_MINUEND_PLACES=46, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=152, PETRI_PLACES=52, PETRI_TRANSITIONS=42} [2025-01-09 16:25:15,522 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 4 predicate places. [2025-01-09 16:25:15,522 INFO L471 AbstractCegarLoop]: Abstraction has has 52 places, 42 transitions, 152 flow [2025-01-09 16:25:15,522 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 19.0) internal successors, (95), 5 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:15,522 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:15,523 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:15,523 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 16:25:15,523 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:15,523 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:15,524 INFO L85 PathProgramCache]: Analyzing trace with hash -2139832891, now seen corresponding path program 1 times [2025-01-09 16:25:15,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:15,524 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2136690769] [2025-01-09 16:25:15,524 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:25:15,524 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:15,539 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-01-09 16:25:15,604 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-01-09 16:25:15,609 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:15,609 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:15,830 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:15,830 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:15,831 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2136690769] [2025-01-09 16:25:15,831 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2136690769] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:15,831 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:15,831 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-01-09 16:25:15,831 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1760483115] [2025-01-09 16:25:15,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:15,831 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-01-09 16:25:15,832 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:15,833 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-01-09 16:25:15,833 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-01-09 16:25:15,839 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 42 [2025-01-09 16:25:15,839 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 42 transitions, 152 flow. Second operand has 6 states, 6 states have (on average 18.833333333333332) internal successors, (113), 6 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:15,839 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:15,839 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 42 [2025-01-09 16:25:15,839 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:16,060 INFO L124 PetriNetUnfolderBase]: 663/1109 cut-off events. [2025-01-09 16:25:16,060 INFO L125 PetriNetUnfolderBase]: For 850/850 co-relation queries the response was YES. [2025-01-09 16:25:16,062 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2841 conditions, 1109 events. 663/1109 cut-off events. For 850/850 co-relation queries the response was YES. Maximal size of possible extension queue 64. Compared 5199 event pairs, 113 based on Foata normal form. 44/1110 useless extension candidates. Maximal degree in co-relation 2827. Up to 364 conditions per place. [2025-01-09 16:25:16,066 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 48 selfloop transitions, 11 changer transitions 1/73 dead transitions. [2025-01-09 16:25:16,066 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 57 places, 73 transitions, 344 flow [2025-01-09 16:25:16,066 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-09 16:25:16,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-01-09 16:25:16,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 158 transitions. [2025-01-09 16:25:16,067 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.626984126984127 [2025-01-09 16:25:16,067 INFO L175 Difference]: Start difference. First operand has 52 places, 42 transitions, 152 flow. Second operand 6 states and 158 transitions. [2025-01-09 16:25:16,067 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 57 places, 73 transitions, 344 flow [2025-01-09 16:25:16,071 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 53 places, 73 transitions, 319 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-01-09 16:25:16,071 INFO L231 Difference]: Finished difference. Result has 55 places, 42 transitions, 166 flow [2025-01-09 16:25:16,072 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=130, PETRI_DIFFERENCE_MINUEND_PLACES=48, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=42, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=166, PETRI_PLACES=55, PETRI_TRANSITIONS=42} [2025-01-09 16:25:16,072 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 7 predicate places. [2025-01-09 16:25:16,072 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 42 transitions, 166 flow [2025-01-09 16:25:16,072 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 18.833333333333332) internal successors, (113), 6 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:16,073 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:16,073 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:16,073 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-01-09 16:25:16,073 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:16,073 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:16,073 INFO L85 PathProgramCache]: Analyzing trace with hash -134175436, now seen corresponding path program 1 times [2025-01-09 16:25:16,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:16,074 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1874701796] [2025-01-09 16:25:16,074 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:25:16,074 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:16,083 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-01-09 16:25:16,176 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-09 16:25:16,176 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:16,176 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:16,480 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:16,481 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:16,481 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1874701796] [2025-01-09 16:25:16,481 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1874701796] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:16,481 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:16,481 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-01-09 16:25:16,481 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2111948545] [2025-01-09 16:25:16,481 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:16,482 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-01-09 16:25:16,482 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:16,483 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-01-09 16:25:16,483 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-01-09 16:25:16,515 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 42 [2025-01-09 16:25:16,516 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 55 places, 42 transitions, 166 flow. Second operand has 7 states, 7 states have (on average 16.285714285714285) internal successors, (114), 7 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:16,516 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:16,516 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 42 [2025-01-09 16:25:16,517 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:16,970 INFO L124 PetriNetUnfolderBase]: 1415/2410 cut-off events. [2025-01-09 16:25:16,971 INFO L125 PetriNetUnfolderBase]: For 905/919 co-relation queries the response was YES. [2025-01-09 16:25:16,975 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5566 conditions, 2410 events. 1415/2410 cut-off events. For 905/919 co-relation queries the response was YES. Maximal size of possible extension queue 119. Compared 13254 event pairs, 309 based on Foata normal form. 8/2369 useless extension candidates. Maximal degree in co-relation 5551. Up to 1208 conditions per place. [2025-01-09 16:25:16,980 INFO L140 encePairwiseOnDemand]: 33/42 looper letters, 39 selfloop transitions, 4 changer transitions 34/93 dead transitions. [2025-01-09 16:25:16,980 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 93 transitions, 440 flow [2025-01-09 16:25:16,980 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-01-09 16:25:16,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-01-09 16:25:16,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 182 transitions. [2025-01-09 16:25:16,981 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5416666666666666 [2025-01-09 16:25:16,981 INFO L175 Difference]: Start difference. First operand has 55 places, 42 transitions, 166 flow. Second operand 8 states and 182 transitions. [2025-01-09 16:25:16,982 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 93 transitions, 440 flow [2025-01-09 16:25:16,991 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 93 transitions, 376 flow, removed 14 selfloop flow, removed 8 redundant places. [2025-01-09 16:25:16,992 INFO L231 Difference]: Finished difference. Result has 60 places, 44 transitions, 144 flow [2025-01-09 16:25:16,992 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=110, PETRI_DIFFERENCE_MINUEND_PLACES=47, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=42, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=144, PETRI_PLACES=60, PETRI_TRANSITIONS=44} [2025-01-09 16:25:16,993 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 12 predicate places. [2025-01-09 16:25:16,993 INFO L471 AbstractCegarLoop]: Abstraction has has 60 places, 44 transitions, 144 flow [2025-01-09 16:25:16,993 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 16.285714285714285) internal successors, (114), 7 states have internal predecessors, (114), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:16,993 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:16,993 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:16,993 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-01-09 16:25:16,993 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:16,995 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:16,995 INFO L85 PathProgramCache]: Analyzing trace with hash -1270681488, now seen corresponding path program 2 times [2025-01-09 16:25:16,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:16,995 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [377142935] [2025-01-09 16:25:16,996 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:25:16,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:17,007 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 32 statements into 1 equivalence classes. [2025-01-09 16:25:17,104 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-09 16:25:17,104 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-09 16:25:17,104 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:25:18,685 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:25:18,685 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:25:18,685 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [377142935] [2025-01-09 16:25:18,685 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [377142935] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:25:18,685 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:25:18,685 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-01-09 16:25:18,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1559046294] [2025-01-09 16:25:18,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:25:18,686 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-01-09 16:25:18,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:25:18,686 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-01-09 16:25:18,687 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2025-01-09 16:25:18,697 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 42 [2025-01-09 16:25:18,697 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 60 places, 44 transitions, 144 flow. Second operand has 10 states, 10 states have (on average 19.8) internal successors, (198), 10 states have internal predecessors, (198), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:18,697 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:25:18,698 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 42 [2025-01-09 16:25:18,698 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:25:19,162 INFO L124 PetriNetUnfolderBase]: 591/1133 cut-off events. [2025-01-09 16:25:19,163 INFO L125 PetriNetUnfolderBase]: For 66/93 co-relation queries the response was YES. [2025-01-09 16:25:19,165 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2401 conditions, 1133 events. 591/1133 cut-off events. For 66/93 co-relation queries the response was YES. Maximal size of possible extension queue 68. Compared 6094 event pairs, 92 based on Foata normal form. 10/1069 useless extension candidates. Maximal degree in co-relation 2384. Up to 265 conditions per place. [2025-01-09 16:25:19,168 INFO L140 encePairwiseOnDemand]: 33/42 looper letters, 48 selfloop transitions, 7 changer transitions 19/96 dead transitions. [2025-01-09 16:25:19,168 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 65 places, 96 transitions, 412 flow [2025-01-09 16:25:19,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-01-09 16:25:19,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2025-01-09 16:25:19,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 254 transitions. [2025-01-09 16:25:19,169 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6047619047619047 [2025-01-09 16:25:19,169 INFO L175 Difference]: Start difference. First operand has 60 places, 44 transitions, 144 flow. Second operand 10 states and 254 transitions. [2025-01-09 16:25:19,169 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 65 places, 96 transitions, 412 flow [2025-01-09 16:25:19,170 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 62 places, 96 transitions, 402 flow, removed 5 selfloop flow, removed 3 redundant places. [2025-01-09 16:25:19,171 INFO L231 Difference]: Finished difference. Result has 66 places, 45 transitions, 165 flow [2025-01-09 16:25:19,171 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=138, PETRI_DIFFERENCE_MINUEND_PLACES=53, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=44, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=10, PETRI_FLOW=165, PETRI_PLACES=66, PETRI_TRANSITIONS=45} [2025-01-09 16:25:19,172 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 18 predicate places. [2025-01-09 16:25:19,172 INFO L471 AbstractCegarLoop]: Abstraction has has 66 places, 45 transitions, 165 flow [2025-01-09 16:25:19,172 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 19.8) internal successors, (198), 10 states have internal predecessors, (198), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-09 16:25:19,172 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:25:19,172 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:25:19,172 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-01-09 16:25:19,172 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-01-09 16:25:19,173 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:25:19,173 INFO L85 PathProgramCache]: Analyzing trace with hash -1313793370, now seen corresponding path program 3 times [2025-01-09 16:25:19,173 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:25:19,173 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [229474160] [2025-01-09 16:25:19,173 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-09 16:25:19,173 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:25:19,181 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 32 statements into 1 equivalence classes. [2025-01-09 16:25:19,250 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-09 16:25:19,251 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-01-09 16:25:19,251 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 16:25:19,251 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 16:25:19,256 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-01-09 16:25:19,325 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-09 16:25:19,325 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:25:19,325 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 16:25:19,356 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 16:25:19,356 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 16:25:19,357 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2025-01-09 16:25:19,358 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (4 of 6 remaining) [2025-01-09 16:25:19,359 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2025-01-09 16:25:19,359 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2025-01-09 16:25:19,359 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2025-01-09 16:25:19,359 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2025-01-09 16:25:19,359 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-01-09 16:25:19,359 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2025-01-09 16:25:19,437 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-01-09 16:25:19,437 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 16:25:19,443 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 04:25:19 BasicIcfg [2025-01-09 16:25:19,443 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 16:25:19,445 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 16:25:19,445 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 16:25:19,445 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 16:25:19,446 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:25:13" (3/4) ... [2025-01-09 16:25:19,447 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-01-09 16:25:19,521 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-01-09 16:25:19,552 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-01-09 16:25:19,552 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.yml [2025-01-09 16:25:19,552 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 16:25:19,553 INFO L158 Benchmark]: Toolchain (without parser) took 7326.55ms. Allocated memory was 142.6MB in the beginning and 637.5MB in the end (delta: 494.9MB). Free memory was 104.8MB in the beginning and 330.3MB in the end (delta: -225.5MB). Peak memory consumption was 273.7MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,553 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 201.3MB. Free memory is still 127.2MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:25:19,553 INFO L158 Benchmark]: CACSL2BoogieTranslator took 401.07ms. Allocated memory is still 142.6MB. Free memory was 104.8MB in the beginning and 79.6MB in the end (delta: 25.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,554 INFO L158 Benchmark]: Boogie Procedure Inliner took 51.03ms. Allocated memory is still 142.6MB. Free memory was 79.6MB in the beginning and 77.6MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:25:19,554 INFO L158 Benchmark]: Boogie Preprocessor took 48.71ms. Allocated memory is still 142.6MB. Free memory was 77.6MB in the beginning and 74.3MB in the end (delta: 3.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,554 INFO L158 Benchmark]: RCFGBuilder took 622.30ms. Allocated memory is still 142.6MB. Free memory was 73.3MB in the beginning and 84.9MB in the end (delta: -11.6MB). Peak memory consumption was 47.8MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,554 INFO L158 Benchmark]: TraceAbstraction took 6091.08ms. Allocated memory was 142.6MB in the beginning and 637.5MB in the end (delta: 494.9MB). Free memory was 84.9MB in the beginning and 347.9MB in the end (delta: -263.0MB). Peak memory consumption was 225.9MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,554 INFO L158 Benchmark]: Witness Printer took 107.53ms. Allocated memory is still 637.5MB. Free memory was 347.9MB in the beginning and 330.3MB in the end (delta: 17.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-01-09 16:25:19,555 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.17ms. Allocated memory is still 201.3MB. Free memory is still 127.2MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 401.07ms. Allocated memory is still 142.6MB. Free memory was 104.8MB in the beginning and 79.6MB in the end (delta: 25.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 51.03ms. Allocated memory is still 142.6MB. Free memory was 79.6MB in the beginning and 77.6MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 48.71ms. Allocated memory is still 142.6MB. Free memory was 77.6MB in the beginning and 74.3MB in the end (delta: 3.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * RCFGBuilder took 622.30ms. Allocated memory is still 142.6MB. Free memory was 73.3MB in the beginning and 84.9MB in the end (delta: -11.6MB). Peak memory consumption was 47.8MB. Max. memory is 16.1GB. * TraceAbstraction took 6091.08ms. Allocated memory was 142.6MB in the beginning and 637.5MB in the end (delta: 494.9MB). Free memory was 84.9MB in the beginning and 347.9MB in the end (delta: -263.0MB). Peak memory consumption was 225.9MB. Max. memory is 16.1GB. * Witness Printer took 107.53ms. Allocated memory is still 637.5MB. Free memory was 347.9MB in the beginning and 330.3MB in the end (delta: 17.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 19]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L710] 0 int __unbuffered_cnt = 0; [L712] 0 int __unbuffered_p0_EAX = 0; [L714] 0 int __unbuffered_p0_EBX = 0; [L716] 0 int __unbuffered_p1_EAX = 0; [L718] 0 int __unbuffered_p1_EBX = 0; [L720] 0 int __unbuffered_p2_EAX = 0; [L722] 0 int __unbuffered_p2_EBX = 0; [L723] 0 _Bool main$tmp_guard0; [L724] 0 _Bool main$tmp_guard1; [L726] 0 int x = 0; [L728] 0 int y = 0; [L730] 0 int z = 0; [L731] 0 _Bool z$flush_delayed; [L732] 0 int z$mem_tmp; [L733] 0 _Bool z$r_buff0_thd0; [L734] 0 _Bool z$r_buff0_thd1; [L735] 0 _Bool z$r_buff0_thd2; [L736] 0 _Bool z$r_buff0_thd3; [L737] 0 _Bool z$r_buff1_thd0; [L738] 0 _Bool z$r_buff1_thd1; [L739] 0 _Bool z$r_buff1_thd2; [L740] 0 _Bool z$r_buff1_thd3; [L741] 0 _Bool z$read_delayed; [L742] 0 int *z$read_delayed_var; [L743] 0 int z$w_buff0; [L744] 0 _Bool z$w_buff0_used; [L745] 0 int z$w_buff1; [L746] 0 _Bool z$w_buff1_used; [L747] 0 _Bool weak$$choice0; [L748] 0 _Bool weak$$choice2; [L864] 0 pthread_t t14; [L865] FCALL, FORK 0 pthread_create(&t14, ((void *)0), P0, ((void *)0)) VAL [__unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t14=-1, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=0, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=0, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=0] [L866] 0 pthread_t t15; [L867] FCALL, FORK 0 pthread_create(&t15, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t14=-1, t15=0, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=0, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=0, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=0] [L868] 0 pthread_t t16; [L869] FCALL, FORK 0 pthread_create(&t16, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t14=-1, t15=0, t16=1, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=0, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=0, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=0] [L752] 1 z$w_buff1 = z$w_buff0 [L753] 1 z$w_buff0 = 1 [L754] 1 z$w_buff1_used = z$w_buff0_used [L755] 1 z$w_buff0_used = (_Bool)1 [L756] CALL 1 __VERIFIER_assert(!(z$w_buff1_used && z$w_buff0_used)) [L19] COND FALSE 1 !(!expression) [L756] RET 1 __VERIFIER_assert(!(z$w_buff1_used && z$w_buff0_used)) [L757] 1 z$r_buff1_thd0 = z$r_buff0_thd0 [L758] 1 z$r_buff1_thd1 = z$r_buff0_thd1 [L759] 1 z$r_buff1_thd2 = z$r_buff0_thd2 [L760] 1 z$r_buff1_thd3 = z$r_buff0_thd3 [L761] 1 z$r_buff0_thd1 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L764] 1 weak$$choice0 = __VERIFIER_nondet_bool() [L765] 1 weak$$choice2 = __VERIFIER_nondet_bool() [L766] 1 z$flush_delayed = weak$$choice2 [L767] 1 z$mem_tmp = z [L768] 1 z = !z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z : (z$w_buff0_used && z$r_buff0_thd1 ? z$w_buff0 : z$w_buff1) [L769] 1 z$w_buff0 = weak$$choice2 ? z$w_buff0 : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$w_buff0 : (z$w_buff0_used && z$r_buff0_thd1 ? z$w_buff0 : z$w_buff0)) [L770] 1 z$w_buff1 = weak$$choice2 ? z$w_buff1 : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$w_buff1 : (z$w_buff0_used && z$r_buff0_thd1 ? z$w_buff1 : z$w_buff1)) [L771] 1 z$w_buff0_used = weak$$choice2 ? z$w_buff0_used : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$w_buff0_used : (z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$w_buff0_used)) [L772] 1 z$w_buff1_used = weak$$choice2 ? z$w_buff1_used : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$w_buff1_used : (z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L773] 1 z$r_buff0_thd1 = weak$$choice2 ? z$r_buff0_thd1 : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$r_buff0_thd1 : (z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$r_buff0_thd1)) [L774] 1 z$r_buff1_thd1 = weak$$choice2 ? z$r_buff1_thd1 : (!z$w_buff0_used || !z$r_buff0_thd1 && !z$w_buff1_used || !z$r_buff0_thd1 && !z$r_buff1_thd1 ? z$r_buff1_thd1 : (z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L775] 1 __unbuffered_p0_EAX = z [L776] 1 z = z$flush_delayed ? z$mem_tmp : z [L777] 1 z$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L780] 1 __unbuffered_p0_EBX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=0, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L797] 2 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L800] 2 __unbuffered_p1_EAX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L803] 2 __unbuffered_p1_EBX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L806] 2 z = z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd2 ? z$w_buff1 : z) [L807] 2 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$w_buff0_used [L808] 2 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd2 || z$w_buff1_used && z$r_buff1_thd2 ? (_Bool)0 : z$w_buff1_used [L809] 2 z$r_buff0_thd2 = z$w_buff0_used && z$r_buff0_thd2 ? (_Bool)0 : z$r_buff0_thd2 [L810] 2 z$r_buff1_thd2 = z$w_buff0_used && z$r_buff0_thd2 || z$w_buff1_used && z$r_buff1_thd2 ? (_Bool)0 : z$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=0, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L820] 3 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L823] 3 __unbuffered_p2_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L826] 3 weak$$choice0 = __VERIFIER_nondet_bool() [L827] 3 weak$$choice2 = __VERIFIER_nondet_bool() [L828] 3 z$flush_delayed = weak$$choice2 [L829] 3 z$mem_tmp = z [L830] 3 z = !z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z : (z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : z$w_buff1) [L831] 3 z$w_buff0 = weak$$choice2 ? z$w_buff0 : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$w_buff0 : (z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : z$w_buff0)) [L832] 3 z$w_buff1 = weak$$choice2 ? z$w_buff1 : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$w_buff1 : (z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff1 : z$w_buff1)) [L833] 3 z$w_buff0_used = weak$$choice2 ? z$w_buff0_used : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$w_buff0_used : (z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : z$w_buff0_used)) [L834] 3 z$w_buff1_used = weak$$choice2 ? z$w_buff1_used : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$w_buff1_used : (z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L835] 3 z$r_buff0_thd3 = weak$$choice2 ? z$r_buff0_thd3 : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$r_buff0_thd3 : (z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : z$r_buff0_thd3)) [L836] 3 z$r_buff1_thd3 = weak$$choice2 ? z$r_buff1_thd3 : (!z$w_buff0_used || !z$r_buff0_thd3 && !z$w_buff1_used || !z$r_buff0_thd3 && !z$r_buff1_thd3 ? z$r_buff1_thd3 : (z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L837] 3 __unbuffered_p2_EBX = z [L838] 3 z = z$flush_delayed ? z$mem_tmp : z [L839] 3 z$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L842] 3 z = z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd3 ? z$w_buff1 : z) [L843] 3 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : z$w_buff0_used [L844] 3 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd3 || z$w_buff1_used && z$r_buff1_thd3 ? (_Bool)0 : z$w_buff1_used [L845] 3 z$r_buff0_thd3 = z$w_buff0_used && z$r_buff0_thd3 ? (_Bool)0 : z$r_buff0_thd3 [L846] 3 z$r_buff1_thd3 = z$w_buff0_used && z$r_buff0_thd3 || z$w_buff1_used && z$r_buff1_thd3 ? (_Bool)0 : z$r_buff1_thd3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=1, z$w_buff1=0, z$w_buff1_used=0, z=0] [L783] 1 z = z$w_buff0_used && z$r_buff0_thd1 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd1 ? z$w_buff1 : z) [L784] 1 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$w_buff0_used [L785] 1 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd1 || z$w_buff1_used && z$r_buff1_thd1 ? (_Bool)0 : z$w_buff1_used [L786] 1 z$r_buff0_thd1 = z$w_buff0_used && z$r_buff0_thd1 ? (_Bool)0 : z$r_buff0_thd1 [L787] 1 z$r_buff1_thd1 = z$w_buff0_used && z$r_buff0_thd1 || z$w_buff1_used && z$r_buff1_thd1 ? (_Bool)0 : z$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L790] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L813] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L849] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L871] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t14=-1, t15=0, t16=1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L873] CALL 0 assume_abort_if_not(main$tmp_guard0) [L4] COND FALSE 0 !(!cond) [L873] RET 0 assume_abort_if_not(main$tmp_guard0) [L875] 0 z = z$w_buff0_used && z$r_buff0_thd0 ? z$w_buff0 : (z$w_buff1_used && z$r_buff1_thd0 ? z$w_buff1 : z) [L876] 0 z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool)0 : z$w_buff0_used [L877] 0 z$w_buff1_used = z$w_buff0_used && z$r_buff0_thd0 || z$w_buff1_used && z$r_buff1_thd0 ? (_Bool)0 : z$w_buff1_used [L878] 0 z$r_buff0_thd0 = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool)0 : z$r_buff0_thd0 [L879] 0 z$r_buff1_thd0 = z$w_buff0_used && z$r_buff0_thd0 || z$w_buff1_used && z$r_buff1_thd0 ? (_Bool)0 : z$r_buff1_thd0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t14=-1, t15=0, t16=1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L882] 0 main$tmp_guard1 = !(__unbuffered_p0_EAX == 1 && __unbuffered_p0_EBX == 0 && __unbuffered_p1_EAX == 1 && __unbuffered_p1_EBX == 0 && __unbuffered_p2_EAX == 1 && __unbuffered_p2_EBX == 0) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t14=-1, t15=0, t16=1, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L884] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L19] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] [L19] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y=1, z$flush_delayed=0, z$mem_tmp=0, z$r_buff0_thd0=0, z$r_buff0_thd1=1, z$r_buff0_thd2=0, z$r_buff0_thd3=0, z$r_buff1_thd0=0, z$r_buff1_thd1=0, z$r_buff1_thd2=0, z$r_buff1_thd3=0, z$read_delayed=0, z$read_delayed_var={0:0}, z$w_buff0=1, z$w_buff0_used=0, z$w_buff1=0, z$w_buff1_used=0, z=1] - UnprovableResult [Line: 19]: 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: 867]: 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: 865]: 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: 869]: 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 7 procedures, 70 locations, 6 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.9s, OverallIterations: 7, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 2.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 351 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 327 mSDsluCounter, 148 SdHoareTripleChecker+Invalid, 0.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 137 mSDsCounter, 34 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 873 IncrementalHoareTripleChecker+Invalid, 907 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 34 mSolverCounterUnsat, 11 mSDtfsCounter, 873 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 45 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=166occurred in iteration=4, InterpolantAutomatonStates: 36, 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.5s SatisfiabilityAnalysisTime, 2.7s InterpolantComputationTime, 160 NumberOfCodeBlocks, 160 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 122 ConstructedInterpolants, 0 QuantifiedInterpolants, 1037 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, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-01-09 16:25:19,571 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE