./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/rfi000_power.oepc_pso.oepc_rmo.oepc.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/rfi000_power.oepc_pso.oepc_rmo.oepc.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 be50e7e5241b29f4a9e868e4f8ec6ed8a757d2cee90daca598ed21c4a5ee9d77 --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-7724a2d-m [2024-06-27 17:28:18,092 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-27 17:28:18,169 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-27 17:28:18,174 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-27 17:28:18,174 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-27 17:28:18,206 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-27 17:28:18,207 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-27 17:28:18,207 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-27 17:28:18,208 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-27 17:28:18,211 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-27 17:28:18,211 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-27 17:28:18,211 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-27 17:28:18,212 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-27 17:28:18,213 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-27 17:28:18,213 INFO L153 SettingsManager]: * Use SBE=true [2024-06-27 17:28:18,214 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-27 17:28:18,214 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-27 17:28:18,214 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-27 17:28:18,214 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-27 17:28:18,214 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-27 17:28:18,215 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-27 17:28:18,215 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-27 17:28:18,215 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-27 17:28:18,215 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-27 17:28:18,216 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-27 17:28:18,216 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-27 17:28:18,216 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-27 17:28:18,216 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-27 17:28:18,217 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-27 17:28:18,217 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-27 17:28:18,218 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-27 17:28:18,218 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-27 17:28:18,218 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 17:28:18,218 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-27 17:28:18,219 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-27 17:28:18,219 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-27 17:28:18,219 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-27 17:28:18,219 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-27 17:28:18,219 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-27 17:28:18,220 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-27 17:28:18,220 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-27 17:28:18,220 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-27 17:28:18,220 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-27 17:28:18,220 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 -> be50e7e5241b29f4a9e868e4f8ec6ed8a757d2cee90daca598ed21c4a5ee9d77 [2024-06-27 17:28:18,451 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-27 17:28:18,473 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-27 17:28:18,475 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-27 17:28:18,476 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-27 17:28:18,477 INFO L274 PluginConnector]: CDTParser initialized [2024-06-27 17:28:18,478 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-wmm/rfi000_power.oepc_pso.oepc_rmo.oepc.i [2024-06-27 17:28:19,570 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-27 17:28:19,790 INFO L384 CDTParser]: Found 1 translation units. [2024-06-27 17:28:19,791 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/rfi000_power.oepc_pso.oepc_rmo.oepc.i [2024-06-27 17:28:19,812 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/15c61b6ae/ef87304c576b49309c831e5181f1c03d/FLAG75aaedbc0 [2024-06-27 17:28:19,825 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/15c61b6ae/ef87304c576b49309c831e5181f1c03d [2024-06-27 17:28:19,827 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-27 17:28:19,828 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-06-27 17:28:19,831 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-27 17:28:19,831 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-27 17:28:19,835 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-27 17:28:19,835 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 05:28:19" (1/1) ... [2024-06-27 17:28:19,836 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@11274778 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:19, skipping insertion in model container [2024-06-27 17:28:19,836 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 05:28:19" (1/1) ... [2024-06-27 17:28:19,885 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-27 17:28:20,004 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/rfi000_power.oepc_pso.oepc_rmo.oepc.i[969,982] [2024-06-27 17:28:20,226 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 17:28:20,235 INFO L202 MainTranslator]: Completed pre-run [2024-06-27 17:28:20,248 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/rfi000_power.oepc_pso.oepc_rmo.oepc.i[969,982] [2024-06-27 17:28:20,293 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 17:28:20,322 INFO L206 MainTranslator]: Completed translation [2024-06-27 17:28:20,322 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20 WrapperNode [2024-06-27 17:28:20,322 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-27 17:28:20,323 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-27 17:28:20,323 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-27 17:28:20,324 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-27 17:28:20,330 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:28:20" (1/1) ... [2024-06-27 17:28:20,359 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:28:20" (1/1) ... [2024-06-27 17:28:20,390 INFO L138 Inliner]: procedures = 174, calls = 37, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 123 [2024-06-27 17:28:20,391 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-27 17:28:20,391 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-27 17:28:20,392 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-27 17:28:20,392 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-27 17:28:20,400 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,401 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,415 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,437 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-06-27 17:28:20,439 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,439 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,447 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,456 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,457 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,464 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,466 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-27 17:28:20,468 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-27 17:28:20,469 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-27 17:28:20,469 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-27 17:28:20,470 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (1/1) ... [2024-06-27 17:28:20,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 17:28:20,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 17:28:20,526 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:28:20,580 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:28:20,608 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-06-27 17:28:20,609 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-27 17:28:20,609 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-06-27 17:28:20,609 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-06-27 17:28:20,609 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-06-27 17:28:20,609 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-06-27 17:28:20,610 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-27 17:28:20,610 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-06-27 17:28:20,610 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-27 17:28:20,610 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-27 17:28:20,612 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:28:20,724 INFO L244 CfgBuilder]: Building ICFG [2024-06-27 17:28:20,726 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-27 17:28:20,961 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-27 17:28:20,962 INFO L293 CfgBuilder]: Performing block encoding [2024-06-27 17:28:21,167 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-27 17:28:21,167 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-06-27 17:28:21,168 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:28:21 BoogieIcfgContainer [2024-06-27 17:28:21,168 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-27 17:28:21,170 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-27 17:28:21,170 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-27 17:28:21,173 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-27 17:28:21,173 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.06 05:28:19" (1/3) ... [2024-06-27 17:28:21,174 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@bc585d7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 05:28:21, skipping insertion in model container [2024-06-27 17:28:21,174 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 05:28:20" (2/3) ... [2024-06-27 17:28:21,176 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@bc585d7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 05:28:21, skipping insertion in model container [2024-06-27 17:28:21,176 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:28:21" (3/3) ... [2024-06-27 17:28:21,177 INFO L112 eAbstractionObserver]: Analyzing ICFG rfi000_power.oepc_pso.oepc_rmo.oepc.i [2024-06-27 17:28:21,186 WARN L146 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2024-06-27 17:28:21,195 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-27 17:28:21,196 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-06-27 17:28:21,196 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-27 17:28:21,243 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-06-27 17:28:21,277 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 38 places, 32 transitions, 72 flow [2024-06-27 17:28:21,300 INFO L124 PetriNetUnfolderBase]: 1/30 cut-off events. [2024-06-27 17:28:21,301 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-27 17:28:21,306 INFO L83 FinitePrefix]: Finished finitePrefix Result has 37 conditions, 30 events. 1/30 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 48 event pairs, 0 based on Foata normal form. 0/27 useless extension candidates. Maximal degree in co-relation 30. Up to 2 conditions per place. [2024-06-27 17:28:21,307 INFO L82 GeneralOperation]: Start removeDead. Operand has 38 places, 32 transitions, 72 flow [2024-06-27 17:28:21,309 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 36 places, 30 transitions, 66 flow [2024-06-27 17:28:21,323 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-27 17:28:21,331 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;@7fa7ceb4, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-27 17:28:21,331 INFO L358 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-06-27 17:28:21,338 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-27 17:28:21,339 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-06-27 17:28:21,339 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-27 17:28:21,339 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:21,340 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2024-06-27 17:28:21,340 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting P0Err0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:21,344 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:21,345 INFO L85 PathProgramCache]: Analyzing trace with hash 12056823, now seen corresponding path program 1 times [2024-06-27 17:28:21,353 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:21,353 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [174869016] [2024-06-27 17:28:21,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:21,354 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:21,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:28:21,807 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:28:21,807 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:28:21,808 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [174869016] [2024-06-27 17:28:21,808 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [174869016] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:28:21,809 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:28:21,809 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-27 17:28:21,811 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [741620255] [2024-06-27 17:28:21,811 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:28:21,819 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-27 17:28:21,825 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:28:21,852 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-27 17:28:21,852 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-27 17:28:21,854 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 32 [2024-06-27 17:28:21,857 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 30 transitions, 66 flow. Second operand has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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:28:21,857 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:28:21,858 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 32 [2024-06-27 17:28:21,859 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:28:22,098 INFO L124 PetriNetUnfolderBase]: 204/415 cut-off events. [2024-06-27 17:28:22,098 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-06-27 17:28:22,101 INFO L83 FinitePrefix]: Finished finitePrefix Result has 782 conditions, 415 events. 204/415 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 34. Compared 2004 event pairs, 80 based on Foata normal form. 19/427 useless extension candidates. Maximal degree in co-relation 772. Up to 292 conditions per place. [2024-06-27 17:28:22,105 INFO L140 encePairwiseOnDemand]: 28/32 looper letters, 25 selfloop transitions, 2 changer transitions 2/40 dead transitions. [2024-06-27 17:28:22,106 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 40 transitions, 147 flow [2024-06-27 17:28:22,107 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-27 17:28:22,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-27 17:28:22,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 71 transitions. [2024-06-27 17:28:22,119 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7395833333333334 [2024-06-27 17:28:22,121 INFO L175 Difference]: Start difference. First operand has 36 places, 30 transitions, 66 flow. Second operand 3 states and 71 transitions. [2024-06-27 17:28:22,121 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 40 transitions, 147 flow [2024-06-27 17:28:22,123 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 35 places, 40 transitions, 144 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-27 17:28:22,126 INFO L231 Difference]: Finished difference. Result has 35 places, 27 transitions, 62 flow [2024-06-27 17:28:22,128 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=60, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=62, PETRI_PLACES=35, PETRI_TRANSITIONS=27} [2024-06-27 17:28:22,131 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, -1 predicate places. [2024-06-27 17:28:22,132 INFO L495 AbstractCegarLoop]: Abstraction has has 35 places, 27 transitions, 62 flow [2024-06-27 17:28:22,132 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 14.0) internal successors, (42), 3 states have internal predecessors, (42), 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:28:22,132 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:22,132 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:28:22,133 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-27 17:28:22,134 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:22,135 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:22,135 INFO L85 PathProgramCache]: Analyzing trace with hash 180808391, now seen corresponding path program 1 times [2024-06-27 17:28:22,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:22,136 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1119901670] [2024-06-27 17:28:22,136 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:22,136 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:22,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:28:22,434 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:28:22,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:28:22,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1119901670] [2024-06-27 17:28:22,435 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1119901670] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:28:22,435 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:28:22,435 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-27 17:28:22,435 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [327793348] [2024-06-27 17:28:22,435 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:28:22,436 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 17:28:22,436 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:28:22,437 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 17:28:22,437 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 17:28:22,445 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 32 [2024-06-27 17:28:22,445 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 27 transitions, 62 flow. Second operand has 4 states, 4 states have (on average 12.5) internal successors, (50), 4 states have internal predecessors, (50), 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:28:22,445 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:28:22,445 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 32 [2024-06-27 17:28:22,446 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:28:22,559 INFO L124 PetriNetUnfolderBase]: 233/489 cut-off events. [2024-06-27 17:28:22,559 INFO L125 PetriNetUnfolderBase]: For 30/30 co-relation queries the response was YES. [2024-06-27 17:28:22,561 INFO L83 FinitePrefix]: Finished finitePrefix Result has 959 conditions, 489 events. 233/489 cut-off events. For 30/30 co-relation queries the response was YES. Maximal size of possible extension queue 31. Compared 2368 event pairs, 50 based on Foata normal form. 30/490 useless extension candidates. Maximal degree in co-relation 949. Up to 216 conditions per place. [2024-06-27 17:28:22,562 INFO L140 encePairwiseOnDemand]: 27/32 looper letters, 34 selfloop transitions, 4 changer transitions 1/47 dead transitions. [2024-06-27 17:28:22,562 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 47 transitions, 186 flow [2024-06-27 17:28:22,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 17:28:22,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 17:28:22,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 81 transitions. [2024-06-27 17:28:22,577 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6328125 [2024-06-27 17:28:22,578 INFO L175 Difference]: Start difference. First operand has 35 places, 27 transitions, 62 flow. Second operand 4 states and 81 transitions. [2024-06-27 17:28:22,578 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 47 transitions, 186 flow [2024-06-27 17:28:22,579 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 35 places, 47 transitions, 178 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-27 17:28:22,580 INFO L231 Difference]: Finished difference. Result has 37 places, 29 transitions, 84 flow [2024-06-27 17:28:22,580 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=58, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=84, PETRI_PLACES=37, PETRI_TRANSITIONS=29} [2024-06-27 17:28:22,581 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 1 predicate places. [2024-06-27 17:28:22,581 INFO L495 AbstractCegarLoop]: Abstraction has has 37 places, 29 transitions, 84 flow [2024-06-27 17:28:22,581 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 12.5) internal successors, (50), 4 states have internal predecessors, (50), 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:28:22,581 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:22,582 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 17:28:22,582 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-27 17:28:22,582 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:22,583 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:22,583 INFO L85 PathProgramCache]: Analyzing trace with hash -417627943, now seen corresponding path program 1 times [2024-06-27 17:28:22,583 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:22,583 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1158892755] [2024-06-27 17:28:22,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:22,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:22,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:28:22,747 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:28:22,747 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:28:22,747 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1158892755] [2024-06-27 17:28:22,747 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1158892755] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:28:22,747 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:28:22,747 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-27 17:28:22,747 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2084467423] [2024-06-27 17:28:22,748 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:28:22,748 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 17:28:22,748 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:28:22,748 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 17:28:22,760 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-06-27 17:28:22,766 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 32 [2024-06-27 17:28:22,766 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 37 places, 29 transitions, 84 flow. Second operand has 5 states, 5 states have (on average 12.6) internal successors, (63), 5 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-27 17:28:22,766 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:28:22,766 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 32 [2024-06-27 17:28:22,766 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:28:22,872 INFO L124 PetriNetUnfolderBase]: 118/250 cut-off events. [2024-06-27 17:28:22,872 INFO L125 PetriNetUnfolderBase]: For 70/70 co-relation queries the response was YES. [2024-06-27 17:28:22,874 INFO L83 FinitePrefix]: Finished finitePrefix Result has 583 conditions, 250 events. 118/250 cut-off events. For 70/70 co-relation queries the response was YES. Maximal size of possible extension queue 16. Compared 869 event pairs, 34 based on Foata normal form. 18/256 useless extension candidates. Maximal degree in co-relation 571. Up to 101 conditions per place. [2024-06-27 17:28:22,875 INFO L140 encePairwiseOnDemand]: 27/32 looper letters, 28 selfloop transitions, 6 changer transitions 1/43 dead transitions. [2024-06-27 17:28:22,875 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 41 places, 43 transitions, 187 flow [2024-06-27 17:28:22,875 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 17:28:22,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 17:28:22,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2024-06-27 17:28:22,878 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.54375 [2024-06-27 17:28:22,878 INFO L175 Difference]: Start difference. First operand has 37 places, 29 transitions, 84 flow. Second operand 5 states and 87 transitions. [2024-06-27 17:28:22,878 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 41 places, 43 transitions, 187 flow [2024-06-27 17:28:22,879 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 43 transitions, 178 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-06-27 17:28:22,880 INFO L231 Difference]: Finished difference. Result has 41 places, 29 transitions, 100 flow [2024-06-27 17:28:22,880 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=77, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=100, PETRI_PLACES=41, PETRI_TRANSITIONS=29} [2024-06-27 17:28:22,882 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 5 predicate places. [2024-06-27 17:28:22,882 INFO L495 AbstractCegarLoop]: Abstraction has has 41 places, 29 transitions, 100 flow [2024-06-27 17:28:22,882 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.6) internal successors, (63), 5 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-27 17:28:22,882 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:22,882 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] [2024-06-27 17:28:22,882 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-27 17:28:22,883 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:22,884 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:22,884 INFO L85 PathProgramCache]: Analyzing trace with hash -162501821, now seen corresponding path program 1 times [2024-06-27 17:28:22,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:22,884 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [816657404] [2024-06-27 17:28:22,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:22,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:22,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:28:24,639 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:28:24,639 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:28:24,639 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [816657404] [2024-06-27 17:28:24,639 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [816657404] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:28:24,640 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:28:24,640 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2024-06-27 17:28:24,640 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [894585539] [2024-06-27 17:28:24,640 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:28:24,640 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2024-06-27 17:28:24,641 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:28:24,641 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2024-06-27 17:28:24,641 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2024-06-27 17:28:24,654 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 11 out of 32 [2024-06-27 17:28:24,655 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 29 transitions, 100 flow. Second operand has 12 states, 12 states have (on average 12.333333333333334) internal successors, (148), 12 states have internal predecessors, (148), 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:28:24,655 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:28:24,655 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 11 of 32 [2024-06-27 17:28:24,655 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:28:25,101 INFO L124 PetriNetUnfolderBase]: 138/331 cut-off events. [2024-06-27 17:28:25,102 INFO L125 PetriNetUnfolderBase]: For 140/140 co-relation queries the response was YES. [2024-06-27 17:28:25,103 INFO L83 FinitePrefix]: Finished finitePrefix Result has 768 conditions, 331 events. 138/331 cut-off events. For 140/140 co-relation queries the response was YES. Maximal size of possible extension queue 26. Compared 1404 event pairs, 29 based on Foata normal form. 4/326 useless extension candidates. Maximal degree in co-relation 754. Up to 99 conditions per place. [2024-06-27 17:28:25,104 INFO L140 encePairwiseOnDemand]: 23/32 looper letters, 25 selfloop transitions, 6 changer transitions 29/71 dead transitions. [2024-06-27 17:28:25,104 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 52 places, 71 transitions, 320 flow [2024-06-27 17:28:25,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2024-06-27 17:28:25,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2024-06-27 17:28:25,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 193 transitions. [2024-06-27 17:28:25,108 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5026041666666666 [2024-06-27 17:28:25,108 INFO L175 Difference]: Start difference. First operand has 41 places, 29 transitions, 100 flow. Second operand 12 states and 193 transitions. [2024-06-27 17:28:25,108 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 52 places, 71 transitions, 320 flow [2024-06-27 17:28:25,111 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 71 transitions, 280 flow, removed 11 selfloop flow, removed 6 redundant places. [2024-06-27 17:28:25,112 INFO L231 Difference]: Finished difference. Result has 55 places, 32 transitions, 118 flow [2024-06-27 17:28:25,112 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=118, PETRI_PLACES=55, PETRI_TRANSITIONS=32} [2024-06-27 17:28:25,113 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 19 predicate places. [2024-06-27 17:28:25,113 INFO L495 AbstractCegarLoop]: Abstraction has has 55 places, 32 transitions, 118 flow [2024-06-27 17:28:25,114 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 12.333333333333334) internal successors, (148), 12 states have internal predecessors, (148), 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:28:25,114 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:25,114 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] [2024-06-27 17:28:25,114 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-27 17:28:25,114 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:25,115 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:25,115 INFO L85 PathProgramCache]: Analyzing trace with hash -1730716399, now seen corresponding path program 2 times [2024-06-27 17:28:25,115 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:25,115 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1141757485] [2024-06-27 17:28:25,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:25,116 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:25,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 17:28:25,291 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:28:25,291 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 17:28:25,292 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1141757485] [2024-06-27 17:28:25,292 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1141757485] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 17:28:25,292 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 17:28:25,292 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-06-27 17:28:25,293 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1328890368] [2024-06-27 17:28:25,293 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 17:28:25,293 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 17:28:25,293 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 17:28:25,294 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 17:28:25,294 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-06-27 17:28:25,299 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 32 [2024-06-27 17:28:25,299 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 55 places, 32 transitions, 118 flow. Second operand has 5 states, 5 states have (on average 13.4) internal successors, (67), 5 states have internal predecessors, (67), 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:28:25,299 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 17:28:25,300 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 32 [2024-06-27 17:28:25,300 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 17:28:25,409 INFO L124 PetriNetUnfolderBase]: 150/355 cut-off events. [2024-06-27 17:28:25,409 INFO L125 PetriNetUnfolderBase]: For 122/124 co-relation queries the response was YES. [2024-06-27 17:28:25,411 INFO L83 FinitePrefix]: Finished finitePrefix Result has 840 conditions, 355 events. 150/355 cut-off events. For 122/124 co-relation queries the response was YES. Maximal size of possible extension queue 21. Compared 1560 event pairs, 79 based on Foata normal form. 5/345 useless extension candidates. Maximal degree in co-relation 820. Up to 166 conditions per place. [2024-06-27 17:28:25,412 INFO L140 encePairwiseOnDemand]: 27/32 looper letters, 20 selfloop transitions, 2 changer transitions 18/50 dead transitions. [2024-06-27 17:28:25,412 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 50 transitions, 251 flow [2024-06-27 17:28:25,412 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 17:28:25,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 17:28:25,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 88 transitions. [2024-06-27 17:28:25,413 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.55 [2024-06-27 17:28:25,413 INFO L175 Difference]: Start difference. First operand has 55 places, 32 transitions, 118 flow. Second operand 5 states and 88 transitions. [2024-06-27 17:28:25,413 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 50 transitions, 251 flow [2024-06-27 17:28:25,416 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 50 transitions, 224 flow, removed 11 selfloop flow, removed 8 redundant places. [2024-06-27 17:28:25,417 INFO L231 Difference]: Finished difference. Result has 48 places, 29 transitions, 98 flow [2024-06-27 17:28:25,417 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=98, PETRI_PLACES=48, PETRI_TRANSITIONS=29} [2024-06-27 17:28:25,419 INFO L281 CegarLoopForPetriNet]: 36 programPoint places, 12 predicate places. [2024-06-27 17:28:25,419 INFO L495 AbstractCegarLoop]: Abstraction has has 48 places, 29 transitions, 98 flow [2024-06-27 17:28:25,419 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 13.4) internal successors, (67), 5 states have internal predecessors, (67), 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:28:25,419 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 17:28:25,420 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] [2024-06-27 17:28:25,420 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-06-27 17:28:25,420 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P0Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-06-27 17:28:25,421 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 17:28:25,422 INFO L85 PathProgramCache]: Analyzing trace with hash 1492807329, now seen corresponding path program 3 times [2024-06-27 17:28:25,424 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 17:28:25,424 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2110112485] [2024-06-27 17:28:25,424 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 17:28:25,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 17:28:25,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-06-27 17:28:25,453 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-06-27 17:28:25,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-06-27 17:28:25,504 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-06-27 17:28:25,504 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-06-27 17:28:25,505 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2024-06-27 17:28:25,520 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2024-06-27 17:28:25,521 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2024-06-27 17:28:25,521 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-06-27 17:28:25,521 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location P0Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2024-06-27 17:28:25,522 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-06-27 17:28:25,522 INFO L445 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2024-06-27 17:28:25,527 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-27 17:28:25,527 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-27 17:28:25,580 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.06 05:28:25 BasicIcfg [2024-06-27 17:28:25,580 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-27 17:28:25,580 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-06-27 17:28:25,580 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-06-27 17:28:25,581 INFO L274 PluginConnector]: Witness Printer initialized [2024-06-27 17:28:25,581 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 05:28:21" (3/4) ... [2024-06-27 17:28:25,582 INFO L131 WitnessPrinter]: Generating witness for reachability counterexample [2024-06-27 17:28:25,697 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-06-27 17:28:25,697 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-06-27 17:28:25,698 INFO L158 Benchmark]: Toolchain (without parser) took 5869.11ms. Allocated memory was 186.6MB in the beginning and 358.6MB in the end (delta: 172.0MB). Free memory was 113.1MB in the beginning and 317.0MB in the end (delta: -203.9MB). Peak memory consumption was 170.1MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,698 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 130.0MB. Free memory is still 94.4MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-27 17:28:25,698 INFO L158 Benchmark]: CACSL2BoogieTranslator took 491.86ms. Allocated memory is still 186.6MB. Free memory was 112.8MB in the beginning and 144.1MB in the end (delta: -31.3MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,698 INFO L158 Benchmark]: Boogie Procedure Inliner took 67.49ms. Allocated memory is still 186.6MB. Free memory was 144.1MB in the beginning and 141.3MB in the end (delta: 2.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,699 INFO L158 Benchmark]: Boogie Preprocessor took 76.19ms. Allocated memory is still 186.6MB. Free memory was 141.3MB in the beginning and 137.8MB in the end (delta: 3.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,699 INFO L158 Benchmark]: RCFGBuilder took 699.86ms. Allocated memory is still 186.6MB. Free memory was 137.8MB in the beginning and 153.1MB in the end (delta: -15.3MB). Peak memory consumption was 62.9MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,699 INFO L158 Benchmark]: TraceAbstraction took 4409.94ms. Allocated memory was 186.6MB in the beginning and 358.6MB in the end (delta: 172.0MB). Free memory was 152.1MB in the beginning and 119.1MB in the end (delta: 33.0MB). Peak memory consumption was 206.0MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,700 INFO L158 Benchmark]: Witness Printer took 116.78ms. Allocated memory is still 358.6MB. Free memory was 119.1MB in the beginning and 317.0MB in the end (delta: -197.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-27 17:28:25,701 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16ms. Allocated memory is still 130.0MB. Free memory is still 94.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 491.86ms. Allocated memory is still 186.6MB. Free memory was 112.8MB in the beginning and 144.1MB in the end (delta: -31.3MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 67.49ms. Allocated memory is still 186.6MB. Free memory was 144.1MB in the beginning and 141.3MB in the end (delta: 2.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 76.19ms. Allocated memory is still 186.6MB. Free memory was 141.3MB in the beginning and 137.8MB in the end (delta: 3.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 699.86ms. Allocated memory is still 186.6MB. Free memory was 137.8MB in the beginning and 153.1MB in the end (delta: -15.3MB). Peak memory consumption was 62.9MB. Max. memory is 16.1GB. * TraceAbstraction took 4409.94ms. Allocated memory was 186.6MB in the beginning and 358.6MB in the end (delta: 172.0MB). Free memory was 152.1MB in the beginning and 119.1MB in the end (delta: 33.0MB). Peak memory consumption was 206.0MB. Max. memory is 16.1GB. * Witness Printer took 116.78ms. Allocated memory is still 358.6MB. Free memory was 119.1MB in the beginning and 317.0MB in the end (delta: -197.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L708] 0 int __unbuffered_cnt = 0; [L710] 0 int __unbuffered_p1_EAX = 0; [L712] 0 int __unbuffered_p1_EBX = 0; [L713] 0 _Bool main$tmp_guard0; [L714] 0 _Bool main$tmp_guard1; [L716] 0 int x = 0; [L718] 0 int y = 0; [L719] 0 _Bool y$flush_delayed; [L720] 0 int y$mem_tmp; [L721] 0 _Bool y$r_buff0_thd0; [L722] 0 _Bool y$r_buff0_thd1; [L723] 0 _Bool y$r_buff0_thd2; [L724] 0 _Bool y$r_buff1_thd0; [L725] 0 _Bool y$r_buff1_thd1; [L726] 0 _Bool y$r_buff1_thd2; [L727] 0 _Bool y$read_delayed; [L728] 0 int *y$read_delayed_var; [L729] 0 int y$w_buff0; [L730] 0 _Bool y$w_buff0_used; [L731] 0 int y$w_buff1; [L732] 0 _Bool y$w_buff1_used; [L733] 0 _Bool weak$$choice0; [L734] 0 _Bool weak$$choice2; [L826] 0 pthread_t t1585; [L827] FCALL, FORK 0 pthread_create(&t1585, ((void *)0), P0, ((void *)0)) VAL [__unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1585=-1, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0] [L738] 1 y$w_buff1 = y$w_buff0 [L739] 1 y$w_buff0 = 2 [L740] 1 y$w_buff1_used = y$w_buff0_used [L741] 1 y$w_buff0_used = (_Bool)1 [L742] CALL 1 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L18] COND FALSE 1 !(!expression) [L742] RET 1 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L743] 1 y$r_buff1_thd0 = y$r_buff0_thd0 [L744] 1 y$r_buff1_thd1 = y$r_buff0_thd1 [L745] 1 y$r_buff1_thd2 = y$r_buff0_thd2 [L746] 1 y$r_buff0_thd1 = (_Bool)1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L828] 0 pthread_t t1586; [L829] FCALL, FORK 0 pthread_create(&t1586, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1585=-1, t1586=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L749] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L766] 2 x = 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=2, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L769] 2 y = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=2, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L772] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L773] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L774] 2 y$flush_delayed = weak$$choice2 [L775] 2 y$mem_tmp = y [L776] 2 y = !y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff1) [L777] 2 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff0)) [L778] 2 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff1 : y$w_buff1)) [L779] 2 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used)) [L780] 2 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L781] 2 y$r_buff0_thd2 = weak$$choice2 ? y$r_buff0_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff0_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2)) [L782] 2 y$r_buff1_thd2 = weak$$choice2 ? y$r_buff1_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff1_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L783] 2 __unbuffered_p1_EAX = y [L784] 2 y = y$flush_delayed ? y$mem_tmp : y [L785] 2 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L788] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L789] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L790] 2 y$flush_delayed = weak$$choice2 [L791] 2 y$mem_tmp = y [L792] 2 y = !y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff1) [L793] 2 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff0)) [L794] 2 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff1 : y$w_buff1)) [L795] 2 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used)) [L796] 2 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L797] 2 y$r_buff0_thd2 = weak$$choice2 ? y$r_buff0_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff0_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2)) [L798] 2 y$r_buff1_thd2 = weak$$choice2 ? y$r_buff1_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff1_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L799] 2 __unbuffered_p1_EBX = y [L800] 2 y = y$flush_delayed ? y$mem_tmp : y [L801] 2 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L752] 1 y = y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd1 ? y$w_buff1 : y) [L753] 1 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$w_buff0_used [L754] 1 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$w_buff1_used [L755] 1 y$r_buff0_thd1 = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$r_buff0_thd1 [L756] 1 y$r_buff1_thd1 = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L759] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L804] 2 y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L805] 2 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used [L806] 2 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$w_buff1_used [L807] 2 y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2 [L808] 2 y$r_buff1_thd2 = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$r_buff1_thd2 VAL [\old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L811] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L831] 0 main$tmp_guard0 = __unbuffered_cnt == 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1585=-1, t1586=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L833] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L833] RET 0 assume_abort_if_not(main$tmp_guard0) [L835] 0 y = y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L836] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L837] 0 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$w_buff1_used [L838] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L839] 0 y$r_buff1_thd0 = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$r_buff1_thd0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1585=-1, t1586=0, weak$$choice0=1, weak$$choice2=1, x=2, y$flush_delayed=0, y$mem_tmp=1, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L842] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L843] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L844] 0 y$flush_delayed = weak$$choice2 [L845] 0 y$mem_tmp = y [L846] 0 y = !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L847] 0 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff0)) [L848] 0 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff1 : y$w_buff1)) [L849] 0 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used)) [L850] 0 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L851] 0 y$r_buff0_thd0 = weak$$choice2 ? y$r_buff0_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff0_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0)) [L852] 0 y$r_buff1_thd0 = weak$$choice2 ? y$r_buff1_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff1_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L853] 0 main$tmp_guard1 = !(x == 2 && y == 2 && __unbuffered_p1_EAX == 1 && __unbuffered_p1_EBX == 1) [L854] 0 y = y$flush_delayed ? y$mem_tmp : y [L855] 0 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1585=-1, t1586=0, weak$$choice0=1, weak$$choice2=0, x=2, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L857] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=2, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=1, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=2, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=1, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 829]: 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: 827]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 51 locations, 5 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 4.2s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 177 SdHoareTripleChecker+Valid, 0.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 165 mSDsluCounter, 95 SdHoareTripleChecker+Invalid, 0.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 85 mSDsCounter, 37 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 584 IncrementalHoareTripleChecker+Invalid, 621 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 37 mSolverCounterUnsat, 10 mSDtfsCounter, 584 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 36 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=118occurred in iteration=4, InterpolantAutomatonStates: 29, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 2.5s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 76 ConstructedInterpolants, 0 QuantifiedInterpolants, 544 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:28:25,723 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