./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8be7027f Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.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 a843579fcb7bb5d5833d499f834986a668bfbdfa4c59a86e5d344f532fcebd9f --- Real Ultimate output --- This is Ultimate 0.2.5-wip.dk.perfect-tracechecks-8be7027-m [2024-11-12 08:10:06,789 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-12 08:10:06,851 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-12 08:10:06,856 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-12 08:10:06,856 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-12 08:10:06,874 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-12 08:10:06,878 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-12 08:10:06,879 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-12 08:10:06,879 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-12 08:10:06,879 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-12 08:10:06,880 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-12 08:10:06,880 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-12 08:10:06,881 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-12 08:10:06,885 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-12 08:10:06,885 INFO L153 SettingsManager]: * Use SBE=true [2024-11-12 08:10:06,886 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-12 08:10:06,886 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-12 08:10:06,886 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-12 08:10:06,886 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-12 08:10:06,886 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-12 08:10:06,887 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-12 08:10:06,887 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-12 08:10:06,887 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-12 08:10:06,888 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-12 08:10:06,888 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-12 08:10:06,888 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-12 08:10:06,888 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-12 08:10:06,892 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-12 08:10:06,892 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-12 08:10:06,892 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-12 08:10:06,893 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-12 08:10:06,893 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-12 08:10:06,893 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-12 08:10:06,893 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-12 08:10:06,893 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-12 08:10:06,893 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-12 08:10:06,894 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-12 08:10:06,894 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-12 08:10:06,894 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-12 08:10:06,894 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-12 08:10:06,894 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-12 08:10:06,895 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-12 08:10:06,895 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 -> a843579fcb7bb5d5833d499f834986a668bfbdfa4c59a86e5d344f532fcebd9f [2024-11-12 08:10:07,244 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-12 08:10:07,274 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-12 08:10:07,277 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-12 08:10:07,279 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-12 08:10:07,279 INFO L274 PluginConnector]: CDTParser initialized [2024-11-12 08:10:07,281 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2024-11-12 08:10:08,700 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-12 08:10:08,905 INFO L384 CDTParser]: Found 1 translation units. [2024-11-12 08:10:08,905 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2024-11-12 08:10:08,922 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c7da65a50/36cc44376be140a282db94d397a2b0d6/FLAG50226fd40 [2024-11-12 08:10:08,935 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c7da65a50/36cc44376be140a282db94d397a2b0d6 [2024-11-12 08:10:08,937 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-12 08:10:08,938 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-12 08:10:08,943 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-12 08:10:08,943 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-12 08:10:08,948 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-12 08:10:08,949 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.11 08:10:08" (1/1) ... [2024-11-12 08:10:08,951 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@164d07df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:08, skipping insertion in model container [2024-11-12 08:10:08,951 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.11 08:10:08" (1/1) ... [2024-11-12 08:10:08,992 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-12 08:10:09,218 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i[976,989] [2024-11-12 08:10:09,404 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-12 08:10:09,413 INFO L200 MainTranslator]: Completed pre-run [2024-11-12 08:10:09,423 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i[976,989] [2024-11-12 08:10:09,473 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-12 08:10:09,507 INFO L204 MainTranslator]: Completed translation [2024-11-12 08:10:09,508 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09 WrapperNode [2024-11-12 08:10:09,508 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-12 08:10:09,509 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-12 08:10:09,509 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-12 08:10:09,509 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-12 08:10:09,515 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,529 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,550 INFO L138 Inliner]: procedures = 175, calls = 42, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 133 [2024-11-12 08:10:09,551 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-12 08:10:09,551 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-12 08:10:09,551 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-12 08:10:09,551 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-12 08:10:09,561 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,562 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,569 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,586 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-11-12 08:10:09,587 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,587 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,593 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,595 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,596 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,597 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,600 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-12 08:10:09,601 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-12 08:10:09,601 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-12 08:10:09,601 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-12 08:10:09,601 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (1/1) ... [2024-11-12 08:10:09,606 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-12 08:10:09,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-12 08:10:09,631 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-12 08:10:09,633 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-12 08:10:09,678 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-11-12 08:10:09,678 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-12 08:10:09,679 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-11-12 08:10:09,679 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-11-12 08:10:09,679 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-11-12 08:10:09,679 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-11-12 08:10:09,679 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-11-12 08:10:09,679 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-11-12 08:10:09,680 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-12 08:10:09,680 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-11-12 08:10:09,681 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-12 08:10:09,681 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-12 08:10:09,682 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-11-12 08:10:09,803 INFO L238 CfgBuilder]: Building ICFG [2024-11-12 08:10:09,805 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-12 08:10:10,033 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-11-12 08:10:10,034 INFO L287 CfgBuilder]: Performing block encoding [2024-11-12 08:10:10,205 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-12 08:10:10,205 INFO L316 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-12 08:10:10,206 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.11 08:10:10 BoogieIcfgContainer [2024-11-12 08:10:10,206 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-12 08:10:10,207 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-12 08:10:10,208 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-12 08:10:10,210 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-12 08:10:10,210 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 12.11 08:10:08" (1/3) ... [2024-11-12 08:10:10,211 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@560c02e3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 12.11 08:10:10, skipping insertion in model container [2024-11-12 08:10:10,211 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.11 08:10:09" (2/3) ... [2024-11-12 08:10:10,211 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@560c02e3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 12.11 08:10:10, skipping insertion in model container [2024-11-12 08:10:10,212 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.11 08:10:10" (3/3) ... [2024-11-12 08:10:10,212 INFO L112 eAbstractionObserver]: Analyzing ICFG safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2024-11-12 08:10:10,225 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-12 08:10:10,225 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-12 08:10:10,225 INFO L489 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-11-12 08:10:10,270 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-11-12 08:10:10,300 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 48 places, 39 transitions, 90 flow [2024-11-12 08:10:10,327 INFO L124 PetriNetUnfolderBase]: 1/36 cut-off events. [2024-11-12 08:10:10,327 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-12 08:10:10,332 INFO L83 FinitePrefix]: Finished finitePrefix Result has 46 conditions, 36 events. 1/36 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 69 event pairs, 0 based on Foata normal form. 0/33 useless extension candidates. Maximal degree in co-relation 38. Up to 2 conditions per place. [2024-11-12 08:10:10,333 INFO L82 GeneralOperation]: Start removeDead. Operand has 48 places, 39 transitions, 90 flow [2024-11-12 08:10:10,335 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 45 places, 36 transitions, 81 flow [2024-11-12 08:10:10,343 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-12 08:10:10,349 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@448e660c, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-12 08:10:10,350 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2024-11-12 08:10:10,355 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-11-12 08:10:10,356 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2024-11-12 08:10:10,356 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-11-12 08:10:10,356 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:10,356 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2024-11-12 08:10:10,358 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:10,364 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:10,364 INFO L85 PathProgramCache]: Analyzing trace with hash 1906582196, now seen corresponding path program 1 times [2024-11-12 08:10:10,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:10,371 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [686799126] [2024-11-12 08:10:10,371 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:10,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:10,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-12 08:10:10,864 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-12 08:10:10,865 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-12 08:10:10,865 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [686799126] [2024-11-12 08:10:10,865 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [686799126] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-12 08:10:10,865 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-12 08:10:10,866 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-11-12 08:10:10,867 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1303879699] [2024-11-12 08:10:10,867 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-12 08:10:10,874 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-12 08:10:10,878 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-12 08:10:10,899 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-12 08:10:10,900 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-12 08:10:10,901 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 39 [2024-11-12 08:10:10,903 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 45 places, 36 transitions, 81 flow. Second operand has 3 states, 3 states have (on average 19.666666666666668) internal successors, (59), 3 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:10,903 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-12 08:10:10,903 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 39 [2024-11-12 08:10:10,904 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-12 08:10:11,184 INFO L124 PetriNetUnfolderBase]: 528/983 cut-off events. [2024-11-12 08:10:11,184 INFO L125 PetriNetUnfolderBase]: For 9/9 co-relation queries the response was YES. [2024-11-12 08:10:11,188 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1831 conditions, 983 events. 528/983 cut-off events. For 9/9 co-relation queries the response was YES. Maximal size of possible extension queue 77. Compared 5745 event pairs, 168 based on Foata normal form. 36/998 useless extension candidates. Maximal degree in co-relation 1820. Up to 652 conditions per place. [2024-11-12 08:10:11,195 INFO L140 encePairwiseOnDemand]: 35/39 looper letters, 27 selfloop transitions, 2 changer transitions 2/46 dead transitions. [2024-11-12 08:10:11,195 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 46 places, 46 transitions, 166 flow [2024-11-12 08:10:11,196 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-12 08:10:11,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-11-12 08:10:11,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 88 transitions. [2024-11-12 08:10:11,204 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7521367521367521 [2024-11-12 08:10:11,206 INFO L175 Difference]: Start difference. First operand has 45 places, 36 transitions, 81 flow. Second operand 3 states and 88 transitions. [2024-11-12 08:10:11,206 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 46 places, 46 transitions, 166 flow [2024-11-12 08:10:11,208 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 46 transitions, 162 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-11-12 08:10:11,211 INFO L231 Difference]: Finished difference. Result has 43 places, 33 transitions, 76 flow [2024-11-12 08:10:11,212 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=74, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=76, PETRI_PLACES=43, PETRI_TRANSITIONS=33} [2024-11-12 08:10:11,215 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, -2 predicate places. [2024-11-12 08:10:11,215 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 33 transitions, 76 flow [2024-11-12 08:10:11,215 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 19.666666666666668) internal successors, (59), 3 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:11,215 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:11,215 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-12 08:10:11,216 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-12 08:10:11,216 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:11,216 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:11,217 INFO L85 PathProgramCache]: Analyzing trace with hash -103316819, now seen corresponding path program 1 times [2024-11-12 08:10:11,217 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:11,217 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118059953] [2024-11-12 08:10:11,217 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:11,217 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:11,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-12 08:10:11,430 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-12 08:10:11,430 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-12 08:10:11,430 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1118059953] [2024-11-12 08:10:11,430 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1118059953] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-12 08:10:11,431 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-12 08:10:11,431 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-12 08:10:11,431 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [237522790] [2024-11-12 08:10:11,431 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-12 08:10:11,432 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-11-12 08:10:11,432 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-12 08:10:11,432 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-12 08:10:11,432 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-12 08:10:11,442 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2024-11-12 08:10:11,442 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 33 transitions, 76 flow. Second operand has 4 states, 4 states have (on average 17.0) internal successors, (68), 4 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:11,442 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-12 08:10:11,442 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2024-11-12 08:10:11,442 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-12 08:10:11,723 INFO L124 PetriNetUnfolderBase]: 1213/2071 cut-off events. [2024-11-12 08:10:11,727 INFO L125 PetriNetUnfolderBase]: For 116/116 co-relation queries the response was YES. [2024-11-12 08:10:11,730 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4083 conditions, 2071 events. 1213/2071 cut-off events. For 116/116 co-relation queries the response was YES. Maximal size of possible extension queue 150. Compared 12674 event pairs, 147 based on Foata normal form. 80/2046 useless extension candidates. Maximal degree in co-relation 4073. Up to 1081 conditions per place. [2024-11-12 08:10:11,743 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 39 selfloop transitions, 5 changer transitions 1/56 dead transitions. [2024-11-12 08:10:11,747 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 56 transitions, 220 flow [2024-11-12 08:10:11,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-12 08:10:11,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-11-12 08:10:11,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 103 transitions. [2024-11-12 08:10:11,752 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6602564102564102 [2024-11-12 08:10:11,752 INFO L175 Difference]: Start difference. First operand has 43 places, 33 transitions, 76 flow. Second operand 4 states and 103 transitions. [2024-11-12 08:10:11,752 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 56 transitions, 220 flow [2024-11-12 08:10:11,754 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 56 transitions, 212 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-11-12 08:10:11,755 INFO L231 Difference]: Finished difference. Result has 45 places, 36 transitions, 106 flow [2024-11-12 08:10:11,757 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=40, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=33, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=106, PETRI_PLACES=45, PETRI_TRANSITIONS=36} [2024-11-12 08:10:11,758 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 0 predicate places. [2024-11-12 08:10:11,758 INFO L471 AbstractCegarLoop]: Abstraction has has 45 places, 36 transitions, 106 flow [2024-11-12 08:10:11,758 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 17.0) internal successors, (68), 4 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:11,758 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:11,758 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-12 08:10:11,758 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-12 08:10:11,759 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:11,759 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:11,760 INFO L85 PathProgramCache]: Analyzing trace with hash 563689561, now seen corresponding path program 1 times [2024-11-12 08:10:11,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:11,760 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1950037092] [2024-11-12 08:10:11,760 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:11,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:11,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-12 08:10:12,028 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-12 08:10:12,029 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-12 08:10:12,030 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1950037092] [2024-11-12 08:10:12,030 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1950037092] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-12 08:10:12,030 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-12 08:10:12,031 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-12 08:10:12,031 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1868413807] [2024-11-12 08:10:12,031 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-12 08:10:12,032 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-12 08:10:12,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-12 08:10:12,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-12 08:10:12,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-11-12 08:10:12,039 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2024-11-12 08:10:12,040 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 45 places, 36 transitions, 106 flow. Second operand has 5 states, 5 states have (on average 16.8) internal successors, (84), 5 states have internal predecessors, (84), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:12,041 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-12 08:10:12,041 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2024-11-12 08:10:12,041 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-12 08:10:12,255 INFO L124 PetriNetUnfolderBase]: 809/1399 cut-off events. [2024-11-12 08:10:12,255 INFO L125 PetriNetUnfolderBase]: For 364/364 co-relation queries the response was YES. [2024-11-12 08:10:12,257 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3205 conditions, 1399 events. 809/1399 cut-off events. For 364/364 co-relation queries the response was YES. Maximal size of possible extension queue 80. Compared 7568 event pairs, 73 based on Foata normal form. 68/1401 useless extension candidates. Maximal degree in co-relation 3193. Up to 521 conditions per place. [2024-11-12 08:10:12,262 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 49 selfloop transitions, 8 changer transitions 1/69 dead transitions. [2024-11-12 08:10:12,263 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 69 transitions, 309 flow [2024-11-12 08:10:12,263 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-12 08:10:12,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-11-12 08:10:12,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 130 transitions. [2024-11-12 08:10:12,264 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6666666666666666 [2024-11-12 08:10:12,264 INFO L175 Difference]: Start difference. First operand has 45 places, 36 transitions, 106 flow. Second operand 5 states and 130 transitions. [2024-11-12 08:10:12,265 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 69 transitions, 309 flow [2024-11-12 08:10:12,266 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 69 transitions, 299 flow, removed 1 selfloop flow, removed 2 redundant places. [2024-11-12 08:10:12,267 INFO L231 Difference]: Finished difference. Result has 49 places, 39 transitions, 146 flow [2024-11-12 08:10:12,267 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=98, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=36, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=146, PETRI_PLACES=49, PETRI_TRANSITIONS=39} [2024-11-12 08:10:12,268 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 4 predicate places. [2024-11-12 08:10:12,268 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 39 transitions, 146 flow [2024-11-12 08:10:12,268 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 16.8) internal successors, (84), 5 states have internal predecessors, (84), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:12,268 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:12,268 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-12 08:10:12,268 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-11-12 08:10:12,268 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:12,269 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:12,269 INFO L85 PathProgramCache]: Analyzing trace with hash 1439963883, now seen corresponding path program 1 times [2024-11-12 08:10:12,269 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:12,269 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [18437410] [2024-11-12 08:10:12,269 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:12,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:12,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-12 08:10:12,478 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-12 08:10:12,479 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-12 08:10:12,479 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [18437410] [2024-11-12 08:10:12,479 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [18437410] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-12 08:10:12,479 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-12 08:10:12,479 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-12 08:10:12,480 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1405480873] [2024-11-12 08:10:12,480 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-12 08:10:12,480 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-12 08:10:12,480 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-12 08:10:12,481 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-12 08:10:12,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2024-11-12 08:10:12,485 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2024-11-12 08:10:12,485 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 49 places, 39 transitions, 146 flow. Second operand has 6 states, 6 states have (on average 16.833333333333332) internal successors, (101), 6 states have internal predecessors, (101), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:12,485 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-12 08:10:12,485 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2024-11-12 08:10:12,485 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-12 08:10:12,665 INFO L124 PetriNetUnfolderBase]: 477/811 cut-off events. [2024-11-12 08:10:12,665 INFO L125 PetriNetUnfolderBase]: For 677/677 co-relation queries the response was YES. [2024-11-12 08:10:12,666 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2123 conditions, 811 events. 477/811 cut-off events. For 677/677 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 3693 event pairs, 59 based on Foata normal form. 36/812 useless extension candidates. Maximal degree in co-relation 2109. Up to 268 conditions per place. [2024-11-12 08:10:12,669 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 43 selfloop transitions, 11 changer transitions 1/66 dead transitions. [2024-11-12 08:10:12,669 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 54 places, 66 transitions, 320 flow [2024-11-12 08:10:12,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-12 08:10:12,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-11-12 08:10:12,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 141 transitions. [2024-11-12 08:10:12,670 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6025641025641025 [2024-11-12 08:10:12,670 INFO L175 Difference]: Start difference. First operand has 49 places, 39 transitions, 146 flow. Second operand 6 states and 141 transitions. [2024-11-12 08:10:12,671 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 54 places, 66 transitions, 320 flow [2024-11-12 08:10:12,673 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 50 places, 66 transitions, 295 flow, removed 4 selfloop flow, removed 4 redundant places. [2024-11-12 08:10:12,674 INFO L231 Difference]: Finished difference. Result has 52 places, 39 transitions, 160 flow [2024-11-12 08:10:12,674 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=124, PETRI_DIFFERENCE_MINUEND_PLACES=45, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=160, PETRI_PLACES=52, PETRI_TRANSITIONS=39} [2024-11-12 08:10:12,675 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 7 predicate places. [2024-11-12 08:10:12,675 INFO L471 AbstractCegarLoop]: Abstraction has has 52 places, 39 transitions, 160 flow [2024-11-12 08:10:12,675 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 16.833333333333332) internal successors, (101), 6 states have internal predecessors, (101), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:12,675 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:12,675 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-12 08:10:12,675 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-11-12 08:10:12,676 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:12,676 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:12,676 INFO L85 PathProgramCache]: Analyzing trace with hash 293523438, now seen corresponding path program 1 times [2024-11-12 08:10:12,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:12,676 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [683445625] [2024-11-12 08:10:12,676 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:12,677 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:12,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-12 08:10:14,630 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-12 08:10:14,631 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-12 08:10:14,631 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [683445625] [2024-11-12 08:10:14,631 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [683445625] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-12 08:10:14,631 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-12 08:10:14,631 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2024-11-12 08:10:14,631 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [216861397] [2024-11-12 08:10:14,631 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-12 08:10:14,632 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2024-11-12 08:10:14,632 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-12 08:10:14,632 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2024-11-12 08:10:14,633 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2024-11-12 08:10:14,661 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 39 [2024-11-12 08:10:14,661 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 39 transitions, 160 flow. Second operand has 10 states, 10 states have (on average 15.0) internal successors, (150), 10 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:14,661 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-11-12 08:10:14,661 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 39 [2024-11-12 08:10:14,661 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-11-12 08:10:15,278 INFO L124 PetriNetUnfolderBase]: 1296/2316 cut-off events. [2024-11-12 08:10:15,279 INFO L125 PetriNetUnfolderBase]: For 1134/1142 co-relation queries the response was YES. [2024-11-12 08:10:15,282 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5562 conditions, 2316 events. 1296/2316 cut-off events. For 1134/1142 co-relation queries the response was YES. Maximal size of possible extension queue 139. Compared 13724 event pairs, 316 based on Foata normal form. 16/2268 useless extension candidates. Maximal degree in co-relation 5547. Up to 712 conditions per place. [2024-11-12 08:10:15,287 INFO L140 encePairwiseOnDemand]: 29/39 looper letters, 41 selfloop transitions, 8 changer transitions 44/109 dead transitions. [2024-11-12 08:10:15,288 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 109 transitions, 510 flow [2024-11-12 08:10:15,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-12 08:10:15,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2024-11-12 08:10:15,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 238 transitions. [2024-11-12 08:10:15,290 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5547785547785548 [2024-11-12 08:10:15,290 INFO L175 Difference]: Start difference. First operand has 52 places, 39 transitions, 160 flow. Second operand 11 states and 238 transitions. [2024-11-12 08:10:15,290 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 109 transitions, 510 flow [2024-11-12 08:10:15,302 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 109 transitions, 438 flow, removed 18 selfloop flow, removed 8 redundant places. [2024-11-12 08:10:15,303 INFO L231 Difference]: Finished difference. Result has 62 places, 45 transitions, 165 flow [2024-11-12 08:10:15,304 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=104, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=34, PETRI_DIFFERENCE_SUBTRAHEND_STATES=11, PETRI_FLOW=165, PETRI_PLACES=62, PETRI_TRANSITIONS=45} [2024-11-12 08:10:15,304 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 17 predicate places. [2024-11-12 08:10:15,305 INFO L471 AbstractCegarLoop]: Abstraction has has 62 places, 45 transitions, 165 flow [2024-11-12 08:10:15,305 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 15.0) internal successors, (150), 10 states have internal predecessors, (150), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-12 08:10:15,305 INFO L198 CegarLoopForPetriNet]: Found error trace [2024-11-12 08:10:15,305 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-12 08:10:15,306 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-11-12 08:10:15,306 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-11-12 08:10:15,306 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-12 08:10:15,306 INFO L85 PathProgramCache]: Analyzing trace with hash 1066095204, now seen corresponding path program 2 times [2024-11-12 08:10:15,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-12 08:10:15,307 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1321982044] [2024-11-12 08:10:15,307 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-12 08:10:15,307 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-12 08:10:15,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-12 08:10:15,366 INFO L357 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-12 08:10:15,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-12 08:10:15,449 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-12 08:10:15,450 INFO L339 BasicCegarLoop]: Counterexample is feasible [2024-11-12 08:10:15,451 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2024-11-12 08:10:15,452 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (4 of 6 remaining) [2024-11-12 08:10:15,452 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2024-11-12 08:10:15,452 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2024-11-12 08:10:15,452 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2024-11-12 08:10:15,453 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2024-11-12 08:10:15,453 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-11-12 08:10:15,453 INFO L421 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1] [2024-11-12 08:10:15,511 INFO L239 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-11-12 08:10:15,512 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2024-11-12 08:10:15,517 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 12.11 08:10:15 BasicIcfg [2024-11-12 08:10:15,517 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-11-12 08:10:15,518 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-12 08:10:15,518 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-12 08:10:15,518 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-12 08:10:15,518 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.11 08:10:10" (3/4) ... [2024-11-12 08:10:15,519 INFO L136 WitnessPrinter]: Generating witness for reachability counterexample [2024-11-12 08:10:15,600 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-11-12 08:10:15,600 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-12 08:10:15,600 INFO L158 Benchmark]: Toolchain (without parser) took 6661.99ms. Allocated memory was 144.7MB in the beginning and 302.0MB in the end (delta: 157.3MB). Free memory was 72.2MB in the beginning and 142.3MB in the end (delta: -70.1MB). Peak memory consumption was 87.4MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,601 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 144.7MB. Free memory is still 96.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-12 08:10:15,601 INFO L158 Benchmark]: CACSL2BoogieTranslator took 565.26ms. Allocated memory was 144.7MB in the beginning and 199.2MB in the end (delta: 54.5MB). Free memory was 72.0MB in the beginning and 155.5MB in the end (delta: -83.4MB). Peak memory consumption was 15.5MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,601 INFO L158 Benchmark]: Boogie Procedure Inliner took 42.12ms. Allocated memory is still 199.2MB. Free memory was 155.5MB in the beginning and 152.3MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,601 INFO L158 Benchmark]: Boogie Preprocessor took 48.76ms. Allocated memory is still 199.2MB. Free memory was 152.3MB in the beginning and 149.2MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,601 INFO L158 Benchmark]: RCFGBuilder took 605.62ms. Allocated memory is still 199.2MB. Free memory was 149.2MB in the beginning and 96.7MB in the end (delta: 52.4MB). Peak memory consumption was 52.4MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,602 INFO L158 Benchmark]: TraceAbstraction took 5309.80ms. Allocated memory was 199.2MB in the beginning and 302.0MB in the end (delta: 102.8MB). Free memory was 95.7MB in the beginning and 153.8MB in the end (delta: -58.1MB). Peak memory consumption was 44.6MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,602 INFO L158 Benchmark]: Witness Printer took 82.19ms. Allocated memory is still 302.0MB. Free memory was 153.8MB in the beginning and 142.3MB in the end (delta: 11.5MB). Peak memory consumption was 10.5MB. Max. memory is 16.1GB. [2024-11-12 08:10:15,603 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.20ms. Allocated memory is still 144.7MB. Free memory is still 96.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 565.26ms. Allocated memory was 144.7MB in the beginning and 199.2MB in the end (delta: 54.5MB). Free memory was 72.0MB in the beginning and 155.5MB in the end (delta: -83.4MB). Peak memory consumption was 15.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 42.12ms. Allocated memory is still 199.2MB. Free memory was 155.5MB in the beginning and 152.3MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 48.76ms. Allocated memory is still 199.2MB. Free memory was 152.3MB in the beginning and 149.2MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 605.62ms. Allocated memory is still 199.2MB. Free memory was 149.2MB in the beginning and 96.7MB in the end (delta: 52.4MB). Peak memory consumption was 52.4MB. Max. memory is 16.1GB. * TraceAbstraction took 5309.80ms. Allocated memory was 199.2MB in the beginning and 302.0MB in the end (delta: 102.8MB). Free memory was 95.7MB in the beginning and 153.8MB in the end (delta: -58.1MB). Peak memory consumption was 44.6MB. Max. memory is 16.1GB. * Witness Printer took 82.19ms. Allocated memory is still 302.0MB. Free memory was 153.8MB in the beginning and 142.3MB in the end (delta: 11.5MB). Peak memory consumption was 10.5MB. 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: [L709] 0 int __unbuffered_cnt = 0; [L711] 0 int __unbuffered_p0_EAX = 0; [L713] 0 int __unbuffered_p2_EAX = 0; [L714] 0 _Bool main$tmp_guard0; [L715] 0 _Bool main$tmp_guard1; [L717] 0 int x = 0; [L718] 0 _Bool x$flush_delayed; [L719] 0 int x$mem_tmp; [L720] 0 _Bool x$r_buff0_thd0; [L721] 0 _Bool x$r_buff0_thd1; [L722] 0 _Bool x$r_buff0_thd2; [L723] 0 _Bool x$r_buff0_thd3; [L724] 0 _Bool x$r_buff1_thd0; [L725] 0 _Bool x$r_buff1_thd1; [L726] 0 _Bool x$r_buff1_thd2; [L727] 0 _Bool x$r_buff1_thd3; [L728] 0 _Bool x$read_delayed; [L729] 0 int *x$read_delayed_var; [L730] 0 int x$w_buff0; [L731] 0 _Bool x$w_buff0_used; [L732] 0 int x$w_buff1; [L733] 0 _Bool x$w_buff1_used; [L735] 0 int y = 0; [L736] 0 _Bool weak$$choice0; [L737] 0 _Bool weak$$choice2; [L818] 0 pthread_t t1804; [L819] FCALL, FORK 0 pthread_create(&t1804, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, weak$$choice0=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=0, y=0] [L820] 0 pthread_t t1805; [L821] FCALL, FORK 0 pthread_create(&t1805, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, t1805=-1, weak$$choice0=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=0, y=0] [L822] 0 pthread_t t1806; [L823] FCALL, FORK 0 pthread_create(&t1806, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=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=0, y=0] [L761] 2 x$w_buff1 = x$w_buff0 [L762] 2 x$w_buff0 = 2 [L763] 2 x$w_buff1_used = x$w_buff0_used [L764] 2 x$w_buff0_used = (_Bool)1 [L765] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L765] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L766] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L767] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L768] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L769] 2 x$r_buff1_thd3 = x$r_buff0_thd3 [L770] 2 x$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L773] 2 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=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L790] 3 __unbuffered_p2_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L793] 3 y = 2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=2] [L741] 1 __unbuffered_p0_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=2] [L744] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=2] [L776] 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) [L777] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L778] 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 [L779] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L780] 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=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L747] 1 x = x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd1 ? x$w_buff1 : x) [L748] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L749] 1 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$w_buff1_used [L750] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L751] 1 x$r_buff1_thd1 = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L754] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L783] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L796] 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) [L797] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L798] 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 [L799] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L800] 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}, __unbuffered_cnt=2, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L803] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L825] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L827] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L827] RET 0 assume_abort_if_not(main$tmp_guard0) [L829] 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) [L830] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L831] 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 [L832] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L833] 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}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=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=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L836] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L837] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L838] 0 x$flush_delayed = weak$$choice2 [L839] 0 x$mem_tmp = x [L840] 0 x = !x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1) [L841] 0 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0)) [L842] 0 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1)) [L843] 0 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used)) [L844] 0 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L845] 0 x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff0_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0)) [L846] 0 x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff1_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L847] 0 main$tmp_guard1 = !(x == 2 && y == 2 && __unbuffered_p0_EAX == 2 && __unbuffered_p2_EAX == 1) [L848] 0 x = x$flush_delayed ? x$mem_tmp : x [L849] 0 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L851] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, 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=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, 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: 821]: 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: 823]: 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: 819]: 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, 64 locations, 6 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 5.2s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 285 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 276 mSDsluCounter, 163 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 151 mSDsCounter, 33 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 557 IncrementalHoareTripleChecker+Invalid, 590 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 33 mSolverCounterUnsat, 12 mSDtfsCounter, 557 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 34 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=165occurred in iteration=5, 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.7s InterpolantComputationTime, 121 NumberOfCodeBlocks, 121 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 87 ConstructedInterpolants, 0 QuantifiedInterpolants, 680 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-11-12 08:10:15,638 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE