./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread/stack_longer-1.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/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.6.800.v20240513-1750.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/stack_longer-1.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 4351dece6a672e511bbcb86915e62fc8a7361763ad7ab88f2e640b2d00ea50a7 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 02:01:22,677 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 02:01:22,736 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-04 02:01:22,741 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 02:01:22,742 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 02:01:22,768 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 02:01:22,768 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 02:01:22,768 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 02:01:22,769 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 02:01:22,769 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 02:01:22,769 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 02:01:22,769 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 02:01:22,770 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 02:01:22,770 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 02:01:22,770 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 02:01:22,771 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 02:01:22,771 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 02:01:22,772 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 02:01:22,772 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 02:01:22,772 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/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 -> 4351dece6a672e511bbcb86915e62fc8a7361763ad7ab88f2e640b2d00ea50a7 [2025-03-04 02:01:23,010 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 02:01:23,016 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 02:01:23,018 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 02:01:23,019 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 02:01:23,019 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 02:01:23,020 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread/stack_longer-1.i [2025-03-04 02:01:24,194 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a93c1c86c/da893d5a4ba5470b96180c696758d6cc/FLAG6cedfd01f [2025-03-04 02:01:24,530 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 02:01:24,531 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread/stack_longer-1.i [2025-03-04 02:01:24,556 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a93c1c86c/da893d5a4ba5470b96180c696758d6cc/FLAG6cedfd01f [2025-03-04 02:01:24,769 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a93c1c86c/da893d5a4ba5470b96180c696758d6cc [2025-03-04 02:01:24,771 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 02:01:24,772 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 02:01:24,773 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 02:01:24,773 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 02:01:24,776 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 02:01:24,777 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 02:01:24" (1/1) ... [2025-03-04 02:01:24,777 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@67b2a407 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:24, skipping insertion in model container [2025-03-04 02:01:24,779 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 02:01:24" (1/1) ... [2025-03-04 02:01:24,831 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 02:01:25,196 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/stack_longer-1.i[41527,41540] [2025-03-04 02:01:25,223 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 02:01:25,245 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 02:01:25,281 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/stack_longer-1.i[41527,41540] [2025-03-04 02:01:25,286 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 02:01:25,370 INFO L204 MainTranslator]: Completed translation [2025-03-04 02:01:25,371 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25 WrapperNode [2025-03-04 02:01:25,371 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 02:01:25,372 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 02:01:25,372 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 02:01:25,372 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 02:01:25,376 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,394 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,423 INFO L138 Inliner]: procedures = 277, calls = 431, calls flagged for inlining = 12, calls inlined = 12, statements flattened = 546 [2025-03-04 02:01:25,424 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 02:01:25,424 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 02:01:25,424 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 02:01:25,424 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 02:01:25,434 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,434 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,443 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,471 INFO L175 MemorySlicer]: Split 409 memory accesses to 3 slices as follows [2, 402, 5]. 98 percent of accesses are in the largest equivalence class. The 407 initializations are split as follows [2, 400, 5]. The 1 writes are split as follows [0, 1, 0]. [2025-03-04 02:01:25,472 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,472 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,488 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,491 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,493 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,494 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,496 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 02:01:25,497 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 02:01:25,497 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 02:01:25,497 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 02:01:25,497 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (1/1) ... [2025-03-04 02:01:25,502 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 02:01:25,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 02:01:25,523 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) [2025-03-04 02:01:25,525 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 [2025-03-04 02:01:25,540 INFO L130 BoogieDeclarations]: Found specification of procedure t1 [2025-03-04 02:01:25,540 INFO L138 BoogieDeclarations]: Found implementation of procedure t1 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure t2 [2025-03-04 02:01:25,541 INFO L138 BoogieDeclarations]: Found implementation of procedure t2 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-03-04 02:01:25,541 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 02:01:25,541 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 02:01:25,542 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-04 02:01:25,637 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 02:01:25,639 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 02:01:26,229 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L982: havoc pop_#t~mem38#1; [2025-03-04 02:01:26,230 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L982-1: havoc pop_#t~ret37#1; [2025-03-04 02:01:26,230 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L984-1: pop_#res#1 := 0; [2025-03-04 02:01:26,231 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-04 02:01:26,231 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 02:01:29,747 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 02:01:29,748 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 02:01:29,748 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:01:29 BoogieIcfgContainer [2025-03-04 02:01:29,748 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 02:01:29,750 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 02:01:29,750 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 02:01:29,753 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 02:01:29,754 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 02:01:24" (1/3) ... [2025-03-04 02:01:29,754 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@717643de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 02:01:29, skipping insertion in model container [2025-03-04 02:01:29,754 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:01:25" (2/3) ... [2025-03-04 02:01:29,754 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@717643de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 02:01:29, skipping insertion in model container [2025-03-04 02:01:29,754 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:01:29" (3/3) ... [2025-03-04 02:01:29,755 INFO L128 eAbstractionObserver]: Analyzing ICFG stack_longer-1.i [2025-03-04 02:01:29,766 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 02:01:29,767 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG stack_longer-1.i that has 3 procedures, 31 locations, 1 initial locations, 2 loop locations, and 2 error locations. [2025-03-04 02:01:29,769 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-04 02:01:29,828 INFO L143 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2025-03-04 02:01:29,856 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 35 transitions, 84 flow [2025-03-04 02:01:29,900 INFO L124 PetriNetUnfolderBase]: 5/33 cut-off events. [2025-03-04 02:01:29,901 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2025-03-04 02:01:29,906 INFO L83 FinitePrefix]: Finished finitePrefix Result has 42 conditions, 33 events. 5/33 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 64 event pairs, 0 based on Foata normal form. 0/26 useless extension candidates. Maximal degree in co-relation 30. Up to 3 conditions per place. [2025-03-04 02:01:29,907 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 35 transitions, 84 flow [2025-03-04 02:01:29,911 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 33 places, 31 transitions, 71 flow [2025-03-04 02:01:29,922 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 02:01:29,949 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;@7400b923, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 02:01:29,949 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2025-03-04 02:01:29,984 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-04 02:01:29,984 INFO L124 PetriNetUnfolderBase]: 1/19 cut-off events. [2025-03-04 02:01:29,985 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2025-03-04 02:01:29,985 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:29,986 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:29,986 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting t1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:29,990 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:29,991 INFO L85 PathProgramCache]: Analyzing trace with hash -79163411, now seen corresponding path program 1 times [2025-03-04 02:01:29,998 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:30,000 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1094299411] [2025-03-04 02:01:30,001 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:30,001 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:30,110 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-03-04 02:01:30,228 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-03-04 02:01:30,228 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:30,228 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:30,668 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:30,669 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:30,669 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1094299411] [2025-03-04 02:01:30,670 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1094299411] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:01:30,670 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:01:30,670 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-04 02:01:30,671 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1654210400] [2025-03-04 02:01:30,671 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:01:30,676 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-04 02:01:30,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:30,697 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-04 02:01:30,698 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-04 02:01:30,699 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 35 [2025-03-04 02:01:30,702 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 33 places, 31 transitions, 71 flow. Second operand has 4 states, 4 states have (on average 10.5) internal successors, (42), 4 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) [2025-03-04 02:01:30,702 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:30,702 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 35 [2025-03-04 02:01:30,703 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:30,916 INFO L124 PetriNetUnfolderBase]: 342/656 cut-off events. [2025-03-04 02:01:30,916 INFO L125 PetriNetUnfolderBase]: For 38/38 co-relation queries the response was YES. [2025-03-04 02:01:30,918 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1268 conditions, 656 events. 342/656 cut-off events. For 38/38 co-relation queries the response was YES. Maximal size of possible extension queue 34. Compared 2999 event pairs, 75 based on Foata normal form. 44/653 useless extension candidates. Maximal degree in co-relation 1176. Up to 358 conditions per place. [2025-03-04 02:01:30,924 INFO L140 encePairwiseOnDemand]: 29/35 looper letters, 46 selfloop transitions, 3 changer transitions 0/56 dead transitions. [2025-03-04 02:01:30,924 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 56 transitions, 228 flow [2025-03-04 02:01:30,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-04 02:01:30,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-04 02:01:30,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 90 transitions. [2025-03-04 02:01:30,938 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6428571428571429 [2025-03-04 02:01:30,940 INFO L175 Difference]: Start difference. First operand has 33 places, 31 transitions, 71 flow. Second operand 4 states and 90 transitions. [2025-03-04 02:01:30,941 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 56 transitions, 228 flow [2025-03-04 02:01:30,948 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 33 places, 56 transitions, 219 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-03-04 02:01:30,951 INFO L231 Difference]: Finished difference. Result has 35 places, 31 transitions, 82 flow [2025-03-04 02:01:30,953 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=62, PETRI_DIFFERENCE_MINUEND_PLACES=30, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=82, PETRI_PLACES=35, PETRI_TRANSITIONS=31} [2025-03-04 02:01:30,957 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 2 predicate places. [2025-03-04 02:01:30,958 INFO L471 AbstractCegarLoop]: Abstraction has has 35 places, 31 transitions, 82 flow [2025-03-04 02:01:30,958 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.5) internal successors, (42), 4 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) [2025-03-04 02:01:30,958 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:30,958 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:30,958 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-04 02:01:30,959 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting t2Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:30,959 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:30,959 INFO L85 PathProgramCache]: Analyzing trace with hash -1064510612, now seen corresponding path program 1 times [2025-03-04 02:01:30,959 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:30,959 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [374929060] [2025-03-04 02:01:30,959 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:30,959 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:30,982 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 11 statements into 1 equivalence classes. [2025-03-04 02:01:31,015 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 11 of 11 statements. [2025-03-04 02:01:31,016 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:31,016 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:31,181 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:31,181 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:31,181 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [374929060] [2025-03-04 02:01:31,181 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [374929060] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:01:31,181 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:01:31,181 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-04 02:01:31,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1017381543] [2025-03-04 02:01:31,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:01:31,183 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-04 02:01:31,183 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:31,183 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-04 02:01:31,183 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-04 02:01:31,190 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 35 [2025-03-04 02:01:31,191 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 31 transitions, 82 flow. Second operand has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:31,191 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:31,191 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 35 [2025-03-04 02:01:31,191 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:31,333 INFO L124 PetriNetUnfolderBase]: 341/640 cut-off events. [2025-03-04 02:01:31,334 INFO L125 PetriNetUnfolderBase]: For 51/51 co-relation queries the response was YES. [2025-03-04 02:01:31,338 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1348 conditions, 640 events. 341/640 cut-off events. For 51/51 co-relation queries the response was YES. Maximal size of possible extension queue 33. Compared 2810 event pairs, 128 based on Foata normal form. 10/609 useless extension candidates. Maximal degree in co-relation 989. Up to 398 conditions per place. [2025-03-04 02:01:31,342 INFO L140 encePairwiseOnDemand]: 32/35 looper letters, 33 selfloop transitions, 2 changer transitions 2/43 dead transitions. [2025-03-04 02:01:31,343 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 43 transitions, 183 flow [2025-03-04 02:01:31,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-04 02:01:31,343 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-04 02:01:31,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 62 transitions. [2025-03-04 02:01:31,344 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5904761904761905 [2025-03-04 02:01:31,344 INFO L175 Difference]: Start difference. First operand has 35 places, 31 transitions, 82 flow. Second operand 3 states and 62 transitions. [2025-03-04 02:01:31,344 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 43 transitions, 183 flow [2025-03-04 02:01:31,345 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 36 places, 43 transitions, 181 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-03-04 02:01:31,346 INFO L231 Difference]: Finished difference. Result has 37 places, 32 transitions, 92 flow [2025-03-04 02:01:31,346 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=34, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=29, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=92, PETRI_PLACES=37, PETRI_TRANSITIONS=32} [2025-03-04 02:01:31,348 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 4 predicate places. [2025-03-04 02:01:31,348 INFO L471 AbstractCegarLoop]: Abstraction has has 37 places, 32 transitions, 92 flow [2025-03-04 02:01:31,349 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:31,349 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:31,349 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:31,349 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-04 02:01:31,349 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting t1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:31,351 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:31,351 INFO L85 PathProgramCache]: Analyzing trace with hash 1857863501, now seen corresponding path program 1 times [2025-03-04 02:01:31,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:31,351 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [637038521] [2025-03-04 02:01:31,351 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:31,351 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:31,370 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 15 statements into 1 equivalence classes. [2025-03-04 02:01:31,386 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 15 of 15 statements. [2025-03-04 02:01:31,386 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:31,386 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:31,653 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:31,653 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:31,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [637038521] [2025-03-04 02:01:31,654 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [637038521] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 02:01:31,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [547761217] [2025-03-04 02:01:31,654 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:31,654 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 02:01:31,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 02:01:31,657 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 02:01:31,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-04 02:01:31,730 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 15 statements into 1 equivalence classes. [2025-03-04 02:01:31,840 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 15 of 15 statements. [2025-03-04 02:01:31,841 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:31,841 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:31,845 INFO L256 TraceCheckSpWp]: Trace formula consists of 921 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-03-04 02:01:31,849 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 02:01:31,909 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2025-03-04 02:01:32,003 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:32,003 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-04 02:01:32,087 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:32,087 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [547761217] provided 0 perfect and 2 imperfect interpolant sequences [2025-03-04 02:01:32,087 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-03-04 02:01:32,087 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 8 [2025-03-04 02:01:32,087 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1376877136] [2025-03-04 02:01:32,088 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-03-04 02:01:32,088 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2025-03-04 02:01:32,089 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:32,089 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-03-04 02:01:32,090 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2025-03-04 02:01:32,090 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 35 [2025-03-04 02:01:32,091 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 37 places, 32 transitions, 92 flow. Second operand has 9 states, 9 states have (on average 12.444444444444445) internal successors, (112), 9 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:32,092 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:32,092 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 35 [2025-03-04 02:01:32,092 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:32,549 INFO L124 PetriNetUnfolderBase]: 1030/1975 cut-off events. [2025-03-04 02:01:32,549 INFO L125 PetriNetUnfolderBase]: For 193/193 co-relation queries the response was YES. [2025-03-04 02:01:32,552 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4120 conditions, 1975 events. 1030/1975 cut-off events. For 193/193 co-relation queries the response was YES. Maximal size of possible extension queue 64. Compared 10202 event pairs, 79 based on Foata normal form. 0/1880 useless extension candidates. Maximal degree in co-relation 3565. Up to 390 conditions per place. [2025-03-04 02:01:32,560 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 137 selfloop transitions, 18 changer transitions 2/165 dead transitions. [2025-03-04 02:01:32,560 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 165 transitions, 729 flow [2025-03-04 02:01:32,561 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-03-04 02:01:32,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-03-04 02:01:32,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 269 transitions. [2025-03-04 02:01:32,562 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6404761904761904 [2025-03-04 02:01:32,562 INFO L175 Difference]: Start difference. First operand has 37 places, 32 transitions, 92 flow. Second operand 12 states and 269 transitions. [2025-03-04 02:01:32,562 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 165 transitions, 729 flow [2025-03-04 02:01:32,564 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 165 transitions, 727 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-03-04 02:01:32,565 INFO L231 Difference]: Finished difference. Result has 52 places, 50 transitions, 237 flow [2025-03-04 02:01:32,566 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=90, PETRI_DIFFERENCE_MINUEND_PLACES=36, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=237, PETRI_PLACES=52, PETRI_TRANSITIONS=50} [2025-03-04 02:01:32,566 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 19 predicate places. [2025-03-04 02:01:32,566 INFO L471 AbstractCegarLoop]: Abstraction has has 52 places, 50 transitions, 237 flow [2025-03-04 02:01:32,567 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 12.444444444444445) internal successors, (112), 9 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:32,568 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:32,568 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:32,576 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-03-04 02:01:32,771 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 02:01:32,771 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting t2Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:32,772 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:32,772 INFO L85 PathProgramCache]: Analyzing trace with hash -1759593495, now seen corresponding path program 1 times [2025-03-04 02:01:32,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:32,772 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [258055044] [2025-03-04 02:01:32,772 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:32,772 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:32,785 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-03-04 02:01:32,795 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-03-04 02:01:32,795 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:32,795 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:32,930 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:32,930 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:32,930 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [258055044] [2025-03-04 02:01:32,930 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [258055044] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:01:32,930 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:01:32,931 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-04 02:01:32,931 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [76035536] [2025-03-04 02:01:32,931 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:01:32,931 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-04 02:01:32,931 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:32,931 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-04 02:01:32,932 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-04 02:01:32,932 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 35 [2025-03-04 02:01:32,932 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 50 transitions, 237 flow. Second operand has 3 states, 3 states have (on average 13.0) internal successors, (39), 3 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:32,932 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:32,932 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 35 [2025-03-04 02:01:32,932 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:33,071 INFO L124 PetriNetUnfolderBase]: 593/1233 cut-off events. [2025-03-04 02:01:33,071 INFO L125 PetriNetUnfolderBase]: For 452/452 co-relation queries the response was YES. [2025-03-04 02:01:33,073 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2781 conditions, 1233 events. 593/1233 cut-off events. For 452/452 co-relation queries the response was YES. Maximal size of possible extension queue 35. Compared 5842 event pairs, 204 based on Foata normal form. 60/1278 useless extension candidates. Maximal degree in co-relation 2654. Up to 580 conditions per place. [2025-03-04 02:01:33,077 INFO L140 encePairwiseOnDemand]: 31/35 looper letters, 42 selfloop transitions, 4 changer transitions 0/54 dead transitions. [2025-03-04 02:01:33,077 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 54 transitions, 309 flow [2025-03-04 02:01:33,078 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-04 02:01:33,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-04 02:01:33,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2025-03-04 02:01:33,079 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.580952380952381 [2025-03-04 02:01:33,079 INFO L175 Difference]: Start difference. First operand has 52 places, 50 transitions, 237 flow. Second operand 3 states and 61 transitions. [2025-03-04 02:01:33,079 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 54 transitions, 309 flow [2025-03-04 02:01:33,087 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 50 places, 54 transitions, 285 flow, removed 10 selfloop flow, removed 3 redundant places. [2025-03-04 02:01:33,089 INFO L231 Difference]: Finished difference. Result has 50 places, 44 transitions, 178 flow [2025-03-04 02:01:33,089 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=170, PETRI_DIFFERENCE_MINUEND_PLACES=48, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=44, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=178, PETRI_PLACES=50, PETRI_TRANSITIONS=44} [2025-03-04 02:01:33,090 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 17 predicate places. [2025-03-04 02:01:33,090 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 44 transitions, 178 flow [2025-03-04 02:01:33,090 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.0) internal successors, (39), 3 states have internal predecessors, (39), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:33,090 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:33,090 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:33,091 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-04 02:01:33,091 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting t2Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:33,091 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:33,091 INFO L85 PathProgramCache]: Analyzing trace with hash -1591736157, now seen corresponding path program 1 times [2025-03-04 02:01:33,091 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:33,091 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [435212927] [2025-03-04 02:01:33,092 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:33,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:33,106 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-04 02:01:33,163 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-04 02:01:33,165 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:33,165 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:33,934 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:33,935 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:33,935 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [435212927] [2025-03-04 02:01:33,936 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [435212927] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:01:33,936 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:01:33,936 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-04 02:01:33,936 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1046352727] [2025-03-04 02:01:33,936 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:01:33,936 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-04 02:01:33,936 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:33,936 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-04 02:01:33,936 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2025-03-04 02:01:33,937 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 35 [2025-03-04 02:01:33,937 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 44 transitions, 178 flow. Second operand has 5 states, 5 states have (on average 11.6) internal successors, (58), 5 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:33,937 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:33,937 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 35 [2025-03-04 02:01:33,937 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:34,139 INFO L124 PetriNetUnfolderBase]: 601/1240 cut-off events. [2025-03-04 02:01:34,139 INFO L125 PetriNetUnfolderBase]: For 465/465 co-relation queries the response was YES. [2025-03-04 02:01:34,143 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2878 conditions, 1240 events. 601/1240 cut-off events. For 465/465 co-relation queries the response was YES. Maximal size of possible extension queue 37. Compared 5833 event pairs, 156 based on Foata normal form. 0/1221 useless extension candidates. Maximal degree in co-relation 2482. Up to 597 conditions per place. [2025-03-04 02:01:34,148 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 62 selfloop transitions, 6 changer transitions 0/76 dead transitions. [2025-03-04 02:01:34,148 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 54 places, 76 transitions, 399 flow [2025-03-04 02:01:34,149 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-04 02:01:34,149 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-04 02:01:34,150 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 105 transitions. [2025-03-04 02:01:34,151 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6 [2025-03-04 02:01:34,151 INFO L175 Difference]: Start difference. First operand has 50 places, 44 transitions, 178 flow. Second operand 5 states and 105 transitions. [2025-03-04 02:01:34,151 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 54 places, 76 transitions, 399 flow [2025-03-04 02:01:34,154 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 53 places, 76 transitions, 388 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-03-04 02:01:34,155 INFO L231 Difference]: Finished difference. Result has 54 places, 45 transitions, 194 flow [2025-03-04 02:01:34,155 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=174, PETRI_DIFFERENCE_MINUEND_PLACES=49, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=44, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=194, PETRI_PLACES=54, PETRI_TRANSITIONS=45} [2025-03-04 02:01:34,155 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 21 predicate places. [2025-03-04 02:01:34,156 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 45 transitions, 194 flow [2025-03-04 02:01:34,156 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 11.6) internal successors, (58), 5 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:34,156 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:34,156 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:34,156 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-04 02:01:34,156 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting t2Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:34,156 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:34,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1257449037, now seen corresponding path program 1 times [2025-03-04 02:01:34,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:34,156 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [25601962] [2025-03-04 02:01:34,156 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:34,157 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:34,172 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-04 02:01:34,199 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-04 02:01:34,199 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:34,199 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:34,901 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:34,901 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:01:34,902 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [25601962] [2025-03-04 02:01:34,902 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [25601962] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 02:01:34,902 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1955801799] [2025-03-04 02:01:34,902 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:34,902 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 02:01:34,902 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 02:01:34,905 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 02:01:34,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-03-04 02:01:34,975 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-04 02:01:35,090 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-04 02:01:35,091 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:35,091 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:01:35,100 INFO L256 TraceCheckSpWp]: Trace formula consists of 970 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-03-04 02:01:35,106 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 02:01:35,138 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2025-03-04 02:01:35,190 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 1 [2025-03-04 02:01:35,268 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 68 treesize of output 32 [2025-03-04 02:01:35,311 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:35,311 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-03-04 02:01:35,688 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 1 [2025-03-04 02:01:35,761 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:01:35,762 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1955801799] provided 0 perfect and 2 imperfect interpolant sequences [2025-03-04 02:01:35,762 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-03-04 02:01:35,762 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 13 [2025-03-04 02:01:35,762 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1464818231] [2025-03-04 02:01:35,762 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-03-04 02:01:35,762 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2025-03-04 02:01:35,763 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:01:35,763 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2025-03-04 02:01:35,763 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2025-03-04 02:01:35,763 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 35 [2025-03-04 02:01:35,764 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 54 places, 45 transitions, 194 flow. Second operand has 14 states, 14 states have (on average 12.857142857142858) internal successors, (180), 14 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:35,764 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:01:35,764 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 35 [2025-03-04 02:01:35,764 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:01:36,387 INFO L124 PetriNetUnfolderBase]: 1188/2461 cut-off events. [2025-03-04 02:01:36,387 INFO L125 PetriNetUnfolderBase]: For 1145/1145 co-relation queries the response was YES. [2025-03-04 02:01:36,393 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5649 conditions, 2461 events. 1188/2461 cut-off events. For 1145/1145 co-relation queries the response was YES. Maximal size of possible extension queue 73. Compared 13233 event pairs, 226 based on Foata normal form. 0/2430 useless extension candidates. Maximal degree in co-relation 4466. Up to 366 conditions per place. [2025-03-04 02:01:36,403 INFO L140 encePairwiseOnDemand]: 30/35 looper letters, 138 selfloop transitions, 26 changer transitions 0/172 dead transitions. [2025-03-04 02:01:36,403 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 65 places, 172 transitions, 946 flow [2025-03-04 02:01:36,404 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-03-04 02:01:36,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-03-04 02:01:36,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 260 transitions. [2025-03-04 02:01:36,407 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6190476190476191 [2025-03-04 02:01:36,407 INFO L175 Difference]: Start difference. First operand has 54 places, 45 transitions, 194 flow. Second operand 12 states and 260 transitions. [2025-03-04 02:01:36,407 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 65 places, 172 transitions, 946 flow [2025-03-04 02:01:36,412 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 63 places, 172 transitions, 940 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-04 02:01:36,414 INFO L231 Difference]: Finished difference. Result has 66 places, 63 transitions, 354 flow [2025-03-04 02:01:36,415 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=35, PETRI_DIFFERENCE_MINUEND_FLOW=188, PETRI_DIFFERENCE_MINUEND_PLACES=52, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=45, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=13, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=354, PETRI_PLACES=66, PETRI_TRANSITIONS=63} [2025-03-04 02:01:36,415 INFO L279 CegarLoopForPetriNet]: 33 programPoint places, 33 predicate places. [2025-03-04 02:01:36,416 INFO L471 AbstractCegarLoop]: Abstraction has has 66 places, 63 transitions, 354 flow [2025-03-04 02:01:36,416 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 12.857142857142858) internal successors, (180), 14 states have internal predecessors, (180), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:01:36,416 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:01:36,417 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:36,426 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2025-03-04 02:01:36,621 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable5 [2025-03-04 02:01:36,622 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting t2Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 4 more)] === [2025-03-04 02:01:36,622 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:01:36,622 INFO L85 PathProgramCache]: Analyzing trace with hash 864423633, now seen corresponding path program 1 times [2025-03-04 02:01:36,622 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:01:36,623 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60792303] [2025-03-04 02:01:36,623 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:01:36,623 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:01:36,644 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-04 02:01:36,704 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-04 02:01:36,704 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:36,704 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 02:01:36,704 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-04 02:01:36,710 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-04 02:01:36,757 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-04 02:01:36,759 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:01:36,759 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 02:01:36,788 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-04 02:01:36,790 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-04 02:01:36,791 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location t2Err0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2025-03-04 02:01:36,794 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (4 of 6 remaining) [2025-03-04 02:01:36,794 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2025-03-04 02:01:36,794 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location t1Err0ASSERT_VIOLATIONERROR_FUNCTION (2 of 6 remaining) [2025-03-04 02:01:36,794 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location t2Err0ASSERT_VIOLATIONERROR_FUNCTION (1 of 6 remaining) [2025-03-04 02:01:36,794 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location t1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2025-03-04 02:01:36,794 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-03-04 02:01:36,795 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:01:36,846 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-04 02:01:36,846 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-04 02:01:36,852 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.03 02:01:36 BasicIcfg [2025-03-04 02:01:36,853 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-04 02:01:36,853 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-04 02:01:36,853 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-04 02:01:36,854 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-04 02:01:36,854 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:01:29" (3/4) ... [2025-03-04 02:01:36,855 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-04 02:01:36,909 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 34. [2025-03-04 02:01:36,963 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-04 02:01:36,963 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-04 02:01:36,963 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-04 02:01:36,964 INFO L158 Benchmark]: Toolchain (without parser) took 12191.47ms. Allocated memory was 142.6MB in the beginning and 1.1GB in the end (delta: 973.1MB). Free memory was 110.8MB in the beginning and 534.9MB in the end (delta: -424.1MB). Peak memory consumption was 550.1MB. Max. memory is 16.1GB. [2025-03-04 02:01:36,965 INFO L158 Benchmark]: CDTParser took 0.24ms. Allocated memory is still 201.3MB. Free memory is still 124.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 02:01:36,965 INFO L158 Benchmark]: CACSL2BoogieTranslator took 598.50ms. Allocated memory is still 142.6MB. Free memory was 110.3MB in the beginning and 77.1MB in the end (delta: 33.2MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-03-04 02:01:36,965 INFO L158 Benchmark]: Boogie Procedure Inliner took 51.57ms. Allocated memory is still 142.6MB. Free memory was 77.1MB in the beginning and 71.5MB in the end (delta: 5.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-04 02:01:36,966 INFO L158 Benchmark]: Boogie Preprocessor took 71.95ms. Allocated memory is still 142.6MB. Free memory was 71.5MB in the beginning and 67.0MB in the end (delta: 4.5MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 02:01:36,966 INFO L158 Benchmark]: IcfgBuilder took 4251.39ms. Allocated memory was 142.6MB in the beginning and 1.1GB in the end (delta: 973.1MB). Free memory was 67.0MB in the beginning and 452.4MB in the end (delta: -385.5MB). Peak memory consumption was 588.4MB. Max. memory is 16.1GB. [2025-03-04 02:01:36,966 INFO L158 Benchmark]: TraceAbstraction took 7102.59ms. Allocated memory is still 1.1GB. Free memory was 452.4MB in the beginning and 547.5MB in the end (delta: -95.0MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 02:01:36,967 INFO L158 Benchmark]: Witness Printer took 110.03ms. Allocated memory is still 1.1GB. Free memory was 547.5MB in the beginning and 534.9MB in the end (delta: 12.6MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-04 02:01:36,968 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.24ms. Allocated memory is still 201.3MB. Free memory is still 124.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 598.50ms. Allocated memory is still 142.6MB. Free memory was 110.3MB in the beginning and 77.1MB in the end (delta: 33.2MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 51.57ms. Allocated memory is still 142.6MB. Free memory was 77.1MB in the beginning and 71.5MB in the end (delta: 5.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 71.95ms. Allocated memory is still 142.6MB. Free memory was 71.5MB in the beginning and 67.0MB in the end (delta: 4.5MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 4251.39ms. Allocated memory was 142.6MB in the beginning and 1.1GB in the end (delta: 973.1MB). Free memory was 67.0MB in the beginning and 452.4MB in the end (delta: -385.5MB). Peak memory consumption was 588.4MB. Max. memory is 16.1GB. * TraceAbstraction took 7102.59ms. Allocated memory is still 1.1GB. Free memory was 452.4MB in the beginning and 547.5MB in the end (delta: -95.0MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 110.03ms. Allocated memory is still 1.1GB. Free memory was 547.5MB in the beginning and 534.9MB in the end (delta: 12.6MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 940]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L935] 0 static int top=0; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L936] 0 static unsigned int arr[(400)]; [L937] 0 pthread_mutex_t m; [L937] 0 pthread_mutex_t m; [L937] 0 pthread_mutex_t m; [L937] 0 pthread_mutex_t m; [L937] 0 pthread_mutex_t m; [L937] 0 pthread_mutex_t m; [L938] 0 _Bool flag=(0); [L1019] 0 pthread_t id1, id2; [L1021] FCALL, FORK 0 pthread_create(&id1, ((void *)0), t1, ((void *)0)) VAL [arr={3:0}, flag=0, id1=-1, m={4:0}, top=0] [L988] 1 int i; [L989] 1 unsigned int tmp; [L990] 1 i=0 VAL [\old(arg)={0:0}, arg={0:0}, arr={3:0}, flag=0, i=0, m={4:0}, top=0] [L990] COND TRUE 1 i<(400) VAL [arr={3:0}, flag=0, m={4:0}, top=0] [L1022] FCALL, FORK 0 pthread_create(&id2, ((void *)0), t2, ((void *)0)) VAL [arr={3:0}, flag=0, id1=-1, id2=0, m={4:0}, top=0] [L1004] 2 int i; [L1005] 2 i=0 VAL [\old(arg)={0:0}, arg={0:0}, arr={3:0}, flag=0, i=0, m={4:0}, top=0] [L993] 1 tmp = __VERIFIER_nondet_uint() [L994] CALL 1 assume_abort_if_not(tmp < (400)) [L23] COND FALSE 1 !(!cond) [L994] RET 1 assume_abort_if_not(tmp < (400)) [L995] CALL, EXPR 1 push(arr,tmp) [L960] COND FALSE 1 !(top==(400)) [L967] CALL, EXPR 1 get_top() [L952] 1 return top; [L967] RET, EXPR 1 get_top() [L967] 1 stack[get_top()] = x [L968] CALL 1 inc_top() [L944] 1 top++ [L968] RET 1 inc_top() [L970] 1 return 0; [L995] RET, EXPR 1 push(arr,tmp) [L995] COND FALSE 1 !(push(arr,tmp)==(-1)) [L997] 1 flag=(1) VAL [\old(arg)={0:0}, arg={0:0}, arr={3:0}, flag=1, i=0, m={4:0}, tmp=399, top=1] [L1005] COND TRUE 2 i<(400) VAL [arr={3:0}, flag=1, m={4:0}, top=1] [L1008] COND TRUE 2 \read(flag) [L1010] CALL, EXPR 2 pop(arr) [L974] CALL, EXPR 2 get_top() [L952] 2 return top; [L974] RET, EXPR 2 get_top() [L974] COND FALSE 2 !(get_top()==0) [L981] CALL 2 dec_top() [L948] 2 top-- [L981] RET 2 dec_top() [L982] CALL, EXPR 2 get_top() [L952] 2 return top; [L982] RET, EXPR 2 get_top() [L982] EXPR 2 stack[get_top()] [L982] 2 return stack[get_top()]; [L1010] RET, EXPR 2 pop(arr) [L1010] COND FALSE 2 !(!(pop(arr)!=(-2))) [L1005] 2 i++ VAL [\old(arg)={0:0}, arg={0:0}, arr={3:0}, flag=1, i=1, m={4:0}, top=0] [L1005] COND TRUE 2 i<(400) VAL [arr={3:0}, flag=1, m={4:0}, top=0] [L1008] COND TRUE 2 \read(flag) [L1010] CALL, EXPR 2 pop(arr) [L974] CALL, EXPR 2 get_top() [L952] 2 return top; [L974] RET, EXPR 2 get_top() [L974] COND TRUE 2 get_top()==0 [L977] 2 return (-2); [L1010] RET, EXPR 2 pop(arr) [L1010] COND TRUE 2 !(pop(arr)!=(-2)) [L1011] CALL 2 error() [L940] 2 reach_error() VAL [arr={3:0}, flag=1, m={4:0}, top=0] - UnprovableResult [Line: 1022]: 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: 1021]: 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: 940]: 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. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 55 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: 6.9s, OverallIterations: 7, TraceHistogramMax: 2, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 1.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 462 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 458 mSDsluCounter, 2 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 21 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1026 IncrementalHoareTripleChecker+Invalid, 1047 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 21 mSolverCounterUnsat, 2 mSDtfsCounter, 1026 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 107 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=354occurred in iteration=6, InterpolantAutomatonStates: 39, 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.1s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 3.4s InterpolantComputationTime, 159 NumberOfCodeBlocks, 159 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 164 ConstructedInterpolants, 7 QuantifiedInterpolants, 1522 SizeOfPredicates, 21 NumberOfNonLiveVariables, 1891 ConjunctsInSsa, 16 ConjunctsInUnsatCore, 10 InterpolantComputations, 4 PerfectInterpolantSequences, 0/27 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-04 02:01:36,987 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