./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/unreach-call.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 84cfde4a Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/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 2ca99869d70e44347287c08401504e0aa96889a44ad1dcfb8d04f6de3849ab47 --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-11 14:18:56,766 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-11 14:18:56,816 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-10-11 14:18:56,819 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-11 14:18:56,820 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-11 14:18:56,840 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-11 14:18:56,841 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-11 14:18:56,841 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-11 14:18:56,841 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-10-11 14:18:56,842 INFO L153 SettingsManager]: * Use memory slicer=true [2024-10-11 14:18:56,842 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-11 14:18:56,842 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-11 14:18:56,843 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-11 14:18:56,843 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-11 14:18:56,843 INFO L153 SettingsManager]: * Use SBE=true [2024-10-11 14:18:56,844 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-11 14:18:56,844 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-11 14:18:56,844 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-11 14:18:56,845 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-11 14:18:56,845 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-11 14:18:56,845 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-11 14:18:56,845 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-11 14:18:56,846 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-11 14:18:56,846 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-11 14:18:56,846 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-11 14:18:56,846 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-11 14:18:56,847 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-11 14:18:56,847 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-11 14:18:56,847 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-11 14:18:56,847 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-11 14:18:56,847 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-10-11 14:18:56,848 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-11 14:18:56,848 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 14:18:56,848 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-11 14:18:56,848 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-11 14:18:56,849 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-11 14:18:56,850 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-11 14:18:56,850 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-clean/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 -> 2ca99869d70e44347287c08401504e0aa96889a44ad1dcfb8d04f6de3849ab47 [2024-10-11 14:18:57,058 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-11 14:18:57,082 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-11 14:18:57,084 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-11 14:18:57,086 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-11 14:18:57,086 INFO L274 PluginConnector]: CDTParser initialized [2024-10-11 14:18:57,087 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i [2024-10-11 14:18:58,389 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-11 14:18:58,623 INFO L384 CDTParser]: Found 1 translation units. [2024-10-11 14:18:58,623 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i [2024-10-11 14:18:58,639 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/0d6c0a818/bc54356a1ed74b98aa8ebb91d05b4a6a/FLAG896d91798 [2024-10-11 14:18:58,949 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/0d6c0a818/bc54356a1ed74b98aa8ebb91d05b4a6a [2024-10-11 14:18:58,952 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-11 14:18:58,953 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-11 14:18:58,955 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-11 14:18:58,955 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-11 14:18:58,960 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-11 14:18:58,961 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 02:18:58" (1/1) ... [2024-10-11 14:18:58,962 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4b6a511 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:58, skipping insertion in model container [2024-10-11 14:18:58,962 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 02:18:58" (1/1) ... [2024-10-11 14:18:59,000 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-11 14:18:59,209 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i[992,1005] [2024-10-11 14:18:59,406 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 14:18:59,420 INFO L200 MainTranslator]: Completed pre-run [2024-10-11 14:18:59,431 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_rmo.opt.i[992,1005] [2024-10-11 14:18:59,480 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 14:18:59,509 INFO L204 MainTranslator]: Completed translation [2024-10-11 14:18:59,510 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59 WrapperNode [2024-10-11 14:18:59,510 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-11 14:18:59,511 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-11 14:18:59,511 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-11 14:18:59,511 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-11 14:18:59,517 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,540 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,568 INFO L138 Inliner]: procedures = 175, calls = 61, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 125 [2024-10-11 14:18:59,571 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-11 14:18:59,572 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-11 14:18:59,572 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-11 14:18:59,572 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-11 14:18:59,581 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,585 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,588 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,614 INFO L175 MemorySlicer]: Split 23 memory accesses to 2 slices as follows [2, 21]. 91 percent of accesses are in the largest equivalence class. The 3 initializations are split as follows [2, 1]. The 8 writes are split as follows [0, 8]. [2024-10-11 14:18:59,615 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,615 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,620 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,627 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,628 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,630 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,637 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-11 14:18:59,638 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-11 14:18:59,638 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-11 14:18:59,638 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-11 14:18:59,639 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (1/1) ... [2024-10-11 14:18:59,645 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 14:18:59,655 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 14:18:59,673 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-10-11 14:18:59,676 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-10-11 14:18:59,718 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-10-11 14:18:59,718 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-10-11 14:18:59,718 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-10-11 14:18:59,718 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-10-11 14:18:59,719 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-10-11 14:18:59,719 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-10-11 14:18:59,719 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-10-11 14:18:59,720 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-10-11 14:18:59,720 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-10-11 14:18:59,720 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-10-11 14:18:59,721 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-10-11 14:18:59,721 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-10-11 14:18:59,721 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-10-11 14:18:59,721 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-10-11 14:18:59,721 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-10-11 14:18:59,721 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-11 14:18:59,721 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-11 14:18:59,723 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-10-11 14:18:59,861 INFO L238 CfgBuilder]: Building ICFG [2024-10-11 14:18:59,863 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-11 14:19:00,194 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-10-11 14:19:00,194 INFO L287 CfgBuilder]: Performing block encoding [2024-10-11 14:19:00,467 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-11 14:19:00,468 INFO L314 CfgBuilder]: Removed 0 assume(true) statements. [2024-10-11 14:19:00,468 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:19:00 BoogieIcfgContainer [2024-10-11 14:19:00,469 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-11 14:19:00,471 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-11 14:19:00,471 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-11 14:19:00,474 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-11 14:19:00,475 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.10 02:18:58" (1/3) ... [2024-10-11 14:19:00,475 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@591cfdca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 02:19:00, skipping insertion in model container [2024-10-11 14:19:00,475 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 02:18:59" (2/3) ... [2024-10-11 14:19:00,476 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@591cfdca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 02:19:00, skipping insertion in model container [2024-10-11 14:19:00,476 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:19:00" (3/3) ... [2024-10-11 14:19:00,477 INFO L112 eAbstractionObserver]: Analyzing ICFG safe018_rmo.opt.i [2024-10-11 14:19:00,491 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-11 14:19:00,491 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-10-11 14:19:00,491 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-10-11 14:19:00,539 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-10-11 14:19:00,568 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 46 places, 37 transitions, 86 flow [2024-10-11 14:19:00,595 INFO L124 PetriNetUnfolderBase]: 1/34 cut-off events. [2024-10-11 14:19:00,596 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 14:19:00,600 INFO L83 FinitePrefix]: Finished finitePrefix Result has 44 conditions, 34 events. 1/34 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 52 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 36. Up to 2 conditions per place. [2024-10-11 14:19:00,601 INFO L82 GeneralOperation]: Start removeDead. Operand has 46 places, 37 transitions, 86 flow [2024-10-11 14:19:00,603 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 41 places, 31 transitions, 71 flow [2024-10-11 14:19:00,611 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 14:19:00,617 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;@7a7620d0, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 14:19:00,617 INFO L334 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2024-10-11 14:19:00,630 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-10-11 14:19:00,630 INFO L124 PetriNetUnfolderBase]: 0/30 cut-off events. [2024-10-11 14:19:00,630 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 14:19:00,630 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:00,631 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:00,633 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:00,637 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:00,637 INFO L85 PathProgramCache]: Analyzing trace with hash -1959464462, now seen corresponding path program 1 times [2024-10-11 14:19:00,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:00,644 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1178194878] [2024-10-11 14:19:00,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:00,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:00,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:19:01,166 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:19:01,170 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:19:01,170 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1178194878] [2024-10-11 14:19:01,171 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1178194878] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:19:01,171 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:19:01,171 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-10-11 14:19:01,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1731313403] [2024-10-11 14:19:01,173 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:19:01,180 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-10-11 14:19:01,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:19:01,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-10-11 14:19:01,205 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-10-11 14:19:01,213 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 37 [2024-10-11 14:19:01,215 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 31 transitions, 71 flow. Second operand has 4 states, 4 states have (on average 15.0) internal successors, (60), 4 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:01,215 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:19:01,216 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 37 [2024-10-11 14:19:01,217 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:19:01,714 INFO L124 PetriNetUnfolderBase]: 1497/2433 cut-off events. [2024-10-11 14:19:01,714 INFO L125 PetriNetUnfolderBase]: For 18/18 co-relation queries the response was YES. [2024-10-11 14:19:01,721 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4744 conditions, 2433 events. 1497/2433 cut-off events. For 18/18 co-relation queries the response was YES. Maximal size of possible extension queue 146. Compared 14160 event pairs, 186 based on Foata normal form. 100/2518 useless extension candidates. Maximal degree in co-relation 4733. Up to 1316 conditions per place. [2024-10-11 14:19:01,731 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 42 selfloop transitions, 5 changer transitions 1/56 dead transitions. [2024-10-11 14:19:01,731 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 56 transitions, 223 flow [2024-10-11 14:19:01,732 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-10-11 14:19:01,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-10-11 14:19:01,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 98 transitions. [2024-10-11 14:19:01,741 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6621621621621622 [2024-10-11 14:19:01,742 INFO L175 Difference]: Start difference. First operand has 41 places, 31 transitions, 71 flow. Second operand 4 states and 98 transitions. [2024-10-11 14:19:01,743 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 56 transitions, 223 flow [2024-10-11 14:19:01,746 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 56 transitions, 218 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-10-11 14:19:01,748 INFO L231 Difference]: Finished difference. Result has 43 places, 34 transitions, 102 flow [2024-10-11 14:19:01,749 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=68, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=102, PETRI_PLACES=43, PETRI_TRANSITIONS=34} [2024-10-11 14:19:01,752 INFO L277 CegarLoopForPetriNet]: 41 programPoint places, 2 predicate places. [2024-10-11 14:19:01,752 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 34 transitions, 102 flow [2024-10-11 14:19:01,752 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 15.0) internal successors, (60), 4 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:01,752 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:01,753 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:01,753 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-10-11 14:19:01,753 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:01,753 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:01,754 INFO L85 PathProgramCache]: Analyzing trace with hash -1080273198, now seen corresponding path program 1 times [2024-10-11 14:19:01,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:01,754 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [588113335] [2024-10-11 14:19:01,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:01,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:01,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:19:01,995 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:19:01,995 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:19:01,996 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [588113335] [2024-10-11 14:19:01,996 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [588113335] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:19:01,996 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:19:01,996 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-10-11 14:19:01,996 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [752273650] [2024-10-11 14:19:01,996 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:19:01,997 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-10-11 14:19:01,997 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:19:01,998 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-11 14:19:01,998 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-10-11 14:19:02,007 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 37 [2024-10-11 14:19:02,008 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 34 transitions, 102 flow. Second operand has 5 states, 5 states have (on average 15.0) internal successors, (75), 5 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) [2024-10-11 14:19:02,008 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:19:02,008 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 37 [2024-10-11 14:19:02,008 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:19:02,365 INFO L124 PetriNetUnfolderBase]: 960/1584 cut-off events. [2024-10-11 14:19:02,365 INFO L125 PetriNetUnfolderBase]: For 415/415 co-relation queries the response was YES. [2024-10-11 14:19:02,368 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3683 conditions, 1584 events. 960/1584 cut-off events. For 415/415 co-relation queries the response was YES. Maximal size of possible extension queue 75. Compared 8133 event pairs, 98 based on Foata normal form. 82/1651 useless extension candidates. Maximal degree in co-relation 3671. Up to 581 conditions per place. [2024-10-11 14:19:02,374 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 53 selfloop transitions, 8 changer transitions 1/70 dead transitions. [2024-10-11 14:19:02,375 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 70 transitions, 319 flow [2024-10-11 14:19:02,375 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-10-11 14:19:02,375 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-10-11 14:19:02,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 124 transitions. [2024-10-11 14:19:02,378 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6702702702702703 [2024-10-11 14:19:02,379 INFO L175 Difference]: Start difference. First operand has 43 places, 34 transitions, 102 flow. Second operand 5 states and 124 transitions. [2024-10-11 14:19:02,379 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 70 transitions, 319 flow [2024-10-11 14:19:02,381 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 70 transitions, 309 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-10-11 14:19:02,383 INFO L231 Difference]: Finished difference. Result has 47 places, 37 transitions, 142 flow [2024-10-11 14:19:02,383 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=94, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=142, PETRI_PLACES=47, PETRI_TRANSITIONS=37} [2024-10-11 14:19:02,384 INFO L277 CegarLoopForPetriNet]: 41 programPoint places, 6 predicate places. [2024-10-11 14:19:02,385 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 37 transitions, 142 flow [2024-10-11 14:19:02,385 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 15.0) internal successors, (75), 5 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) [2024-10-11 14:19:02,386 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:02,386 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:02,386 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-10-11 14:19:02,386 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:02,386 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:02,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1358789482, now seen corresponding path program 1 times [2024-10-11 14:19:02,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:02,388 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1409529565] [2024-10-11 14:19:02,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:02,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:02,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:19:02,698 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:19:02,699 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:19:02,699 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1409529565] [2024-10-11 14:19:02,700 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1409529565] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:19:02,700 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:19:02,700 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 14:19:02,700 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [299916803] [2024-10-11 14:19:02,700 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:19:02,700 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 14:19:02,700 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:19:02,701 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 14:19:02,701 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2024-10-11 14:19:02,708 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 37 [2024-10-11 14:19:02,709 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 47 places, 37 transitions, 142 flow. Second operand has 6 states, 6 states have (on average 14.833333333333334) internal successors, (89), 6 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:02,709 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:19:02,709 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 37 [2024-10-11 14:19:02,709 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:19:02,975 INFO L124 PetriNetUnfolderBase]: 567/925 cut-off events. [2024-10-11 14:19:02,976 INFO L125 PetriNetUnfolderBase]: For 744/744 co-relation queries the response was YES. [2024-10-11 14:19:02,977 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2433 conditions, 925 events. 567/925 cut-off events. For 744/744 co-relation queries the response was YES. Maximal size of possible extension queue 46. Compared 4088 event pairs, 81 based on Foata normal form. 40/950 useless extension candidates. Maximal degree in co-relation 2419. Up to 308 conditions per place. [2024-10-11 14:19:02,980 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 46 selfloop transitions, 11 changer transitions 1/66 dead transitions. [2024-10-11 14:19:02,980 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 52 places, 66 transitions, 326 flow [2024-10-11 14:19:02,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 14:19:02,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 14:19:02,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 132 transitions. [2024-10-11 14:19:02,982 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5945945945945946 [2024-10-11 14:19:02,982 INFO L175 Difference]: Start difference. First operand has 47 places, 37 transitions, 142 flow. Second operand 6 states and 132 transitions. [2024-10-11 14:19:02,982 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 52 places, 66 transitions, 326 flow [2024-10-11 14:19:02,985 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 66 transitions, 301 flow, removed 4 selfloop flow, removed 4 redundant places. [2024-10-11 14:19:02,986 INFO L231 Difference]: Finished difference. Result has 50 places, 37 transitions, 156 flow [2024-10-11 14:19:02,986 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=120, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=156, PETRI_PLACES=50, PETRI_TRANSITIONS=37} [2024-10-11 14:19:02,987 INFO L277 CegarLoopForPetriNet]: 41 programPoint places, 9 predicate places. [2024-10-11 14:19:02,987 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 37 transitions, 156 flow [2024-10-11 14:19:02,987 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 14.833333333333334) internal successors, (89), 6 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:02,987 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:02,987 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:02,988 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-10-11 14:19:02,988 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:02,988 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:02,988 INFO L85 PathProgramCache]: Analyzing trace with hash 2121218069, now seen corresponding path program 1 times [2024-10-11 14:19:02,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:02,989 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [201805880] [2024-10-11 14:19:02,989 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:02,989 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:03,106 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:19:03,974 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:19:03,975 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:19:03,975 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [201805880] [2024-10-11 14:19:03,975 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [201805880] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:19:03,976 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:19:03,979 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-10-11 14:19:03,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [809273543] [2024-10-11 14:19:03,980 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:19:03,980 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-10-11 14:19:03,980 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:19:03,980 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-10-11 14:19:03,981 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2024-10-11 14:19:03,995 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 37 [2024-10-11 14:19:03,996 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 37 transitions, 156 flow. Second operand has 8 states, 8 states have (on average 15.375) internal successors, (123), 8 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:03,996 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:19:03,996 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 37 [2024-10-11 14:19:03,996 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:19:04,446 INFO L124 PetriNetUnfolderBase]: 722/1302 cut-off events. [2024-10-11 14:19:04,446 INFO L125 PetriNetUnfolderBase]: For 565/585 co-relation queries the response was YES. [2024-10-11 14:19:04,449 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3009 conditions, 1302 events. 722/1302 cut-off events. For 565/585 co-relation queries the response was YES. Maximal size of possible extension queue 91. Compared 6988 event pairs, 219 based on Foata normal form. 8/1253 useless extension candidates. Maximal degree in co-relation 2994. Up to 362 conditions per place. [2024-10-11 14:19:04,452 INFO L140 encePairwiseOnDemand]: 28/37 looper letters, 32 selfloop transitions, 9 changer transitions 22/78 dead transitions. [2024-10-11 14:19:04,452 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 57 places, 78 transitions, 374 flow [2024-10-11 14:19:04,453 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-10-11 14:19:04,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-10-11 14:19:04,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 168 transitions. [2024-10-11 14:19:04,455 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5675675675675675 [2024-10-11 14:19:04,456 INFO L175 Difference]: Start difference. First operand has 50 places, 37 transitions, 156 flow. Second operand 8 states and 168 transitions. [2024-10-11 14:19:04,456 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 57 places, 78 transitions, 374 flow [2024-10-11 14:19:04,463 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 49 places, 78 transitions, 310 flow, removed 14 selfloop flow, removed 8 redundant places. [2024-10-11 14:19:04,465 INFO L231 Difference]: Finished difference. Result has 54 places, 43 transitions, 155 flow [2024-10-11 14:19:04,465 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=100, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=155, PETRI_PLACES=54, PETRI_TRANSITIONS=43} [2024-10-11 14:19:04,467 INFO L277 CegarLoopForPetriNet]: 41 programPoint places, 13 predicate places. [2024-10-11 14:19:04,467 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 43 transitions, 155 flow [2024-10-11 14:19:04,467 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 15.375) internal successors, (123), 8 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:04,467 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:04,467 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:04,467 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-10-11 14:19:04,468 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:04,468 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:04,468 INFO L85 PathProgramCache]: Analyzing trace with hash -262521767, now seen corresponding path program 2 times [2024-10-11 14:19:04,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:04,468 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [90941775] [2024-10-11 14:19:04,469 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:04,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:04,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 14:19:06,482 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 14:19:06,483 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 14:19:06,483 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [90941775] [2024-10-11 14:19:06,483 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [90941775] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 14:19:06,483 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 14:19:06,483 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2024-10-11 14:19:06,483 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1381850629] [2024-10-11 14:19:06,484 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 14:19:06,484 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2024-10-11 14:19:06,484 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 14:19:06,484 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2024-10-11 14:19:06,485 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2024-10-11 14:19:06,494 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 15 out of 37 [2024-10-11 14:19:06,494 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 54 places, 43 transitions, 155 flow. Second operand has 10 states, 10 states have (on average 16.7) internal successors, (167), 10 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:06,494 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 14:19:06,494 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 15 of 37 [2024-10-11 14:19:06,494 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 14:19:06,840 INFO L124 PetriNetUnfolderBase]: 415/784 cut-off events. [2024-10-11 14:19:06,840 INFO L125 PetriNetUnfolderBase]: For 217/217 co-relation queries the response was YES. [2024-10-11 14:19:06,842 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1779 conditions, 784 events. 415/784 cut-off events. For 217/217 co-relation queries the response was YES. Maximal size of possible extension queue 63. Compared 3705 event pairs, 82 based on Foata normal form. 8/738 useless extension candidates. Maximal degree in co-relation 1763. Up to 265 conditions per place. [2024-10-11 14:19:06,844 INFO L140 encePairwiseOnDemand]: 30/37 looper letters, 22 selfloop transitions, 3 changer transitions 29/71 dead transitions. [2024-10-11 14:19:06,844 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 59 places, 71 transitions, 327 flow [2024-10-11 14:19:06,844 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-10-11 14:19:06,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-10-11 14:19:06,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 169 transitions. [2024-10-11 14:19:06,845 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5709459459459459 [2024-10-11 14:19:06,845 INFO L175 Difference]: Start difference. First operand has 54 places, 43 transitions, 155 flow. Second operand 8 states and 169 transitions. [2024-10-11 14:19:06,845 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 59 places, 71 transitions, 327 flow [2024-10-11 14:19:06,847 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 71 transitions, 298 flow, removed 9 selfloop flow, removed 5 redundant places. [2024-10-11 14:19:06,848 INFO L231 Difference]: Finished difference. Result has 58 places, 37 transitions, 126 flow [2024-10-11 14:19:06,848 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=134, PETRI_DIFFERENCE_MINUEND_PLACES=47, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=43, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=126, PETRI_PLACES=58, PETRI_TRANSITIONS=37} [2024-10-11 14:19:06,848 INFO L277 CegarLoopForPetriNet]: 41 programPoint places, 17 predicate places. [2024-10-11 14:19:06,849 INFO L471 AbstractCegarLoop]: Abstraction has has 58 places, 37 transitions, 126 flow [2024-10-11 14:19:06,849 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 16.7) internal successors, (167), 10 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-10-11 14:19:06,849 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 14:19:06,849 INFO L204 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 14:19:06,849 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-10-11 14:19:06,850 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-10-11 14:19:06,850 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 14:19:06,850 INFO L85 PathProgramCache]: Analyzing trace with hash -1710005911, now seen corresponding path program 3 times [2024-10-11 14:19:06,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 14:19:06,851 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1282181422] [2024-10-11 14:19:06,851 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 14:19:06,851 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 14:19:06,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 14:19:06,955 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-11 14:19:07,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 14:19:07,081 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-11 14:19:07,082 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-10-11 14:19:07,083 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2024-10-11 14:19:07,085 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2024-10-11 14:19:07,085 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2024-10-11 14:19:07,085 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2024-10-11 14:19:07,085 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-10-11 14:19:07,086 INFO L407 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2024-10-11 14:19:07,161 INFO L234 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-10-11 14:19:07,161 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-10-11 14:19:07,166 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 11.10 02:19:07 BasicIcfg [2024-10-11 14:19:07,170 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-10-11 14:19:07,171 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-10-11 14:19:07,171 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-10-11 14:19:07,171 INFO L274 PluginConnector]: Witness Printer initialized [2024-10-11 14:19:07,172 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 02:19:00" (3/4) ... [2024-10-11 14:19:07,173 INFO L133 WitnessPrinter]: Generating witness for reachability counterexample [2024-10-11 14:19:07,266 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-10-11 14:19:07,266 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-10-11 14:19:07,267 INFO L158 Benchmark]: Toolchain (without parser) took 8313.87ms. Allocated memory was 176.2MB in the beginning and 394.3MB in the end (delta: 218.1MB). Free memory was 120.4MB in the beginning and 242.6MB in the end (delta: -122.1MB). Peak memory consumption was 94.4MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,267 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 102.8MB. Free memory was 57.2MB in the beginning and 57.1MB in the end (delta: 169.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-10-11 14:19:07,268 INFO L158 Benchmark]: CACSL2BoogieTranslator took 555.40ms. Allocated memory is still 176.2MB. Free memory was 120.4MB in the beginning and 128.5MB in the end (delta: -8.0MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,268 INFO L158 Benchmark]: Boogie Procedure Inliner took 60.83ms. Allocated memory is still 176.2MB. Free memory was 128.5MB in the beginning and 126.4MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,268 INFO L158 Benchmark]: Boogie Preprocessor took 64.99ms. Allocated memory is still 176.2MB. Free memory was 126.4MB in the beginning and 122.2MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,268 INFO L158 Benchmark]: RCFGBuilder took 831.14ms. Allocated memory was 176.2MB in the beginning and 226.5MB in the end (delta: 50.3MB). Free memory was 122.2MB in the beginning and 140.3MB in the end (delta: -18.2MB). Peak memory consumption was 49.8MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,268 INFO L158 Benchmark]: TraceAbstraction took 6699.74ms. Allocated memory was 226.5MB in the beginning and 394.3MB in the end (delta: 167.8MB). Free memory was 140.3MB in the beginning and 261.5MB in the end (delta: -121.1MB). Peak memory consumption was 47.7MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,269 INFO L158 Benchmark]: Witness Printer took 95.68ms. Allocated memory is still 394.3MB. Free memory was 261.5MB in the beginning and 242.6MB in the end (delta: 18.9MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2024-10-11 14:19:07,270 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 102.8MB. Free memory was 57.2MB in the beginning and 57.1MB in the end (delta: 169.9kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 555.40ms. Allocated memory is still 176.2MB. Free memory was 120.4MB in the beginning and 128.5MB in the end (delta: -8.0MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 60.83ms. Allocated memory is still 176.2MB. Free memory was 128.5MB in the beginning and 126.4MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 64.99ms. Allocated memory is still 176.2MB. Free memory was 126.4MB in the beginning and 122.2MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 831.14ms. Allocated memory was 176.2MB in the beginning and 226.5MB in the end (delta: 50.3MB). Free memory was 122.2MB in the beginning and 140.3MB in the end (delta: -18.2MB). Peak memory consumption was 49.8MB. Max. memory is 16.1GB. * TraceAbstraction took 6699.74ms. Allocated memory was 226.5MB in the beginning and 394.3MB in the end (delta: 167.8MB). Free memory was 140.3MB in the beginning and 261.5MB in the end (delta: -121.1MB). Peak memory consumption was 47.7MB. Max. memory is 16.1GB. * Witness Printer took 95.68ms. Allocated memory is still 394.3MB. Free memory was 261.5MB in the beginning and 242.6MB in the end (delta: 18.9MB). Peak memory consumption was 16.8MB. 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_p2_EAX = 0; [L717] 0 _Bool __unbuffered_p2_EAX$flush_delayed; [L718] 0 int __unbuffered_p2_EAX$mem_tmp; [L719] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd0; [L720] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd1; [L721] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd2; [L722] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd3; [L723] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd0; [L724] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd1; [L725] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd2; [L726] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd3; [L727] 0 _Bool __unbuffered_p2_EAX$read_delayed; [L728] 0 int *__unbuffered_p2_EAX$read_delayed_var; [L729] 0 int __unbuffered_p2_EAX$w_buff0; [L730] 0 _Bool __unbuffered_p2_EAX$w_buff0_used; [L731] 0 int __unbuffered_p2_EAX$w_buff1; [L732] 0 _Bool __unbuffered_p2_EAX$w_buff1_used; [L733] 0 _Bool main$tmp_guard0; [L734] 0 _Bool main$tmp_guard1; [L736] 0 int x = 0; [L736] 0 int x = 0; [L737] 0 _Bool x$flush_delayed; [L738] 0 int x$mem_tmp; [L739] 0 _Bool x$r_buff0_thd0; [L740] 0 _Bool x$r_buff0_thd1; [L741] 0 _Bool x$r_buff0_thd2; [L742] 0 _Bool x$r_buff0_thd3; [L743] 0 _Bool x$r_buff1_thd0; [L744] 0 _Bool x$r_buff1_thd1; [L745] 0 _Bool x$r_buff1_thd2; [L746] 0 _Bool x$r_buff1_thd3; [L747] 0 _Bool x$read_delayed; [L748] 0 int *x$read_delayed_var; [L749] 0 int x$w_buff0; [L750] 0 _Bool x$w_buff0_used; [L751] 0 int x$w_buff1; [L752] 0 _Bool x$w_buff1_used; [L754] 0 int y = 0; [L755] 0 _Bool weak$$choice0; [L756] 0 _Bool weak$$choice1; [L757] 0 _Bool weak$$choice2; [L849] 0 pthread_t t2216; [L850] FCALL, FORK 0 pthread_create(&t2216, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2216=-1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L851] 0 pthread_t t2217; [L852] FCALL, FORK 0 pthread_create(&t2217, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2216=-1, t2217=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L853] 0 pthread_t t2218; [L854] FCALL, FORK 0 pthread_create(&t2218, ((void *)0), P2, ((void *)0)) 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2216=-1, t2217=0, t2218=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L806] 3 weak$$choice0 = __VERIFIER_nondet_bool() [L807] 3 weak$$choice2 = __VERIFIER_nondet_bool() [L808] 3 x$flush_delayed = weak$$choice2 [L809] EXPR 3 \read(x) [L809] 3 x$mem_tmp = x [L810] EXPR 3 !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L810] EXPR 3 \read(x) [L810] EXPR 3 !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L810] 3 x = !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L811] 3 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff0)) [L812] 3 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff1 : x$w_buff1)) [L813] 3 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used)) [L814] 3 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L815] 3 x$r_buff0_thd3 = weak$$choice2 ? x$r_buff0_thd3 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$r_buff0_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3)) [L816] 3 x$r_buff1_thd3 = weak$$choice2 ? x$r_buff1_thd3 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$r_buff1_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L817] 3 __unbuffered_p2_EAX$read_delayed = (_Bool)1 [L818] 3 __unbuffered_p2_EAX$read_delayed_var = &x [L819] EXPR 3 \read(x) [L819] 3 __unbuffered_p2_EAX = x [L820] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L820] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L820] 3 x = x$flush_delayed ? x$mem_tmp : x [L821] 3 x$flush_delayed = (_Bool)0 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L824] 3 y = 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L761] 1 __unbuffered_p0_EAX = y 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L764] 1 weak$$choice0 = __VERIFIER_nondet_bool() [L765] 1 weak$$choice2 = __VERIFIER_nondet_bool() [L766] 1 x$flush_delayed = weak$$choice2 [L767] EXPR 1 \read(x) [L767] 1 x$mem_tmp = x [L768] EXPR 1 !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L768] EXPR 1 \read(x) [L768] EXPR 1 !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L768] 1 x = !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L769] 1 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff0)) [L770] 1 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff1 : x$w_buff1)) [L771] 1 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used)) [L772] 1 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L773] 1 x$r_buff0_thd1 = weak$$choice2 ? x$r_buff0_thd1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$r_buff0_thd1 : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1)) [L774] 1 x$r_buff1_thd1 = weak$$choice2 ? x$r_buff1_thd1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$r_buff1_thd1 : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L775] EXPR 1 \read(x) [L775] 1 __unbuffered_p0_EBX = x [L776] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L776] EXPR 1 \read(x) [L776] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L776] 1 x = x$flush_delayed ? x$mem_tmp : x [L777] 1 x$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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L827] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L827] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L827] EXPR 3 \read(x) [L827] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L827] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L827] 3 x = x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L828] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L829] 3 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$w_buff1_used [L830] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L831] 3 x$r_buff1_thd3 = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$r_buff1_thd3 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L789] 2 x = 1 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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L792] EXPR 2 x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L792] EXPR 2 x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x [L792] EXPR 2 \read(x) [L792] EXPR 2 x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x [L792] EXPR 2 x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L792] 2 x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L793] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L794] 2 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$w_buff1_used [L795] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L796] 2 x$r_buff1_thd2 = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L799] 2 __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_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L834] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L782] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L856] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2216=-1, t2217=0, t2218=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L858] CALL 0 assume_abort_if_not(main$tmp_guard0) [L4] COND FALSE 0 !(!cond) [L858] RET 0 assume_abort_if_not(main$tmp_guard0) [L860] EXPR 0 x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L860] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L860] EXPR 0 \read(x) [L860] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L860] EXPR 0 x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L860] 0 x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L861] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L862] 0 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$w_buff1_used [L863] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L864] 0 x$r_buff1_thd0 = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$r_buff1_thd0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2216=-1, t2217=0, t2218=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L867] 0 weak$$choice1 = __VERIFIER_nondet_bool() [L868] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L868] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L868] EXPR 0 \read(*__unbuffered_p2_EAX$read_delayed_var) [L868] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L868] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L868] 0 __unbuffered_p2_EAX = __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L869] 0 main$tmp_guard1 = !(__unbuffered_p0_EAX == 1 && __unbuffered_p0_EBX == 0 && __unbuffered_p2_EAX == 1) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2216=-1, t2217=0, t2218=1, weak$$choice0=0, weak$$choice1=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L871] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L19] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L19] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] - UnprovableResult [Line: 854]: 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: 850]: 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: 852]: 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, 60 locations, 4 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 6.5s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 2.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 324 SdHoareTripleChecker+Valid, 0.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 309 mSDsluCounter, 96 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 82 mSDsCounter, 31 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 590 IncrementalHoareTripleChecker+Invalid, 621 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 31 mSolverCounterUnsat, 14 mSDtfsCounter, 590 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 44 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=156occurred in iteration=3, InterpolantAutomatonStates: 31, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 3.4s InterpolantComputationTime, 139 NumberOfCodeBlocks, 139 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 106 ConstructedInterpolants, 0 QuantifiedInterpolants, 887 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 5 InterpolantComputations, 5 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2024-10-11 14:19:07,303 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/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