./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/weaver/popl20-bad-commit-2.wvr-bad.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/weaver/popl20-bad-commit-2.wvr-bad.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 5bf746ef76f8c8352051d8eb5f02d7a475e14d238622e290fcb51135a3348206 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 13:05:49,460 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 13:05:49,539 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2025-02-06 13:05:49,547 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 13:05:49,547 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 13:05:49,576 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 13:05:49,576 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 13:05:49,576 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 13:05:49,577 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 13:05:49,577 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 13:05:49,577 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-06 13:05:49,577 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-06 13:05:49,577 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 13:05:49,577 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 13:05:49,577 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 13:05:49,577 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 13:05:49,577 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Bitprecise bitfields=true [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-02-06 13:05:49,578 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-06 13:05:49,580 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 13:05:49,581 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 13:05:49,581 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 13:05:49,581 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 13:05:49,581 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-06 13:05:49,581 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-06 13:05:49,581 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 13:05:49,582 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-06 13:05:49,582 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-06 13:05:49,582 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-jdk21/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 valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) 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 -> 5bf746ef76f8c8352051d8eb5f02d7a475e14d238622e290fcb51135a3348206 [2025-02-06 13:05:49,869 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 13:05:49,878 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 13:05:49,880 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 13:05:49,882 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 13:05:49,883 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 13:05:49,885 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/weaver/popl20-bad-commit-2.wvr-bad.c [2025-02-06 13:05:51,154 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/15ee9caa3/6779d3c838314bf8b2bd0791f10071f7/FLAGc560ae216 [2025-02-06 13:05:51,428 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 13:05:51,429 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/weaver/popl20-bad-commit-2.wvr-bad.c [2025-02-06 13:05:51,438 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/15ee9caa3/6779d3c838314bf8b2bd0791f10071f7/FLAGc560ae216 [2025-02-06 13:05:51,733 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/15ee9caa3/6779d3c838314bf8b2bd0791f10071f7 [2025-02-06 13:05:51,735 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 13:05:51,736 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 13:05:51,738 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 13:05:51,738 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 13:05:51,742 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 13:05:51,743 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:05:51" (1/1) ... [2025-02-06 13:05:51,745 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@32c4def7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:51, skipping insertion in model container [2025-02-06 13:05:51,745 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 01:05:51" (1/1) ... [2025-02-06 13:05:51,764 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 13:05:51,979 WARN L1100 CHandler]: saw a pointer cast to a type that we could not get a type size for, not adapting memory model [2025-02-06 13:05:51,984 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 13:05:51,996 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 13:05:52,045 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 13:05:52,066 INFO L204 MainTranslator]: Completed translation [2025-02-06 13:05:52,067 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52 WrapperNode [2025-02-06 13:05:52,068 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 13:05:52,069 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 13:05:52,069 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 13:05:52,070 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 13:05:52,075 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,089 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,133 INFO L138 Inliner]: procedures = 25, calls = 74, calls flagged for inlining = 28, calls inlined = 34, statements flattened = 447 [2025-02-06 13:05:52,135 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 13:05:52,136 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 13:05:52,136 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 13:05:52,136 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 13:05:52,144 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,145 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,153 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,184 INFO L175 MemorySlicer]: Split 18 memory accesses to 2 slices as follows [2, 16]. 89 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0]. The 4 writes are split as follows [0, 4]. [2025-02-06 13:05:52,185 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,185 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,196 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,198 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,199 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,201 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,204 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 13:05:52,205 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 13:05:52,205 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 13:05:52,205 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 13:05:52,206 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (1/1) ... [2025-02-06 13:05:52,211 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-06 13:05:52,233 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 13:05:52,253 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-06 13:05:52,257 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-06 13:05:52,282 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-06 13:05:52,283 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-02-06 13:05:52,283 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-02-06 13:05:52,283 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-02-06 13:05:52,284 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2025-02-06 13:05:52,284 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure thread4 [2025-02-06 13:05:52,284 INFO L138 BoogieDeclarations]: Found implementation of procedure thread4 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-02-06 13:05:52,284 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-02-06 13:05:52,285 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-02-06 13:05:52,285 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-02-06 13:05:52,285 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 13:05:52,285 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 13:05:52,285 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-02-06 13:05:52,285 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-02-06 13:05:52,286 WARN L227 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-02-06 13:05:52,397 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 13:05:52,399 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 13:05:53,107 INFO L304 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-02-06 13:05:53,107 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 13:05:53,572 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 13:05:53,574 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 13:05:53,575 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:05:53 BoogieIcfgContainer [2025-02-06 13:05:53,575 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 13:05:53,577 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-06 13:05:53,578 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-06 13:05:53,582 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-06 13:05:53,583 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 06.02 01:05:51" (1/3) ... [2025-02-06 13:05:53,584 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@72f88818 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:05:53, skipping insertion in model container [2025-02-06 13:05:53,584 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 01:05:52" (2/3) ... [2025-02-06 13:05:53,585 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@72f88818 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 06.02 01:05:53, skipping insertion in model container [2025-02-06 13:05:53,585 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 01:05:53" (3/3) ... [2025-02-06 13:05:53,586 INFO L128 eAbstractionObserver]: Analyzing ICFG popl20-bad-commit-2.wvr-bad.c [2025-02-06 13:05:53,604 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-06 13:05:53,606 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG popl20-bad-commit-2.wvr-bad.c that has 5 procedures, 99 locations, 1 initial locations, 8 loop locations, and 34 error locations. [2025-02-06 13:05:53,606 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-02-06 13:05:53,703 INFO L143 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2025-02-06 13:05:53,742 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 111 places, 122 transitions, 272 flow [2025-02-06 13:05:53,801 INFO L124 PetriNetUnfolderBase]: 24/118 cut-off events. [2025-02-06 13:05:53,805 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-02-06 13:05:53,814 INFO L83 FinitePrefix]: Finished finitePrefix Result has 135 conditions, 118 events. 24/118 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 14. Compared 376 event pairs, 0 based on Foata normal form. 0/60 useless extension candidates. Maximal degree in co-relation 98. Up to 8 conditions per place. [2025-02-06 13:05:53,815 INFO L82 GeneralOperation]: Start removeDead. Operand has 111 places, 122 transitions, 272 flow [2025-02-06 13:05:53,821 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 106 places, 117 transitions, 258 flow [2025-02-06 13:05:53,831 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-06 13:05:53,846 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=None, 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;@d67e7e8, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-06 13:05:53,847 INFO L334 AbstractCegarLoop]: Starting to check reachability of 62 error locations. [2025-02-06 13:05:53,851 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-02-06 13:05:53,851 INFO L124 PetriNetUnfolderBase]: 1/4 cut-off events. [2025-02-06 13:05:53,851 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-06 13:05:53,851 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-06 13:05:53,852 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1] [2025-02-06 13:05:53,852 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err0REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err1REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err2REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 59 more)] === [2025-02-06 13:05:53,856 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 13:05:53,857 INFO L85 PathProgramCache]: Analyzing trace with hash 1267283, now seen corresponding path program 1 times [2025-02-06 13:05:53,863 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 13:05:53,864 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1286938019] [2025-02-06 13:05:53,864 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 13:05:53,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 13:05:53,935 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 13:05:53,953 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 13:05:53,954 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 13:05:53,954 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 13:05:54,120 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:05:54,122 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 13:05:54,122 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1286938019] [2025-02-06 13:05:54,123 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1286938019] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 13:05:54,123 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 13:05:54,124 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-02-06 13:05:54,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [813947536] [2025-02-06 13:05:54,126 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 13:05:54,133 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-02-06 13:05:54,138 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 13:05:54,161 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-02-06 13:05:54,162 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-02-06 13:05:54,181 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 34 out of 122 [2025-02-06 13:05:54,184 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 106 places, 117 transitions, 258 flow. Second operand has 3 states, 3 states have (on average 35.0) internal successors, (105), 3 states have internal predecessors, (105), 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-02-06 13:05:54,184 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-06 13:05:54,184 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 34 of 122 [2025-02-06 13:05:54,185 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-06 13:06:04,311 INFO L124 PetriNetUnfolderBase]: 118506/156587 cut-off events. [2025-02-06 13:06:04,311 INFO L125 PetriNetUnfolderBase]: For 3212/3212 co-relation queries the response was YES. [2025-02-06 13:06:04,634 INFO L83 FinitePrefix]: Finished finitePrefix Result has 304611 conditions, 156587 events. 118506/156587 cut-off events. For 3212/3212 co-relation queries the response was YES. Maximal size of possible extension queue 12452. Compared 1174129 event pairs, 87208 based on Foata normal form. 1/82188 useless extension candidates. Maximal degree in co-relation 296868. Up to 144091 conditions per place. [2025-02-06 13:06:05,447 INFO L140 encePairwiseOnDemand]: 111/122 looper letters, 76 selfloop transitions, 2 changer transitions 0/107 dead transitions. [2025-02-06 13:06:05,448 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 102 places, 107 transitions, 394 flow [2025-02-06 13:06:05,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-02-06 13:06:05,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-02-06 13:06:05,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 189 transitions. [2025-02-06 13:06:05,460 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5163934426229508 [2025-02-06 13:06:05,462 INFO L175 Difference]: Start difference. First operand has 106 places, 117 transitions, 258 flow. Second operand 3 states and 189 transitions. [2025-02-06 13:06:05,463 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 102 places, 107 transitions, 394 flow [2025-02-06 13:06:06,016 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 94 places, 107 transitions, 378 flow, removed 0 selfloop flow, removed 8 redundant places. [2025-02-06 13:06:06,020 INFO L231 Difference]: Finished difference. Result has 94 places, 107 transitions, 226 flow [2025-02-06 13:06:06,022 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=122, PETRI_DIFFERENCE_MINUEND_FLOW=222, PETRI_DIFFERENCE_MINUEND_PLACES=92, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=107, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=105, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=226, PETRI_PLACES=94, PETRI_TRANSITIONS=107} [2025-02-06 13:06:06,027 INFO L279 CegarLoopForPetriNet]: 106 programPoint places, -12 predicate places. [2025-02-06 13:06:06,028 INFO L471 AbstractCegarLoop]: Abstraction has has 94 places, 107 transitions, 226 flow [2025-02-06 13:06:06,029 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 35.0) internal successors, (105), 3 states have internal predecessors, (105), 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-02-06 13:06:06,029 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-06 13:06:06,029 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1] [2025-02-06 13:06:06,029 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-02-06 13:06:06,029 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err0REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err1REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err2REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 59 more)] === [2025-02-06 13:06:06,030 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 13:06:06,032 INFO L85 PathProgramCache]: Analyzing trace with hash 1267284, now seen corresponding path program 1 times [2025-02-06 13:06:06,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 13:06:06,032 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [485358030] [2025-02-06 13:06:06,032 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 13:06:06,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 13:06:06,049 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 13:06:06,084 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 13:06:06,085 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 13:06:06,086 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 13:06:06,415 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:06:06,415 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 13:06:06,416 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [485358030] [2025-02-06 13:06:06,416 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [485358030] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 13:06:06,416 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 13:06:06,416 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-06 13:06:06,416 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1965534506] [2025-02-06 13:06:06,417 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 13:06:06,417 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-02-06 13:06:06,418 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 13:06:06,418 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-02-06 13:06:06,418 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-02-06 13:06:06,444 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 34 out of 122 [2025-02-06 13:06:06,445 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 94 places, 107 transitions, 226 flow. Second operand has 4 states, 4 states have (on average 34.75) internal successors, (139), 4 states have internal predecessors, (139), 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-02-06 13:06:06,445 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-06 13:06:06,445 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 34 of 122 [2025-02-06 13:06:06,445 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-06 13:06:14,834 INFO L124 PetriNetUnfolderBase]: 118510/156599 cut-off events. [2025-02-06 13:06:14,835 INFO L125 PetriNetUnfolderBase]: For 567/567 co-relation queries the response was YES. [2025-02-06 13:06:15,051 INFO L83 FinitePrefix]: Finished finitePrefix Result has 302271 conditions, 156599 events. 118510/156599 cut-off events. For 567/567 co-relation queries the response was YES. Maximal size of possible extension queue 12452. Compared 1174295 event pairs, 87208 based on Foata normal form. 0/82193 useless extension candidates. Maximal degree in co-relation 302207. Up to 144108 conditions per place. [2025-02-06 13:06:15,707 INFO L140 encePairwiseOnDemand]: 105/122 looper letters, 81 selfloop transitions, 13 changer transitions 0/119 dead transitions. [2025-02-06 13:06:15,707 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 97 places, 119 transitions, 440 flow [2025-02-06 13:06:15,708 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-02-06 13:06:15,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-02-06 13:06:15,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 234 transitions. [2025-02-06 13:06:15,709 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.47950819672131145 [2025-02-06 13:06:15,710 INFO L175 Difference]: Start difference. First operand has 94 places, 107 transitions, 226 flow. Second operand 4 states and 234 transitions. [2025-02-06 13:06:15,710 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 97 places, 119 transitions, 440 flow [2025-02-06 13:06:15,711 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 95 places, 119 transitions, 434 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-02-06 13:06:15,713 INFO L231 Difference]: Finished difference. Result has 98 places, 119 transitions, 330 flow [2025-02-06 13:06:15,713 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=122, PETRI_DIFFERENCE_MINUEND_FLOW=222, PETRI_DIFFERENCE_MINUEND_PLACES=92, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=107, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=94, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=330, PETRI_PLACES=98, PETRI_TRANSITIONS=119} [2025-02-06 13:06:15,714 INFO L279 CegarLoopForPetriNet]: 106 programPoint places, -8 predicate places. [2025-02-06 13:06:15,714 INFO L471 AbstractCegarLoop]: Abstraction has has 98 places, 119 transitions, 330 flow [2025-02-06 13:06:15,714 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 34.75) internal successors, (139), 4 states have internal predecessors, (139), 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-02-06 13:06:15,714 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-06 13:06:15,715 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1] [2025-02-06 13:06:15,715 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-06 13:06:15,715 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err0REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err1REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err2REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 59 more)] === [2025-02-06 13:06:15,715 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 13:06:15,716 INFO L85 PathProgramCache]: Analyzing trace with hash 1217898089, now seen corresponding path program 1 times [2025-02-06 13:06:15,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 13:06:15,716 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [422610311] [2025-02-06 13:06:15,717 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 13:06:15,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 13:06:15,727 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 13:06:15,748 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 13:06:15,751 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 13:06:15,752 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 13:06:16,029 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:06:16,030 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 13:06:16,030 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [422610311] [2025-02-06 13:06:16,030 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [422610311] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 13:06:16,030 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1948729762] [2025-02-06 13:06:16,030 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 13:06:16,030 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 13:06:16,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 13:06:16,034 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 13:06:16,035 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-02-06 13:06:16,110 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 13:06:16,131 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 13:06:16,131 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 13:06:16,131 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 13:06:16,139 INFO L256 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-02-06 13:06:16,147 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 13:06:16,215 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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-02-06 13:06:16,367 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:06:16,368 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 13:06:16,484 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:06:16,485 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1948729762] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 13:06:16,485 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 13:06:16,485 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 3, 3] total 9 [2025-02-06 13:06:16,485 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [131323138] [2025-02-06 13:06:16,485 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 13:06:16,486 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-02-06 13:06:16,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 13:06:16,486 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-02-06 13:06:16,488 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=76, Unknown=0, NotChecked=0, Total=110 [2025-02-06 13:06:16,571 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 34 out of 122 [2025-02-06 13:06:16,571 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 98 places, 119 transitions, 330 flow. Second operand has 11 states, 11 states have (on average 35.36363636363637) internal successors, (389), 11 states have internal predecessors, (389), 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-02-06 13:06:16,572 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-06 13:06:16,572 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 34 of 122 [2025-02-06 13:06:16,572 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-06 13:06:24,960 INFO L124 PetriNetUnfolderBase]: 118510/156595 cut-off events. [2025-02-06 13:06:24,961 INFO L125 PetriNetUnfolderBase]: For 570/570 co-relation queries the response was YES. [2025-02-06 13:06:25,228 INFO L83 FinitePrefix]: Finished finitePrefix Result has 302300 conditions, 156595 events. 118510/156595 cut-off events. For 570/570 co-relation queries the response was YES. Maximal size of possible extension queue 12452. Compared 1174151 event pairs, 87208 based on Foata normal form. 0/82198 useless extension candidates. Maximal degree in co-relation 302224. Up to 144092 conditions per place. [2025-02-06 13:06:25,936 INFO L140 encePairwiseOnDemand]: 105/122 looper letters, 68 selfloop transitions, 22 changer transitions 0/115 dead transitions. [2025-02-06 13:06:25,936 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 99 places, 115 transitions, 494 flow [2025-02-06 13:06:25,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-06 13:06:25,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-02-06 13:06:25,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 298 transitions. [2025-02-06 13:06:25,939 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.40710382513661203 [2025-02-06 13:06:25,939 INFO L175 Difference]: Start difference. First operand has 98 places, 119 transitions, 330 flow. Second operand 6 states and 298 transitions. [2025-02-06 13:06:25,939 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 99 places, 115 transitions, 494 flow [2025-02-06 13:06:25,940 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 99 places, 115 transitions, 494 flow, removed 0 selfloop flow, removed 0 redundant places. [2025-02-06 13:06:25,942 INFO L231 Difference]: Finished difference. Result has 99 places, 115 transitions, 358 flow [2025-02-06 13:06:25,943 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=122, PETRI_DIFFERENCE_MINUEND_FLOW=314, PETRI_DIFFERENCE_MINUEND_PLACES=94, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=115, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=22, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=93, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=358, PETRI_PLACES=99, PETRI_TRANSITIONS=115} [2025-02-06 13:06:25,943 INFO L279 CegarLoopForPetriNet]: 106 programPoint places, -7 predicate places. [2025-02-06 13:06:25,943 INFO L471 AbstractCegarLoop]: Abstraction has has 99 places, 115 transitions, 358 flow [2025-02-06 13:06:25,944 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 35.36363636363637) internal successors, (389), 11 states have internal predecessors, (389), 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-02-06 13:06:25,944 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-06 13:06:25,944 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 13:06:25,953 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-02-06 13:06:26,145 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 13:06:26,145 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting thread1Err1REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err0REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err1REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err2REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 59 more)] === [2025-02-06 13:06:26,145 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 13:06:26,146 INFO L85 PathProgramCache]: Analyzing trace with hash -1955577276, now seen corresponding path program 1 times [2025-02-06 13:06:26,146 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 13:06:26,146 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1816044187] [2025-02-06 13:06:26,146 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 13:06:26,146 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 13:06:26,159 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 10 statements into 1 equivalence classes. [2025-02-06 13:06:26,177 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 10 of 10 statements. [2025-02-06 13:06:26,177 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 13:06:26,177 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 13:06:26,290 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 13:06:26,290 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 13:06:26,290 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1816044187] [2025-02-06 13:06:26,290 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1816044187] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 13:06:26,290 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 13:06:26,290 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-02-06 13:06:26,290 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1112757691] [2025-02-06 13:06:26,290 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 13:06:26,291 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-02-06 13:06:26,291 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 13:06:26,292 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-02-06 13:06:26,292 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-02-06 13:06:26,293 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 38 out of 122 [2025-02-06 13:06:26,293 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 99 places, 115 transitions, 358 flow. Second operand has 3 states, 3 states have (on average 41.0) internal successors, (123), 3 states have internal predecessors, (123), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 13:06:26,293 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-06 13:06:26,294 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 38 of 122 [2025-02-06 13:06:26,294 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand