./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe020_rmo.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 7724a2de Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe020_rmo.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash d52a8576f41904f21a1a217cd81ed2d36ac8928d5a02d745a0c93a101e2535cf --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-7724a2d-m [2024-06-27 17:29:40,139 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-27 17:29:40,211 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-27 17:29:40,215 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-27 17:29:40,216 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-27 17:29:40,245 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-27 17:29:40,246 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-27 17:29:40,246 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-27 17:29:40,247 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-27 17:29:40,250 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-27 17:29:40,250 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-27 17:29:40,251 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-27 17:29:40,251 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-27 17:29:40,252 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-27 17:29:40,253 INFO L153 SettingsManager]: * Use SBE=true [2024-06-27 17:29:40,253 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-27 17:29:40,253 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-27 17:29:40,253 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-27 17:29:40,253 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-27 17:29:40,254 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-27 17:29:40,254 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-27 17:29:40,254 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-27 17:29:40,254 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-27 17:29:40,255 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-27 17:29:40,255 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-27 17:29:40,255 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-27 17:29:40,255 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-27 17:29:40,255 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-27 17:29:40,256 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-27 17:29:40,256 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-27 17:29:40,257 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-27 17:29:40,257 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-27 17:29:40,257 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 17:29:40,257 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-27 17:29:40,258 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-27 17:29:40,258 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-27 17:29:40,258 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-27 17:29:40,258 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-27 17:29:40,258 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-27 17:29:40,259 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-27 17:29:40,259 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-27 17:29:40,259 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-27 17:29:40,259 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-27 17:29:40,259 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> d52a8576f41904f21a1a217cd81ed2d36ac8928d5a02d745a0c93a101e2535cf [2024-06-27 17:29:40,457 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-27 17:29:40,485 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-27 17:29:40,488 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-27 17:29:40,489 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-27 17:29:40,489 INFO L274 PluginConnector]: CDTParser initialized [2024-06-27 17:29:40,490 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-wmm/safe020_rmo.i [2024-06-27 17:29:41,616 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-27 17:29:41,846 INFO L384 CDTParser]: Found 1 translation units. [2024-06-27 17:29:41,846 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe020_rmo.i [2024-06-27 17:29:41,859 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/036f7a012/c39f582d293f4dc1982cd1ed2dafe6ac/FLAG7350fb07e [2024-06-27 17:29:41,875 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/036f7a012/c39f582d293f4dc1982cd1ed2dafe6ac [2024-06-27 17:29:41,878 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-27 17:29:41,879 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-06-27 17:29:41,880 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-27 17:29:41,880 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-27 17:29:41,884 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-27 17:29:41,885 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 05:29:41" (1/1) ... [2024-06-27 17:29:41,885 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2f1a2263 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:41, skipping insertion in model container [2024-06-27 17:29:41,885 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 05:29:41" (1/1) ... [2024-06-27 17:29:41,919 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-27 17:29:42,067 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe020_rmo.i[988,1001] [2024-06-27 17:29:42,273 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 17:29:42,285 INFO L202 MainTranslator]: Completed pre-run [2024-06-27 17:29:42,295 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe020_rmo.i[988,1001] [2024-06-27 17:29:42,347 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 17:29:42,390 INFO L206 MainTranslator]: Completed translation [2024-06-27 17:29:42,390 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42 WrapperNode [2024-06-27 17:29:42,391 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-27 17:29:42,392 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-27 17:29:42,392 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-27 17:29:42,392 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-27 17:29:42,398 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,426 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,456 INFO L138 Inliner]: procedures = 175, calls = 63, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 124 [2024-06-27 17:29:42,457 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-27 17:29:42,458 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-27 17:29:42,458 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-27 17:29:42,458 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-27 17:29:42,466 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,467 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,479 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,507 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-06-27 17:29:42,509 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,510 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,518 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,528 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,530 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,537 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,540 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-27 17:29:42,542 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-27 17:29:42,543 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-27 17:29:42,543 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-27 17:29:42,543 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (1/1) ... [2024-06-27 17:29:42,548 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 17:29:42,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 17:29:42,587 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-06-27 17:29:42,593 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-06-27 17:29:42,631 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-06-27 17:29:42,632 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-06-27 17:29:42,632 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-06-27 17:29:42,632 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-06-27 17:29:42,632 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-06-27 17:29:42,632 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-27 17:29:42,633 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-06-27 17:29:42,633 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-06-27 17:29:42,634 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-06-27 17:29:42,634 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-06-27 17:29:42,634 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-06-27 17:29:42,634 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-06-27 17:29:42,634 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-27 17:29:42,635 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-27 17:29:42,635 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-06-27 17:29:42,635 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-27 17:29:42,635 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-27 17:29:42,637 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-27 17:29:42,760 INFO L244 CfgBuilder]: Building ICFG [2024-06-27 17:29:42,762 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-27 17:29:43,049 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-27 17:29:43,049 INFO L293 CfgBuilder]: Performing block encoding [2024-06-27 17:29:43,327 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-27 17:29:43,327 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-06-27 17:29:43,328 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:29:43 BoogieIcfgContainer [2024-06-27 17:29:43,328 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-27 17:29:43,330 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-27 17:29:43,330 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-27 17:29:43,333 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-27 17:29:43,334 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.06 05:29:41" (1/3) ... [2024-06-27 17:29:43,334 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@37a6d1a6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 05:29:43, skipping insertion in model container [2024-06-27 17:29:43,335 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:29:42" (2/3) ... [2024-06-27 17:29:43,336 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@37a6d1a6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 05:29:43, skipping insertion in model container [2024-06-27 17:29:43,336 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:29:43" (3/3) ... [2024-06-27 17:29:43,337 INFO L112 eAbstractionObserver]: Analyzing ICFG safe020_rmo.i [2024-06-27 17:29:43,345 WARN L146 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-06-27 17:29:43,352 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-27 17:29:43,353 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-06-27 17:29:43,353 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-27 17:29:43,404 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-06-27 17:29:43,434 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 47 places, 38 transitions, 88 flow [2024-06-27 17:29:43,474 INFO L124 PetriNetUnfolderBase]: 1/35 cut-off events. [2024-06-27 17:29:43,475 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-27 17:29:43,480 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45 conditions, 35 events. 1/35 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 60 event pairs, 0 based on Foata normal form. 0/33 useless extension candidates. Maximal degree in co-relation 37. Up to 2 conditions per place. [2024-06-27 17:29:43,481 INFO L82 GeneralOperation]: Start removeDead. Operand has 47 places, 38 transitions, 88 flow [2024-06-27 17:29:43,484 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 42 places, 32 transitions, 73 flow [2024-06-27 17:29:43,497 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-27 17:29:43,505 INFO L357 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, mHoare=true, 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;@a803dae, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-27 17:29:43,506 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2024-06-27 17:29:43,520 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-27 17:29:43,520 INFO L124 PetriNetUnfolderBase]: 0/31 cut-off events. [2024-06-27 17:29:43,520 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-27 17:29:43,521 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:43,521 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:29:43,522 INFO L420 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-06-27 17:29:43,526 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:43,526 INFO L85 PathProgramCache]: Analyzing trace with hash 1844203346, now seen corresponding path program 1 times [2024-06-27 17:29:43,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:43,534 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1436550588] [2024-06-27 17:29:43,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:43,535 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:43,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:29:43,965 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 17:29:43,966 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:29:43,966 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1436550588] [2024-06-27 17:29:43,966 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1436550588] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:29:43,967 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:29:43,967 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-27 17:29:43,969 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1068746136] [2024-06-27 17:29:43,969 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:29:43,975 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 17:29:43,980 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:29:44,004 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 17:29:44,005 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 17:29:44,020 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 38 [2024-06-27 17:29:44,023 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 32 transitions, 73 flow. Second operand has 4 states, 4 states have (on average 16.0) internal successors, (64), 4 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-27 17:29:44,023 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:29:44,023 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 38 [2024-06-27 17:29:44,024 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:29:44,490 INFO L124 PetriNetUnfolderBase]: 1497/2434 cut-off events. [2024-06-27 17:29:44,490 INFO L125 PetriNetUnfolderBase]: For 18/18 co-relation queries the response was YES. [2024-06-27 17:29:44,498 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4745 conditions, 2434 events. 1497/2434 cut-off events. For 18/18 co-relation queries the response was YES. Maximal size of possible extension queue 155. Compared 14231 event pairs, 186 based on Foata normal form. 100/2522 useless extension candidates. Maximal degree in co-relation 4734. Up to 1316 conditions per place. [2024-06-27 17:29:44,543 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 42 selfloop transitions, 5 changer transitions 1/57 dead transitions. [2024-06-27 17:29:44,543 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 57 transitions, 225 flow [2024-06-27 17:29:44,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 17:29:44,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 17:29:44,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 102 transitions. [2024-06-27 17:29:44,554 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6710526315789473 [2024-06-27 17:29:44,555 INFO L175 Difference]: Start difference. First operand has 42 places, 32 transitions, 73 flow. Second operand 4 states and 102 transitions. [2024-06-27 17:29:44,556 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 57 transitions, 225 flow [2024-06-27 17:29:44,558 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 57 transitions, 220 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-06-27 17:29:44,560 INFO L231 Difference]: Finished difference. Result has 44 places, 35 transitions, 104 flow [2024-06-27 17:29:44,561 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=70, PETRI_DIFFERENCE_MINUEND_PLACES=39, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=104, PETRI_PLACES=44, PETRI_TRANSITIONS=35} [2024-06-27 17:29:44,564 INFO L281 CegarLoopForPetriNet]: 42 programPoint places, 2 predicate places. [2024-06-27 17:29:44,564 INFO L495 AbstractCegarLoop]: Abstraction has has 44 places, 35 transitions, 104 flow [2024-06-27 17:29:44,565 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 16.0) internal successors, (64), 4 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-27 17:29:44,565 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:44,565 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:29:44,565 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-27 17:29:44,565 INFO L420 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-06-27 17:29:44,566 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:44,566 INFO L85 PathProgramCache]: Analyzing trace with hash -1768426766, now seen corresponding path program 1 times [2024-06-27 17:29:44,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:44,566 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [698447395] [2024-06-27 17:29:44,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:44,567 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:44,614 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:29:44,721 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 17:29:44,722 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:29:44,722 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [698447395] [2024-06-27 17:29:44,722 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [698447395] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:29:44,722 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:29:44,723 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-27 17:29:44,723 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1260823886] [2024-06-27 17:29:44,723 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:29:44,724 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 17:29:44,724 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:29:44,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 17:29:44,725 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-06-27 17:29:44,728 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 38 [2024-06-27 17:29:44,729 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 35 transitions, 104 flow. Second operand has 5 states, 5 states have (on average 16.0) internal successors, (80), 5 states have internal predecessors, (80), 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-06-27 17:29:44,729 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:29:44,729 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 38 [2024-06-27 17:29:44,729 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:29:45,017 INFO L124 PetriNetUnfolderBase]: 960/1585 cut-off events. [2024-06-27 17:29:45,017 INFO L125 PetriNetUnfolderBase]: For 415/415 co-relation queries the response was YES. [2024-06-27 17:29:45,020 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3684 conditions, 1585 events. 960/1585 cut-off events. For 415/415 co-relation queries the response was YES. Maximal size of possible extension queue 78. Compared 8223 event pairs, 98 based on Foata normal form. 82/1655 useless extension candidates. Maximal degree in co-relation 3672. Up to 581 conditions per place. [2024-06-27 17:29:45,024 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 53 selfloop transitions, 8 changer transitions 1/71 dead transitions. [2024-06-27 17:29:45,025 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 71 transitions, 321 flow [2024-06-27 17:29:45,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 17:29:45,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 17:29:45,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 129 transitions. [2024-06-27 17:29:45,027 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6789473684210526 [2024-06-27 17:29:45,027 INFO L175 Difference]: Start difference. First operand has 44 places, 35 transitions, 104 flow. Second operand 5 states and 129 transitions. [2024-06-27 17:29:45,027 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 71 transitions, 321 flow [2024-06-27 17:29:45,028 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 71 transitions, 311 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-06-27 17:29:45,029 INFO L231 Difference]: Finished difference. Result has 48 places, 38 transitions, 144 flow [2024-06-27 17:29:45,029 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=96, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=35, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=144, PETRI_PLACES=48, PETRI_TRANSITIONS=38} [2024-06-27 17:29:45,030 INFO L281 CegarLoopForPetriNet]: 42 programPoint places, 6 predicate places. [2024-06-27 17:29:45,030 INFO L495 AbstractCegarLoop]: Abstraction has has 48 places, 38 transitions, 144 flow [2024-06-27 17:29:45,030 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 16.0) internal successors, (80), 5 states have internal predecessors, (80), 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-06-27 17:29:45,030 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:45,031 INFO L208 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-06-27 17:29:45,031 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-27 17:29:45,031 INFO L420 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-06-27 17:29:45,031 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:45,032 INFO L85 PathProgramCache]: Analyzing trace with hash -1043553750, now seen corresponding path program 1 times [2024-06-27 17:29:45,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:45,032 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [473378708] [2024-06-27 17:29:45,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:45,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:45,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:29:45,312 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 17:29:45,312 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:29:45,312 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [473378708] [2024-06-27 17:29:45,313 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [473378708] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:29:45,317 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:29:45,318 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-06-27 17:29:45,318 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2031088039] [2024-06-27 17:29:45,318 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:29:45,319 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-06-27 17:29:45,319 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:29:45,319 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-06-27 17:29:45,320 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2024-06-27 17:29:45,327 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 38 [2024-06-27 17:29:45,328 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 38 transitions, 144 flow. Second operand has 6 states, 6 states have (on average 16.0) internal successors, (96), 6 states have internal predecessors, (96), 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-06-27 17:29:45,328 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:29:45,328 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 38 [2024-06-27 17:29:45,328 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:29:45,548 INFO L124 PetriNetUnfolderBase]: 567/926 cut-off events. [2024-06-27 17:29:45,548 INFO L125 PetriNetUnfolderBase]: For 744/744 co-relation queries the response was YES. [2024-06-27 17:29:45,550 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2434 conditions, 926 events. 567/926 cut-off events. For 744/744 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 4090 event pairs, 81 based on Foata normal form. 40/954 useless extension candidates. Maximal degree in co-relation 2420. Up to 308 conditions per place. [2024-06-27 17:29:45,553 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 46 selfloop transitions, 11 changer transitions 1/67 dead transitions. [2024-06-27 17:29:45,554 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 67 transitions, 328 flow [2024-06-27 17:29:45,554 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-06-27 17:29:45,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-06-27 17:29:45,557 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 138 transitions. [2024-06-27 17:29:45,558 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6052631578947368 [2024-06-27 17:29:45,558 INFO L175 Difference]: Start difference. First operand has 48 places, 38 transitions, 144 flow. Second operand 6 states and 138 transitions. [2024-06-27 17:29:45,558 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 67 transitions, 328 flow [2024-06-27 17:29:45,561 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 49 places, 67 transitions, 303 flow, removed 4 selfloop flow, removed 4 redundant places. [2024-06-27 17:29:45,562 INFO L231 Difference]: Finished difference. Result has 51 places, 38 transitions, 158 flow [2024-06-27 17:29:45,563 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=122, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=158, PETRI_PLACES=51, PETRI_TRANSITIONS=38} [2024-06-27 17:29:45,563 INFO L281 CegarLoopForPetriNet]: 42 programPoint places, 9 predicate places. [2024-06-27 17:29:45,563 INFO L495 AbstractCegarLoop]: Abstraction has has 51 places, 38 transitions, 158 flow [2024-06-27 17:29:45,563 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 16.0) internal successors, (96), 6 states have internal predecessors, (96), 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-06-27 17:29:45,564 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:45,564 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:29:45,564 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-27 17:29:45,564 INFO L420 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-06-27 17:29:45,565 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:45,565 INFO L85 PathProgramCache]: Analyzing trace with hash -1372873303, now seen corresponding path program 1 times [2024-06-27 17:29:45,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:45,565 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1903568754] [2024-06-27 17:29:45,565 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:45,565 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:45,623 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:29:45,832 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 17:29:45,832 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:29:45,833 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1903568754] [2024-06-27 17:29:45,836 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1903568754] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:29:45,836 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:29:45,836 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-06-27 17:29:45,836 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [51973715] [2024-06-27 17:29:45,836 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:29:45,837 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 17:29:45,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:29:45,839 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 17:29:45,840 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-06-27 17:29:45,852 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 38 [2024-06-27 17:29:45,853 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 51 places, 38 transitions, 158 flow. Second operand has 5 states, 5 states have (on average 17.8) internal successors, (89), 5 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-06-27 17:29:45,853 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:29:45,853 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 38 [2024-06-27 17:29:45,853 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:29:46,042 INFO L124 PetriNetUnfolderBase]: 674/1255 cut-off events. [2024-06-27 17:29:46,043 INFO L125 PetriNetUnfolderBase]: For 579/593 co-relation queries the response was YES. [2024-06-27 17:29:46,045 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2916 conditions, 1255 events. 674/1255 cut-off events. For 579/593 co-relation queries the response was YES. Maximal size of possible extension queue 79. Compared 6923 event pairs, 313 based on Foata normal form. 8/1223 useless extension candidates. Maximal degree in co-relation 2901. Up to 619 conditions per place. [2024-06-27 17:29:46,048 INFO L140 encePairwiseOnDemand]: 33/38 looper letters, 26 selfloop transitions, 2 changer transitions 13/57 dead transitions. [2024-06-27 17:29:46,048 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 57 transitions, 286 flow [2024-06-27 17:29:46,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 17:29:46,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 17:29:46,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 112 transitions. [2024-06-27 17:29:46,050 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5894736842105263 [2024-06-27 17:29:46,050 INFO L175 Difference]: Start difference. First operand has 51 places, 38 transitions, 158 flow. Second operand 5 states and 112 transitions. [2024-06-27 17:29:46,050 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 57 transitions, 286 flow [2024-06-27 17:29:46,055 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 57 transitions, 222 flow, removed 14 selfloop flow, removed 8 redundant places. [2024-06-27 17:29:46,057 INFO L231 Difference]: Finished difference. Result has 50 places, 38 transitions, 114 flow [2024-06-27 17:29:46,057 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=114, PETRI_PLACES=50, PETRI_TRANSITIONS=38} [2024-06-27 17:29:46,058 INFO L281 CegarLoopForPetriNet]: 42 programPoint places, 8 predicate places. [2024-06-27 17:29:46,058 INFO L495 AbstractCegarLoop]: Abstraction has has 50 places, 38 transitions, 114 flow [2024-06-27 17:29:46,058 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 17.8) internal successors, (89), 5 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-06-27 17:29:46,059 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:46,059 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:29:46,060 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-27 17:29:46,060 INFO L420 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-06-27 17:29:46,060 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:46,060 INFO L85 PathProgramCache]: Analyzing trace with hash 238916895, now seen corresponding path program 2 times [2024-06-27 17:29:46,061 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:46,061 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [151646776] [2024-06-27 17:29:46,061 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:46,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:46,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:29:47,441 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-27 17:29:47,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:29:47,442 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [151646776] [2024-06-27 17:29:47,442 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [151646776] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:29:47,443 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:29:47,443 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2024-06-27 17:29:47,443 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [520061533] [2024-06-27 17:29:47,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:29:47,444 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2024-06-27 17:29:47,444 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:29:47,445 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2024-06-27 17:29:47,445 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2024-06-27 17:29:47,451 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 38 [2024-06-27 17:29:47,452 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 38 transitions, 114 flow. Second operand has 10 states, 10 states have (on average 17.7) internal successors, (177), 10 states have internal predecessors, (177), 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-06-27 17:29:47,452 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:29:47,452 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 38 [2024-06-27 17:29:47,452 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:29:47,749 INFO L124 PetriNetUnfolderBase]: 372/712 cut-off events. [2024-06-27 17:29:47,749 INFO L125 PetriNetUnfolderBase]: For 5/5 co-relation queries the response was YES. [2024-06-27 17:29:47,751 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1445 conditions, 712 events. 372/712 cut-off events. For 5/5 co-relation queries the response was YES. Maximal size of possible extension queue 57. Compared 3355 event pairs, 70 based on Foata normal form. 8/672 useless extension candidates. Maximal degree in co-relation 1432. Up to 229 conditions per place. [2024-06-27 17:29:47,753 INFO L140 encePairwiseOnDemand]: 31/38 looper letters, 22 selfloop transitions, 3 changer transitions 23/66 dead transitions. [2024-06-27 17:29:47,753 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 66 transitions, 272 flow [2024-06-27 17:29:47,753 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-27 17:29:47,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-27 17:29:47,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 177 transitions. [2024-06-27 17:29:47,754 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5822368421052632 [2024-06-27 17:29:47,754 INFO L175 Difference]: Start difference. First operand has 50 places, 38 transitions, 114 flow. Second operand 8 states and 177 transitions. [2024-06-27 17:29:47,754 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 66 transitions, 272 flow [2024-06-27 17:29:47,755 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 66 transitions, 258 flow, removed 5 selfloop flow, removed 4 redundant places. [2024-06-27 17:29:47,756 INFO L231 Difference]: Finished difference. Result has 55 places, 38 transitions, 120 flow [2024-06-27 17:29:47,756 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=104, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=120, PETRI_PLACES=55, PETRI_TRANSITIONS=38} [2024-06-27 17:29:47,758 INFO L281 CegarLoopForPetriNet]: 42 programPoint places, 13 predicate places. [2024-06-27 17:29:47,758 INFO L495 AbstractCegarLoop]: Abstraction has has 55 places, 38 transitions, 120 flow [2024-06-27 17:29:47,760 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 17.7) internal successors, (177), 10 states have internal predecessors, (177), 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-06-27 17:29:47,760 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:29:47,760 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:29:47,761 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-06-27 17:29:47,761 INFO L420 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-06-27 17:29:47,761 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:29:47,762 INFO L85 PathProgramCache]: Analyzing trace with hash -2006459069, now seen corresponding path program 3 times [2024-06-27 17:29:47,762 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:29:47,763 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [289679704] [2024-06-27 17:29:47,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:29:47,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:29:47,811 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-06-27 17:29:47,811 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-06-27 17:29:47,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-06-27 17:29:47,908 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-06-27 17:29:47,908 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-06-27 17:29:47,909 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2024-06-27 17:29:47,910 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2024-06-27 17:29:47,910 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2024-06-27 17:29:47,911 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2024-06-27 17:29:47,911 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-06-27 17:29:47,911 INFO L445 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2024-06-27 17:29:47,914 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-27 17:29:47,915 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-27 17:29:47,986 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.06 05:29:47 BasicIcfg [2024-06-27 17:29:47,986 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-27 17:29:47,987 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-06-27 17:29:47,987 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-06-27 17:29:47,987 INFO L274 PluginConnector]: Witness Printer initialized [2024-06-27 17:29:47,987 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:29:43" (3/4) ... [2024-06-27 17:29:47,988 INFO L131 WitnessPrinter]: Generating witness for reachability counterexample [2024-06-27 17:29:48,053 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-06-27 17:29:48,053 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-06-27 17:29:48,054 INFO L158 Benchmark]: Toolchain (without parser) took 6175.24ms. Allocated memory was 165.7MB in the beginning and 302.0MB in the end (delta: 136.3MB). Free memory was 107.7MB in the beginning and 170.4MB in the end (delta: -62.7MB). Peak memory consumption was 75.4MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,054 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 165.7MB. Free memory is still 130.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-27 17:29:48,054 INFO L158 Benchmark]: CACSL2BoogieTranslator took 511.76ms. Allocated memory is still 165.7MB. Free memory was 107.3MB in the beginning and 81.7MB in the end (delta: 25.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,055 INFO L158 Benchmark]: Boogie Procedure Inliner took 64.73ms. Allocated memory is still 165.7MB. Free memory was 81.7MB in the beginning and 79.3MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,055 INFO L158 Benchmark]: Boogie Preprocessor took 83.95ms. Allocated memory is still 165.7MB. Free memory was 79.1MB in the beginning and 75.2MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,055 INFO L158 Benchmark]: RCFGBuilder took 786.31ms. Allocated memory is still 165.7MB. Free memory was 75.2MB in the beginning and 79.8MB in the end (delta: -4.6MB). Peak memory consumption was 39.6MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,055 INFO L158 Benchmark]: TraceAbstraction took 4656.02ms. Allocated memory was 165.7MB in the beginning and 302.0MB in the end (delta: 136.3MB). Free memory was 79.4MB in the beginning and 190.4MB in the end (delta: -110.9MB). Peak memory consumption was 27.5MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,055 INFO L158 Benchmark]: Witness Printer took 66.84ms. Allocated memory is still 302.0MB. Free memory was 190.4MB in the beginning and 170.4MB in the end (delta: 19.9MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2024-06-27 17:29:48,056 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.15ms. Allocated memory is still 165.7MB. Free memory is still 130.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 511.76ms. Allocated memory is still 165.7MB. Free memory was 107.3MB in the beginning and 81.7MB in the end (delta: 25.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 64.73ms. Allocated memory is still 165.7MB. Free memory was 81.7MB in the beginning and 79.3MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 83.95ms. Allocated memory is still 165.7MB. Free memory was 79.1MB in the beginning and 75.2MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 786.31ms. Allocated memory is still 165.7MB. Free memory was 75.2MB in the beginning and 79.8MB in the end (delta: -4.6MB). Peak memory consumption was 39.6MB. Max. memory is 16.1GB. * TraceAbstraction took 4656.02ms. Allocated memory was 165.7MB in the beginning and 302.0MB in the end (delta: 136.3MB). Free memory was 79.4MB in the beginning and 190.4MB in the end (delta: -110.9MB). Peak memory consumption was 27.5MB. Max. memory is 16.1GB. * Witness Printer took 66.84ms. Allocated memory is still 302.0MB. Free memory was 190.4MB in the beginning and 170.4MB in the end (delta: 19.9MB). Peak memory consumption was 18.9MB. 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_p2_EAX = 0; [L715] 0 _Bool __unbuffered_p2_EAX$flush_delayed; [L716] 0 int __unbuffered_p2_EAX$mem_tmp; [L717] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd0; [L718] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd1; [L719] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd2; [L720] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd3; [L721] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd0; [L722] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd1; [L723] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd2; [L724] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd3; [L725] 0 _Bool __unbuffered_p2_EAX$read_delayed; [L726] 0 int *__unbuffered_p2_EAX$read_delayed_var; [L727] 0 int __unbuffered_p2_EAX$w_buff0; [L728] 0 _Bool __unbuffered_p2_EAX$w_buff0_used; [L729] 0 int __unbuffered_p2_EAX$w_buff1; [L730] 0 _Bool __unbuffered_p2_EAX$w_buff1_used; [L731] 0 _Bool main$tmp_guard0; [L732] 0 _Bool main$tmp_guard1; [L734] 0 int x = 0; [L734] 0 int x = 0; [L735] 0 _Bool x$flush_delayed; [L736] 0 int x$mem_tmp; [L737] 0 _Bool x$r_buff0_thd0; [L738] 0 _Bool x$r_buff0_thd1; [L739] 0 _Bool x$r_buff0_thd2; [L740] 0 _Bool x$r_buff0_thd3; [L741] 0 _Bool x$r_buff1_thd0; [L742] 0 _Bool x$r_buff1_thd1; [L743] 0 _Bool x$r_buff1_thd2; [L744] 0 _Bool x$r_buff1_thd3; [L745] 0 _Bool x$read_delayed; [L746] 0 int *x$read_delayed_var; [L747] 0 int x$w_buff0; [L748] 0 _Bool x$w_buff0_used; [L749] 0 int x$w_buff1; [L750] 0 _Bool x$w_buff1_used; [L752] 0 int y = 0; [L753] 0 _Bool weak$$choice0; [L754] 0 _Bool weak$$choice1; [L755] 0 _Bool weak$$choice2; [L849] 0 pthread_t t2269; [L850] FCALL, FORK 0 pthread_create(&t2269, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=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, t2269=-3, 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 t2270; [L852] FCALL, FORK 0 pthread_create(&t2270, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=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, t2269=-3, t2270=-2, 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 t2271; [L854] FCALL, FORK 0 pthread_create(&t2271, ((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_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, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t2269=-3, t2270=-2, t2271=-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 \read(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_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=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] [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_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=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] [L759] 1 y = 2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=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=1, 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=2] [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_EAX = x [L776] EXPR 1 x$flush_delayed ? x$mem_tmp : 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=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=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=2] [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=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=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=2] [L789] 2 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=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=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=2] [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=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=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=2] [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=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=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=2] [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=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=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=2] [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=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=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=2] [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=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, t2269=-3, t2270=-2, t2271=-1, weak$$choice0=0, 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=2] [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=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, t2269=-3, t2270=-2, t2271=-1, weak$$choice0=0, 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=2] [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 = !(y == 2 && __unbuffered_p0_EAX == 0 && __unbuffered_p2_EAX == 1) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=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, t2269=-3, t2270=-2, t2271=-1, weak$$choice0=0, weak$$choice1=1, 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=2] [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=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=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=2] [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=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=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=2] - 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, 62 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: 4.5s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 265 SdHoareTripleChecker+Valid, 0.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 248 mSDsluCounter, 63 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 54 mSDsCounter, 20 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 514 IncrementalHoareTripleChecker+Invalid, 534 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 20 mSolverCounterUnsat, 9 mSDtfsCounter, 514 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 38 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=158occurred in iteration=3, InterpolantAutomatonStates: 28, 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.4s SatisfiabilityAnalysisTime, 2.0s InterpolantComputationTime, 142 NumberOfCodeBlocks, 142 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 108 ConstructedInterpolants, 0 QuantifiedInterpolants, 656 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-06-27 17:29:48,081 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE