./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/weaver/chl-nzb-file-subst.wvr.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 48c9605d 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/chl-nzb-file-subst.wvr.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 47976145f2a7f206dd7d2e7a0ffeac879f94f33f7a5b87161ebd997173567eb0 --- Real Ultimate output --- This is Ultimate 0.3.0-?-48c9605-m [2025-02-08 08:35:11,028 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-08 08:35:11,065 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2025-02-08 08:35:11,072 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-08 08:35:11,073 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-08 08:35:11,086 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-08 08:35:11,086 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-08 08:35:11,086 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-08 08:35:11,087 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-08 08:35:11,087 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-08 08:35:11,087 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-08 08:35:11,087 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-08 08:35:11,087 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-08 08:35:11,087 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-08 08:35:11,087 INFO L153 SettingsManager]: * Use SBE=true [2025-02-08 08:35:11,087 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Bitprecise bitfields=true [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-08 08:35:11,088 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-08 08:35:11,089 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 08:35:11,089 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-08 08:35:11,089 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-08 08:35:11,090 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-08 08:35:11,090 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-08 08:35:11,090 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-08 08:35:11,090 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 -> 47976145f2a7f206dd7d2e7a0ffeac879f94f33f7a5b87161ebd997173567eb0 [2025-02-08 08:35:11,330 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-08 08:35:11,335 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-08 08:35:11,337 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-08 08:35:11,337 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-08 08:35:11,337 INFO L274 PluginConnector]: CDTParser initialized [2025-02-08 08:35:11,338 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/weaver/chl-nzb-file-subst.wvr.c [2025-02-08 08:35:12,514 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/f48710923/ac5e5890f7e94207b1d425142abd7c40/FLAG883c2f59e [2025-02-08 08:35:12,777 INFO L384 CDTParser]: Found 1 translation units. [2025-02-08 08:35:12,781 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/weaver/chl-nzb-file-subst.wvr.c [2025-02-08 08:35:12,790 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/f48710923/ac5e5890f7e94207b1d425142abd7c40/FLAG883c2f59e [2025-02-08 08:35:12,802 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/f48710923/ac5e5890f7e94207b1d425142abd7c40 [2025-02-08 08:35:12,807 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-08 08:35:12,809 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-08 08:35:12,810 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-08 08:35:12,810 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-08 08:35:12,813 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-08 08:35:12,814 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 08:35:12" (1/1) ... [2025-02-08 08:35:12,814 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@60d3d26c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:12, skipping insertion in model container [2025-02-08 08:35:12,815 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 08:35:12" (1/1) ... [2025-02-08 08:35:12,833 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-08 08:35:12,985 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-08 08:35:12,990 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 08:35:12,999 INFO L200 MainTranslator]: Completed pre-run [2025-02-08 08:35:13,029 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 08:35:13,039 INFO L204 MainTranslator]: Completed translation [2025-02-08 08:35:13,039 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13 WrapperNode [2025-02-08 08:35:13,039 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-08 08:35:13,040 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-08 08:35:13,040 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-08 08:35:13,040 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-08 08:35:13,046 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,053 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,078 INFO L138 Inliner]: procedures = 25, calls = 62, calls flagged for inlining = 29, calls inlined = 43, statements flattened = 593 [2025-02-08 08:35:13,078 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-08 08:35:13,079 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-08 08:35:13,079 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-08 08:35:13,079 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-08 08:35:13,085 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,085 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,089 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,118 INFO L175 MemorySlicer]: Split 29 memory accesses to 2 slices as follows [2, 27]. 93 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0]. The 3 writes are split as follows [0, 3]. [2025-02-08 08:35:13,118 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,119 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,136 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,139 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,140 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,142 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,145 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-08 08:35:13,145 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-08 08:35:13,145 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-08 08:35:13,146 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-08 08:35:13,146 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (1/1) ... [2025-02-08 08:35:13,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 08:35:13,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-08 08:35:13,173 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-08 08:35:13,184 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-08 08:35:13,200 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2025-02-08 08:35:13,201 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2025-02-08 08:35:13,201 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2025-02-08 08:35:13,201 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-02-08 08:35:13,201 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-02-08 08:35:13,202 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-08 08:35:13,202 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-08 08:35:13,202 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-02-08 08:35:13,202 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-02-08 08:35:13,203 WARN L227 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-02-08 08:35:13,287 INFO L257 CfgBuilder]: Building ICFG [2025-02-08 08:35:13,288 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L69-5: #t~ite21#1 := #t~ret20#1; [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L69-6: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret20#1 && #t~ret20#1 <= 2147483647; [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L69-7: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L69-8: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L69-9: #t~ret20#1 := minus_#res#1; [2025-02-08 08:35:13,533 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L65-3: #t~ite19#1 := #t~ret18#1; [2025-02-08 08:35:13,534 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L65-4: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret18#1 && #t~ret18#1 <= 2147483647; [2025-02-08 08:35:13,534 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L65-5: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,534 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L65-6: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,534 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L65-7: #t~ret18#1 := minus_#res#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L96-5: #t~ite43#1 := #t~ret42#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L96-6: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret42#1 && #t~ret42#1 <= 2147483647; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L96-7: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L96-8: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L96-9: #t~ret42#1 := minus_#res#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L92-3: #t~ite41#1 := #t~ret40#1; [2025-02-08 08:35:13,730 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L92-4: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret40#1 && #t~ret40#1 <= 2147483647; [2025-02-08 08:35:13,731 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L92-5: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,731 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L92-6: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,731 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L92-7: #t~ret40#1 := minus_#res#1; [2025-02-08 08:35:13,867 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L119-3: #t~ite63#1 := #t~ret62#1; [2025-02-08 08:35:13,867 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L119-4: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret62#1 && #t~ret62#1 <= 2147483647; [2025-02-08 08:35:13,867 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L119-5: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,867 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L119-6: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,867 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L119-7: #t~ret62#1 := minus_#res#1; [2025-02-08 08:35:13,868 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L123-5: #t~ite65#1 := #t~ret64#1; [2025-02-08 08:35:13,868 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L123-6: assume { :end_inline_minus } true;assume -2147483648 <= #t~ret64#1 && #t~ret64#1 <= 2147483647; [2025-02-08 08:35:13,868 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L123-7: havoc minus_#in~a#1, minus_#in~b#1; [2025-02-08 08:35:13,868 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L123-8: havoc minus_~a#1, minus_~b#1; [2025-02-08 08:35:13,868 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L123-9: #t~ret64#1 := minus_#res#1; [2025-02-08 08:35:14,047 INFO L304 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-02-08 08:35:14,048 INFO L308 CfgBuilder]: Performing block encoding [2025-02-08 08:35:14,356 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-08 08:35:14,357 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-08 08:35:14,357 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 08:35:14 BoogieIcfgContainer [2025-02-08 08:35:14,357 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-08 08:35:14,358 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-08 08:35:14,358 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-08 08:35:14,362 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-08 08:35:14,362 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.02 08:35:12" (1/3) ... [2025-02-08 08:35:14,362 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@ba44564 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 08:35:14, skipping insertion in model container [2025-02-08 08:35:14,362 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 08:35:13" (2/3) ... [2025-02-08 08:35:14,363 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@ba44564 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 08:35:14, skipping insertion in model container [2025-02-08 08:35:14,363 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 08:35:14" (3/3) ... [2025-02-08 08:35:14,363 INFO L128 eAbstractionObserver]: Analyzing ICFG chl-nzb-file-subst.wvr.c [2025-02-08 08:35:14,374 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-08 08:35:14,376 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG chl-nzb-file-subst.wvr.c that has 4 procedures, 175 locations, 1 initial locations, 6 loop locations, and 56 error locations. [2025-02-08 08:35:14,376 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-02-08 08:35:14,511 INFO L143 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2025-02-08 08:35:14,545 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 184 places, 207 transitions, 435 flow [2025-02-08 08:35:14,607 INFO L124 PetriNetUnfolderBase]: 33/204 cut-off events. [2025-02-08 08:35:14,611 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2025-02-08 08:35:14,622 INFO L83 FinitePrefix]: Finished finitePrefix Result has 217 conditions, 204 events. 33/204 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 13. Compared 848 event pairs, 0 based on Foata normal form. 0/109 useless extension candidates. Maximal degree in co-relation 183. Up to 2 conditions per place. [2025-02-08 08:35:14,622 INFO L82 GeneralOperation]: Start removeDead. Operand has 184 places, 207 transitions, 435 flow [2025-02-08 08:35:14,630 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 180 places, 203 transitions, 424 flow [2025-02-08 08:35:14,635 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-08 08:35:14,645 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;@61cc0760, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-08 08:35:14,645 INFO L334 AbstractCegarLoop]: Starting to check reachability of 107 error locations. [2025-02-08 08:35:14,652 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-02-08 08:35:14,652 INFO L124 PetriNetUnfolderBase]: 1/4 cut-off events. [2025-02-08 08:35:14,652 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 08:35:14,652 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 08:35:14,653 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1] [2025-02-08 08:35:14,653 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err14REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err15REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err12REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 104 more)] === [2025-02-08 08:35:14,656 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 08:35:14,657 INFO L85 PathProgramCache]: Analyzing trace with hash 1666446, now seen corresponding path program 1 times [2025-02-08 08:35:14,661 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 08:35:14,662 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1573883484] [2025-02-08 08:35:14,662 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 08:35:14,662 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 08:35:14,740 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-08 08:35:14,773 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-08 08:35:14,774 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 08:35:14,774 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:14,928 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-08 08:35:14,931 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 08:35:14,931 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1573883484] [2025-02-08 08:35:14,931 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1573883484] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 08:35:14,931 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 08:35:14,932 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-02-08 08:35:14,933 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1754707899] [2025-02-08 08:35:14,933 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 08:35:14,939 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-02-08 08:35:14,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 08:35:14,959 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-02-08 08:35:14,960 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-02-08 08:35:15,023 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 95 out of 207 [2025-02-08 08:35:15,026 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 180 places, 203 transitions, 424 flow. Second operand has 3 states, 3 states have (on average 96.0) internal successors, (288), 3 states have internal predecessors, (288), 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-08 08:35:15,027 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 08:35:15,027 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 95 of 207 [2025-02-08 08:35:15,029 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 08:35:25,380 INFO L124 PetriNetUnfolderBase]: 92555/165117 cut-off events. [2025-02-08 08:35:25,380 INFO L125 PetriNetUnfolderBase]: For 1916/1916 co-relation queries the response was YES. [2025-02-08 08:35:25,623 INFO L83 FinitePrefix]: Finished finitePrefix Result has 285771 conditions, 165117 events. 92555/165117 cut-off events. For 1916/1916 co-relation queries the response was YES. Maximal size of possible extension queue 4488. Compared 1700160 event pairs, 58269 based on Foata normal form. 1/128011 useless extension candidates. Maximal degree in co-relation 280724. Up to 119155 conditions per place. [2025-02-08 08:35:26,224 INFO L140 encePairwiseOnDemand]: 198/207 looper letters, 102 selfloop transitions, 2 changer transitions 0/195 dead transitions. [2025-02-08 08:35:26,224 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 177 places, 195 transitions, 616 flow [2025-02-08 08:35:26,225 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-02-08 08:35:26,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-02-08 08:35:26,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 396 transitions. [2025-02-08 08:35:26,233 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6376811594202898 [2025-02-08 08:35:26,234 INFO L175 Difference]: Start difference. First operand has 180 places, 203 transitions, 424 flow. Second operand 3 states and 396 transitions. [2025-02-08 08:35:26,234 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 177 places, 195 transitions, 616 flow [2025-02-08 08:35:26,265 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 171 places, 195 transitions, 604 flow, removed 0 selfloop flow, removed 6 redundant places. [2025-02-08 08:35:26,268 INFO L231 Difference]: Finished difference. Result has 171 places, 195 transitions, 400 flow [2025-02-08 08:35:26,269 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=207, PETRI_DIFFERENCE_MINUEND_FLOW=396, PETRI_DIFFERENCE_MINUEND_PLACES=169, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=195, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=193, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=400, PETRI_PLACES=171, PETRI_TRANSITIONS=195} [2025-02-08 08:35:26,271 INFO L279 CegarLoopForPetriNet]: 180 programPoint places, -9 predicate places. [2025-02-08 08:35:26,272 INFO L471 AbstractCegarLoop]: Abstraction has has 171 places, 195 transitions, 400 flow [2025-02-08 08:35:26,272 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 96.0) internal successors, (288), 3 states have internal predecessors, (288), 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-08 08:35:26,272 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 08:35:26,272 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1] [2025-02-08 08:35:26,272 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-02-08 08:35:26,272 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err14REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err15REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err12REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 104 more)] === [2025-02-08 08:35:26,273 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 08:35:26,273 INFO L85 PathProgramCache]: Analyzing trace with hash 1666447, now seen corresponding path program 1 times [2025-02-08 08:35:26,273 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 08:35:26,273 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1143321848] [2025-02-08 08:35:26,273 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 08:35:26,273 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 08:35:26,281 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-08 08:35:26,302 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-08 08:35:26,303 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 08:35:26,303 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:26,481 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-08 08:35:26,481 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 08:35:26,481 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1143321848] [2025-02-08 08:35:26,481 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1143321848] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 08:35:26,481 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 08:35:26,481 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-08 08:35:26,481 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1517143385] [2025-02-08 08:35:26,481 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 08:35:26,482 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-02-08 08:35:26,482 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 08:35:26,483 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-02-08 08:35:26,483 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2025-02-08 08:35:26,566 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 95 out of 207 [2025-02-08 08:35:26,566 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 171 places, 195 transitions, 400 flow. Second operand has 4 states, 4 states have (on average 95.75) internal successors, (383), 4 states have internal predecessors, (383), 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-08 08:35:26,567 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 08:35:26,567 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 95 of 207 [2025-02-08 08:35:26,567 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 08:35:34,787 INFO L124 PetriNetUnfolderBase]: 92558/165126 cut-off events. [2025-02-08 08:35:34,788 INFO L125 PetriNetUnfolderBase]: For 466/466 co-relation queries the response was YES. [2025-02-08 08:35:34,976 INFO L83 FinitePrefix]: Finished finitePrefix Result has 284802 conditions, 165126 events. 92558/165126 cut-off events. For 466/466 co-relation queries the response was YES. Maximal size of possible extension queue 4489. Compared 1700481 event pairs, 58269 based on Foata normal form. 0/128015 useless extension candidates. Maximal degree in co-relation 284752. Up to 119168 conditions per place. [2025-02-08 08:35:35,494 INFO L140 encePairwiseOnDemand]: 197/207 looper letters, 109 selfloop transitions, 7 changer transitions 0/204 dead transitions. [2025-02-08 08:35:35,494 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 173 places, 204 transitions, 652 flow [2025-02-08 08:35:35,495 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-02-08 08:35:35,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-02-08 08:35:35,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 404 transitions. [2025-02-08 08:35:35,500 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6505636070853462 [2025-02-08 08:35:35,500 INFO L175 Difference]: Start difference. First operand has 171 places, 195 transitions, 400 flow. Second operand 3 states and 404 transitions. [2025-02-08 08:35:35,500 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 173 places, 204 transitions, 652 flow [2025-02-08 08:35:35,502 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 171 places, 204 transitions, 646 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-02-08 08:35:35,507 INFO L231 Difference]: Finished difference. Result has 173 places, 201 transitions, 454 flow [2025-02-08 08:35:35,509 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=207, PETRI_DIFFERENCE_MINUEND_FLOW=396, PETRI_DIFFERENCE_MINUEND_PLACES=169, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=195, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=188, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=454, PETRI_PLACES=173, PETRI_TRANSITIONS=201} [2025-02-08 08:35:35,509 INFO L279 CegarLoopForPetriNet]: 180 programPoint places, -7 predicate places. [2025-02-08 08:35:35,509 INFO L471 AbstractCegarLoop]: Abstraction has has 173 places, 201 transitions, 454 flow [2025-02-08 08:35:35,510 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 95.75) internal successors, (383), 4 states have internal predecessors, (383), 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-08 08:35:35,510 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 08:35:35,510 INFO L206 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1] [2025-02-08 08:35:35,510 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-08 08:35:35,510 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err14REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err15REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err12REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 104 more)] === [2025-02-08 08:35:35,510 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 08:35:35,510 INFO L85 PathProgramCache]: Analyzing trace with hash 1601503690, now seen corresponding path program 1 times [2025-02-08 08:35:35,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 08:35:35,511 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1111340188] [2025-02-08 08:35:35,511 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 08:35:35,511 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 08:35:35,523 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-08 08:35:35,539 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-08 08:35:35,540 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 08:35:35,540 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:35,793 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-08 08:35:35,794 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 08:35:35,794 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1111340188] [2025-02-08 08:35:35,794 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1111340188] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-08 08:35:35,794 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1319312869] [2025-02-08 08:35:35,794 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 08:35:35,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-08 08:35:35,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-08 08:35:35,796 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-08 08:35:35,945 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-08 08:35:36,007 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-08 08:35:36,019 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-08 08:35:36,019 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 08:35:36,019 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:36,021 INFO L256 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 15 conjuncts are in the unsatisfiable core [2025-02-08 08:35:36,023 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-08 08:35:36,054 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 6 treesize of output 5 [2025-02-08 08:35:36,095 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-08 08:35:36,095 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-08 08:35:36,146 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-08 08:35:36,146 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1319312869] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-08 08:35:36,146 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-08 08:35:36,146 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [3, 2, 2] total 7 [2025-02-08 08:35:36,147 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [798010041] [2025-02-08 08:35:36,147 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-08 08:35:36,147 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2025-02-08 08:35:36,147 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 08:35:36,148 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-02-08 08:35:36,148 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2025-02-08 08:35:36,429 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 95 out of 207 [2025-02-08 08:35:36,430 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 173 places, 201 transitions, 454 flow. Second operand has 9 states, 9 states have (on average 96.66666666666667) internal successors, (870), 9 states have internal predecessors, (870), 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-08 08:35:36,430 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 08:35:36,431 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 95 of 207 [2025-02-08 08:35:36,431 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 08:35:44,451 INFO L124 PetriNetUnfolderBase]: 92561/165147 cut-off events. [2025-02-08 08:35:44,451 INFO L125 PetriNetUnfolderBase]: For 469/469 co-relation queries the response was YES. [2025-02-08 08:35:44,705 INFO L83 FinitePrefix]: Finished finitePrefix Result has 284880 conditions, 165147 events. 92561/165147 cut-off events. For 469/469 co-relation queries the response was YES. Maximal size of possible extension queue 4487. Compared 1701207 event pairs, 58269 based on Foata normal form. 6/128046 useless extension candidates. Maximal degree in co-relation 284784. Up to 119169 conditions per place. [2025-02-08 08:35:45,618 INFO L140 encePairwiseOnDemand]: 197/207 looper letters, 116 selfloop transitions, 21 changer transitions 0/225 dead transitions. [2025-02-08 08:35:45,619 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 178 places, 225 transitions, 806 flow [2025-02-08 08:35:45,619 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-08 08:35:45,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-02-08 08:35:45,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 722 transitions. [2025-02-08 08:35:45,622 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5813204508856683 [2025-02-08 08:35:45,622 INFO L175 Difference]: Start difference. First operand has 173 places, 201 transitions, 454 flow. Second operand 6 states and 722 transitions. [2025-02-08 08:35:45,622 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 178 places, 225 transitions, 806 flow [2025-02-08 08:35:45,625 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 176 places, 225 transitions, 786 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-02-08 08:35:45,628 INFO L231 Difference]: Finished difference. Result has 179 places, 213 transitions, 580 flow [2025-02-08 08:35:45,629 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=207, PETRI_DIFFERENCE_MINUEND_FLOW=428, PETRI_DIFFERENCE_MINUEND_PLACES=171, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=198, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=10, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=188, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=580, PETRI_PLACES=179, PETRI_TRANSITIONS=213} [2025-02-08 08:35:45,630 INFO L279 CegarLoopForPetriNet]: 180 programPoint places, -1 predicate places. [2025-02-08 08:35:45,630 INFO L471 AbstractCegarLoop]: Abstraction has has 179 places, 213 transitions, 580 flow [2025-02-08 08:35:45,630 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 96.66666666666667) internal successors, (870), 9 states have internal predecessors, (870), 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-08 08:35:45,631 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 08:35:45,631 INFO L206 CegarLoopForPetriNet]: trace histogram [5, 4, 1, 1] [2025-02-08 08:35:45,641 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-08 08:35:45,835 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-08 08:35:45,835 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATIONMEMORY_DEREFERENCE === [thread1Err14REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err15REQUIRES_VIOLATIONMEMORY_DEREFERENCE, thread1Err12REQUIRES_VIOLATIONMEMORY_DEREFERENCE (and 104 more)] === [2025-02-08 08:35:45,835 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 08:35:45,836 INFO L85 PathProgramCache]: Analyzing trace with hash 861515259, now seen corresponding path program 2 times [2025-02-08 08:35:45,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 08:35:45,836 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2024386345] [2025-02-08 08:35:45,836 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-08 08:35:45,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 08:35:45,845 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 11 statements into 2 equivalence classes. [2025-02-08 08:35:45,870 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 11 of 11 statements. [2025-02-08 08:35:45,870 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-08 08:35:45,870 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:46,089 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 9 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 08:35:46,089 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 08:35:46,090 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2024386345] [2025-02-08 08:35:46,090 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2024386345] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-08 08:35:46,090 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [286149640] [2025-02-08 08:35:46,090 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-08 08:35:46,090 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-08 08:35:46,090 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-08 08:35:46,092 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-08 08:35:46,094 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-02-08 08:35:46,148 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 11 statements into 2 equivalence classes. [2025-02-08 08:35:46,164 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 11 of 11 statements. [2025-02-08 08:35:46,164 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-08 08:35:46,164 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 08:35:46,165 INFO L256 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 19 conjuncts are in the unsatisfiable core [2025-02-08 08:35:46,166 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-08 08:35:46,178 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-08 08:35:46,268 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 08:35:46,268 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-08 08:35:46,374 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 08:35:46,375 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [286149640] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-08 08:35:46,375 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-08 08:35:46,375 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5, 5] total 16 [2025-02-08 08:35:46,375 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1209866015] [2025-02-08 08:35:46,375 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-08 08:35:46,375 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2025-02-08 08:35:46,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 08:35:46,376 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2025-02-08 08:35:46,376 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=250, Unknown=0, NotChecked=0, Total=306 [2025-02-08 08:35:47,548 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 95 out of 207 [2025-02-08 08:35:47,549 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 179 places, 213 transitions, 580 flow. Second operand has 18 states, 18 states have (on average 96.83333333333333) internal successors, (1743), 18 states have internal predecessors, (1743), 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-08 08:35:47,550 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 08:35:47,550 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 95 of 207 [2025-02-08 08:35:47,550 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand