./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/weaver/popl20-simple-array-sum.wvr.c --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --validate ./goblint.2024-05-21_14-57-05.files/protection/popl20-simple-array-sum.wvr.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version bcb38a6f Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/weaver/popl20-simple-array-sum.wvr.c ./goblint.2024-05-21_14-57-05.files/protection/popl20-simple-array-sum.wvr.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-bcb38a6-m [2024-06-04 14:30:48,908 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-04 14:30:48,958 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-04 14:30:48,968 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-04 14:30:48,969 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-04 14:30:49,026 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-04 14:30:49,026 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-04 14:30:49,026 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-04 14:30:49,027 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-04 14:30:49,027 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-04 14:30:49,027 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-04 14:30:49,027 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-04 14:30:49,028 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-04 14:30:49,028 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-04 14:30:49,028 INFO L153 SettingsManager]: * Use SBE=true [2024-06-04 14:30:49,028 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-04 14:30:49,029 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-04 14:30:49,029 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-04 14:30:49,029 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-04 14:30:49,029 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-04 14:30:49,029 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-04 14:30:49,030 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-04 14:30:49,030 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-04 14:30:49,031 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-04 14:30:49,035 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-04 14:30:49,035 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-04 14:30:49,036 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-04 14:30:49,036 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-04 14:30:49,036 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-04 14:30:49,036 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-04 14:30:49,037 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-04 14:30:49,037 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-04 14:30:49,037 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-04 14:30:49,037 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-04 14:30:49,038 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-04 14:30:49,038 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-04 14:30:49,038 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-04 14:30:49,038 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-04 14:30:49,039 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-04 14:30:49,039 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-04 14:30:49,039 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-04 14:30:49,042 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-04 14:30:49,042 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-04 14:30:49,043 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Check unreachability of reach_error function -> false [2024-06-04 14:30:49,272 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-04 14:30:49,303 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-04 14:30:49,305 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-04 14:30:49,306 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-04 14:30:49,307 INFO L274 PluginConnector]: CDTParser initialized [2024-06-04 14:30:49,307 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/weaver/popl20-simple-array-sum.wvr.c [2024-06-04 14:30:50,441 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-04 14:30:50,620 INFO L384 CDTParser]: Found 1 translation units. [2024-06-04 14:30:50,621 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-simple-array-sum.wvr.c [2024-06-04 14:30:50,627 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bed3d7eac/a936c316071745048adfdc5a7f15287e/FLAGeb9d61fe3 [2024-06-04 14:30:50,651 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bed3d7eac/a936c316071745048adfdc5a7f15287e [2024-06-04 14:30:50,653 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-04 14:30:50,654 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-04 14:30:50,654 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-05-21_14-57-05.files/protection/popl20-simple-array-sum.wvr.yml/witness.yml [2024-06-04 14:30:50,736 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-04 14:30:50,737 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-04 14:30:50,739 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-04 14:30:50,740 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-04 14:30:50,743 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-04 14:30:50,744 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.06 02:30:50" (1/2) ... [2024-06-04 14:30:50,744 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2da514bd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.06 02:30:50, skipping insertion in model container [2024-06-04 14:30:50,745 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.06 02:30:50" (1/2) ... [2024-06-04 14:30:50,746 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6251ce67 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.06 02:30:50, skipping insertion in model container [2024-06-04 14:30:50,747 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 04.06 02:30:50" (2/2) ... [2024-06-04 14:30:50,747 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2da514bd and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:50, skipping insertion in model container [2024-06-04 14:30:50,748 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 04.06 02:30:50" (2/2) ... [2024-06-04 14:30:50,748 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-04 14:30:50,762 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-04 14:30:50,763 INFO L97 edCorrectnessWitness]: Location invariant before [L97-L97] ! multithreaded || 0 <= p [2024-06-04 14:30:50,763 INFO L97 edCorrectnessWitness]: Location invariant before [L98-L98] ! multithreaded || 0 <= p [2024-06-04 14:30:50,764 INFO L97 edCorrectnessWitness]: Location invariant before [L96-L96] ! multithreaded || 0 <= p [2024-06-04 14:30:50,764 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-04 14:30:50,764 INFO L106 edCorrectnessWitness]: ghost_update [L95-L95] multithreaded = 1; [2024-06-04 14:30:50,780 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-04 14:30:50,932 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-04 14:30:50,943 INFO L202 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-06-04 14:30:50,990 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-04 14:30:51,002 INFO L206 MainTranslator]: Completed translation [2024-06-04 14:30:51,004 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51 WrapperNode [2024-06-04 14:30:51,004 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-04 14:30:51,005 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-04 14:30:51,005 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-04 14:30:51,005 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-04 14:30:51,010 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,017 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,033 INFO L138 Inliner]: procedures = 25, calls = 29, calls flagged for inlining = 8, calls inlined = 10, statements flattened = 117 [2024-06-04 14:30:51,034 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-04 14:30:51,034 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-04 14:30:51,034 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-04 14:30:51,034 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-04 14:30:51,045 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,045 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,047 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,071 INFO L175 MemorySlicer]: Split 8 memory accesses to 2 slices as follows [2, 6]. 75 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]. [2024-06-04 14:30:51,072 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,072 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,079 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,082 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,083 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,085 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,087 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-04 14:30:51,088 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-04 14:30:51,088 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-04 14:30:51,088 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-04 14:30:51,089 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (1/1) ... [2024-06-04 14:30:51,093 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-04 14:30:51,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-04 14:30:51,112 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-06-04 14:30:51,116 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-06-04 14:30:51,153 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-04 14:30:51,154 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-06-04 14:30:51,154 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-06-04 14:30:51,154 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-06-04 14:30:51,154 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-06-04 14:30:51,154 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2024-06-04 14:30:51,154 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2024-06-04 14:30:51,154 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-06-04 14:30:51,155 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-06-04 14:30:51,168 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-04 14:30:51,169 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-04 14:30:51,169 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-06-04 14:30:51,169 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-06-04 14:30:51,170 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-04 14:30:51,314 INFO L244 CfgBuilder]: Building ICFG [2024-06-04 14:30:51,316 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-04 14:30:51,570 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-04 14:30:51,570 INFO L293 CfgBuilder]: Performing block encoding [2024-06-04 14:30:51,707 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-04 14:30:51,707 INFO L320 CfgBuilder]: Removed 5 assume(true) statements. [2024-06-04 14:30:51,707 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.06 02:30:51 BoogieIcfgContainer [2024-06-04 14:30:51,708 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-04 14:30:51,710 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-04 14:30:51,710 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-04 14:30:51,712 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-04 14:30:51,712 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.06 02:30:50" (1/4) ... [2024-06-04 14:30:51,713 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51643e79 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.06 02:30:51, skipping insertion in model container [2024-06-04 14:30:51,713 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 04.06 02:30:50" (2/4) ... [2024-06-04 14:30:51,714 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51643e79 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 04.06 02:30:51, skipping insertion in model container [2024-06-04 14:30:51,714 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 04.06 02:30:51" (3/4) ... [2024-06-04 14:30:51,715 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51643e79 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 04.06 02:30:51, skipping insertion in model container [2024-06-04 14:30:51,715 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.06 02:30:51" (4/4) ... [2024-06-04 14:30:51,716 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-simple-array-sum.wvr.c [2024-06-04 14:30:51,728 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-04 14:30:51,729 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 3 error locations. [2024-06-04 14:30:51,729 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-04 14:30:51,774 INFO L144 ThreadInstanceAdder]: Constructed 3 joinOtherThreadTransitions. [2024-06-04 14:30:51,805 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 48 places, 44 transitions, 109 flow [2024-06-04 14:30:51,841 INFO L124 PetriNetUnfolderBase]: 6/41 cut-off events. [2024-06-04 14:30:51,842 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-06-04 14:30:51,845 INFO L83 FinitePrefix]: Finished finitePrefix Result has 54 conditions, 41 events. 6/41 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 54 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 33. Up to 2 conditions per place. [2024-06-04 14:30:51,845 INFO L82 GeneralOperation]: Start removeDead. Operand has 48 places, 44 transitions, 109 flow [2024-06-04 14:30:51,849 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 43 places, 39 transitions, 93 flow [2024-06-04 14:30:51,864 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-04 14:30:51,871 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@6281ac9e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-04 14:30:51,872 INFO L358 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2024-06-04 14:30:51,878 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-04 14:30:51,879 INFO L124 PetriNetUnfolderBase]: 3/11 cut-off events. [2024-06-04 14:30:51,879 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-04 14:30:51,879 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-04 14:30:51,880 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-06-04 14:30:51,880 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 3 more)] === [2024-06-04 14:30:51,884 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-04 14:30:51,885 INFO L85 PathProgramCache]: Analyzing trace with hash 696382408, now seen corresponding path program 1 times [2024-06-04 14:30:51,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-04 14:30:51,893 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [111624332] [2024-06-04 14:30:51,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-04 14:30:51,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-04 14:30:52,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-04 14:30:52,130 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-04 14:30:52,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-04 14:30:52,131 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [111624332] [2024-06-04 14:30:52,132 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [111624332] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-04 14:30:52,132 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-04 14:30:52,132 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-04 14:30:52,133 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1887009847] [2024-06-04 14:30:52,135 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-04 14:30:52,155 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-04 14:30:52,159 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-04 14:30:52,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-04 14:30:52,185 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-04 14:30:52,201 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 44 [2024-06-04 14:30:52,203 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 39 transitions, 93 flow. Second operand has 3 states, 3 states have (on average 12.666666666666666) internal successors, (38), 3 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:52,203 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-04 14:30:52,203 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 44 [2024-06-04 14:30:52,205 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-04 14:30:52,445 INFO L124 PetriNetUnfolderBase]: 996/1563 cut-off events. [2024-06-04 14:30:52,446 INFO L125 PetriNetUnfolderBase]: For 149/149 co-relation queries the response was YES. [2024-06-04 14:30:52,452 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3066 conditions, 1563 events. 996/1563 cut-off events. For 149/149 co-relation queries the response was YES. Maximal size of possible extension queue 80. Compared 7046 event pairs, 333 based on Foata normal form. 60/1432 useless extension candidates. Maximal degree in co-relation 2724. Up to 875 conditions per place. [2024-06-04 14:30:52,460 INFO L140 encePairwiseOnDemand]: 39/44 looper letters, 44 selfloop transitions, 2 changer transitions 1/54 dead transitions. [2024-06-04 14:30:52,461 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 54 transitions, 226 flow [2024-06-04 14:30:52,462 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-04 14:30:52,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-04 14:30:52,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 80 transitions. [2024-06-04 14:30:52,472 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6060606060606061 [2024-06-04 14:30:52,473 INFO L175 Difference]: Start difference. First operand has 43 places, 39 transitions, 93 flow. Second operand 3 states and 80 transitions. [2024-06-04 14:30:52,474 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 54 transitions, 226 flow [2024-06-04 14:30:52,478 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 54 transitions, 212 flow, removed 0 selfloop flow, removed 5 redundant places. [2024-06-04 14:30:52,482 INFO L231 Difference]: Finished difference. Result has 40 places, 39 transitions, 96 flow [2024-06-04 14:30:52,483 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=82, PETRI_DIFFERENCE_MINUEND_PLACES=37, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=96, PETRI_PLACES=40, PETRI_TRANSITIONS=39} [2024-06-04 14:30:52,486 INFO L281 CegarLoopForPetriNet]: 43 programPoint places, -3 predicate places. [2024-06-04 14:30:52,486 INFO L495 AbstractCegarLoop]: Abstraction has has 40 places, 39 transitions, 96 flow [2024-06-04 14:30:52,486 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 12.666666666666666) internal successors, (38), 3 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:52,487 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-04 14:30:52,487 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-04 14:30:52,487 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-04 14:30:52,487 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 3 more)] === [2024-06-04 14:30:52,488 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-04 14:30:52,488 INFO L85 PathProgramCache]: Analyzing trace with hash -753419653, now seen corresponding path program 1 times [2024-06-04 14:30:52,489 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-04 14:30:52,489 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [895573601] [2024-06-04 14:30:52,489 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-04 14:30:52,489 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-04 14:30:52,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-04 14:30:52,605 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-04 14:30:52,606 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-04 14:30:52,606 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [895573601] [2024-06-04 14:30:52,606 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [895573601] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-04 14:30:52,606 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-04 14:30:52,606 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-04 14:30:52,607 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2109324231] [2024-06-04 14:30:52,607 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-04 14:30:52,608 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-04 14:30:52,608 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-04 14:30:52,608 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-04 14:30:52,608 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-04 14:30:52,617 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 10 out of 44 [2024-06-04 14:30:52,618 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 40 places, 39 transitions, 96 flow. Second operand has 4 states, 4 states have (on average 13.5) internal successors, (54), 4 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:52,618 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-04 14:30:52,618 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 10 of 44 [2024-06-04 14:30:52,618 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-04 14:30:52,921 INFO L124 PetriNetUnfolderBase]: 1412/2193 cut-off events. [2024-06-04 14:30:52,922 INFO L125 PetriNetUnfolderBase]: For 205/205 co-relation queries the response was YES. [2024-06-04 14:30:52,926 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4498 conditions, 2193 events. 1412/2193 cut-off events. For 205/205 co-relation queries the response was YES. Maximal size of possible extension queue 84. Compared 10145 event pairs, 399 based on Foata normal form. 72/2028 useless extension candidates. Maximal degree in co-relation 1195. Up to 875 conditions per place. [2024-06-04 14:30:52,933 INFO L140 encePairwiseOnDemand]: 37/44 looper letters, 58 selfloop transitions, 5 changer transitions 0/70 dead transitions. [2024-06-04 14:30:52,933 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 43 places, 70 transitions, 293 flow [2024-06-04 14:30:52,933 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-04 14:30:52,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-04 14:30:52,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 107 transitions. [2024-06-04 14:30:52,935 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6079545454545454 [2024-06-04 14:30:52,935 INFO L175 Difference]: Start difference. First operand has 40 places, 39 transitions, 96 flow. Second operand 4 states and 107 transitions. [2024-06-04 14:30:52,935 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 43 places, 70 transitions, 293 flow [2024-06-04 14:30:52,936 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 70 transitions, 291 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-04 14:30:52,937 INFO L231 Difference]: Finished difference. Result has 44 places, 42 transitions, 134 flow [2024-06-04 14:30:52,937 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=94, PETRI_DIFFERENCE_MINUEND_PLACES=39, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=34, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=134, PETRI_PLACES=44, PETRI_TRANSITIONS=42} [2024-06-04 14:30:52,938 INFO L281 CegarLoopForPetriNet]: 43 programPoint places, 1 predicate places. [2024-06-04 14:30:52,938 INFO L495 AbstractCegarLoop]: Abstraction has has 44 places, 42 transitions, 134 flow [2024-06-04 14:30:52,938 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 13.5) internal successors, (54), 4 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:52,938 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-04 14:30:52,939 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-04 14:30:52,939 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-04 14:30:52,939 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 3 more)] === [2024-06-04 14:30:52,939 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-04 14:30:52,939 INFO L85 PathProgramCache]: Analyzing trace with hash -1231245986, now seen corresponding path program 1 times [2024-06-04 14:30:52,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-04 14:30:52,940 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [840346734] [2024-06-04 14:30:52,940 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-04 14:30:52,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-04 14:30:52,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-04 14:30:53,044 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-04 14:30:53,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-04 14:30:53,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [840346734] [2024-06-04 14:30:53,045 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [840346734] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-04 14:30:53,045 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-04 14:30:53,045 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-04 14:30:53,045 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1283617119] [2024-06-04 14:30:53,045 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-04 14:30:53,046 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-04 14:30:53,046 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-04 14:30:53,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-04 14:30:53,047 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-06-04 14:30:53,059 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 44 [2024-06-04 14:30:53,060 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 42 transitions, 134 flow. Second operand has 5 states, 5 states have (on average 16.0) internal successors, (80), 5 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:53,060 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-04 14:30:53,060 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 44 [2024-06-04 14:30:53,060 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-04 14:30:53,331 INFO L124 PetriNetUnfolderBase]: 1600/2690 cut-off events. [2024-06-04 14:30:53,331 INFO L125 PetriNetUnfolderBase]: For 905/923 co-relation queries the response was YES. [2024-06-04 14:30:53,336 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5857 conditions, 2690 events. 1600/2690 cut-off events. For 905/923 co-relation queries the response was YES. Maximal size of possible extension queue 97. Compared 13883 event pairs, 1130 based on Foata normal form. 44/2402 useless extension candidates. Maximal degree in co-relation 2683. Up to 1809 conditions per place. [2024-06-04 14:30:53,343 INFO L140 encePairwiseOnDemand]: 36/44 looper letters, 29 selfloop transitions, 4 changer transitions 39/83 dead transitions. [2024-06-04 14:30:53,344 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 83 transitions, 377 flow [2024-06-04 14:30:53,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-06-04 14:30:53,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-06-04 14:30:53,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 149 transitions. [2024-06-04 14:30:53,348 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5643939393939394 [2024-06-04 14:30:53,348 INFO L175 Difference]: Start difference. First operand has 44 places, 42 transitions, 134 flow. Second operand 6 states and 149 transitions. [2024-06-04 14:30:53,348 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 83 transitions, 377 flow [2024-06-04 14:30:53,350 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 83 transitions, 375 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-04 14:30:53,351 INFO L231 Difference]: Finished difference. Result has 52 places, 44 transitions, 164 flow [2024-06-04 14:30:53,352 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=132, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=42, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=164, PETRI_PLACES=52, PETRI_TRANSITIONS=44} [2024-06-04 14:30:53,353 INFO L281 CegarLoopForPetriNet]: 43 programPoint places, 9 predicate places. [2024-06-04 14:30:53,353 INFO L495 AbstractCegarLoop]: Abstraction has has 52 places, 44 transitions, 164 flow [2024-06-04 14:30:53,353 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 16.0) internal successors, (80), 5 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:53,353 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-04 14:30:53,354 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-04 14:30:53,354 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-04 14:30:53,354 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 3 more)] === [2024-06-04 14:30:53,354 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-04 14:30:53,354 INFO L85 PathProgramCache]: Analyzing trace with hash -1490191997, now seen corresponding path program 1 times [2024-06-04 14:30:53,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-04 14:30:53,355 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [907027497] [2024-06-04 14:30:53,355 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-04 14:30:53,355 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-04 14:30:53,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-04 14:30:53,444 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-06-04 14:30:53,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-04 14:30:53,445 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [907027497] [2024-06-04 14:30:53,445 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [907027497] provided 0 perfect and 1 imperfect interpolant sequences [2024-06-04 14:30:53,445 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [272403814] [2024-06-04 14:30:53,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-04 14:30:53,445 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-04 14:30:53,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-04 14:30:53,448 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-06-04 14:30:53,464 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2024-06-04 14:30:53,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-04 14:30:53,525 INFO L262 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 8 conjunts are in the unsatisfiable core [2024-06-04 14:30:53,528 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-06-04 14:30:53,612 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-04 14:30:53,612 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-06-04 14:30:53,677 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-06-04 14:30:53,678 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [272403814] provided 0 perfect and 2 imperfect interpolant sequences [2024-06-04 14:30:53,678 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-06-04 14:30:53,678 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 6, 6] total 14 [2024-06-04 14:30:53,679 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1126231306] [2024-06-04 14:30:53,679 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-06-04 14:30:53,679 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-06-04 14:30:53,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-04 14:30:53,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-06-04 14:30:53,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2024-06-04 14:30:53,754 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 44 [2024-06-04 14:30:53,755 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 44 transitions, 164 flow. Second operand has 14 states, 14 states have (on average 12.714285714285714) internal successors, (178), 14 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:53,755 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-04 14:30:53,755 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 44 [2024-06-04 14:30:53,755 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-04 14:30:54,349 INFO L124 PetriNetUnfolderBase]: 2207/3318 cut-off events. [2024-06-04 14:30:54,349 INFO L125 PetriNetUnfolderBase]: For 1290/1290 co-relation queries the response was YES. [2024-06-04 14:30:54,369 INFO L83 FinitePrefix]: Finished finitePrefix Result has 7937 conditions, 3318 events. 2207/3318 cut-off events. For 1290/1290 co-relation queries the response was YES. Maximal size of possible extension queue 124. Compared 15681 event pairs, 353 based on Foata normal form. 134/3103 useless extension candidates. Maximal degree in co-relation 5055. Up to 604 conditions per place. [2024-06-04 14:30:54,373 INFO L140 encePairwiseOnDemand]: 32/44 looper letters, 0 selfloop transitions, 0 changer transitions 155/155 dead transitions. [2024-06-04 14:30:54,373 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 59 places, 155 transitions, 757 flow [2024-06-04 14:30:54,384 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-06-04 14:30:54,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2024-06-04 14:30:54,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 271 transitions. [2024-06-04 14:30:54,385 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4737762237762238 [2024-06-04 14:30:54,385 INFO L175 Difference]: Start difference. First operand has 52 places, 44 transitions, 164 flow. Second operand 13 states and 271 transitions. [2024-06-04 14:30:54,385 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 59 places, 155 transitions, 757 flow [2024-06-04 14:30:54,390 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 55 places, 155 transitions, 719 flow, removed 16 selfloop flow, removed 4 redundant places. [2024-06-04 14:30:54,391 INFO L231 Difference]: Finished difference. Result has 55 places, 0 transitions, 0 flow [2024-06-04 14:30:54,391 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=44, PETRI_DIFFERENCE_MINUEND_FLOW=134, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=42, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=42, PETRI_DIFFERENCE_SUBTRAHEND_STATES=13, PETRI_FLOW=0, PETRI_PLACES=55, PETRI_TRANSITIONS=0} [2024-06-04 14:30:54,392 INFO L281 CegarLoopForPetriNet]: 43 programPoint places, 12 predicate places. [2024-06-04 14:30:54,392 INFO L495 AbstractCegarLoop]: Abstraction has has 55 places, 0 transitions, 0 flow [2024-06-04 14:30:54,392 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 12.714285714285714) internal successors, (178), 14 states have internal predecessors, (178), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-06-04 14:30:54,394 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (5 of 6 remaining) [2024-06-04 14:30:54,394 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (4 of 6 remaining) [2024-06-04 14:30:54,394 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (3 of 6 remaining) [2024-06-04 14:30:54,395 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2024-06-04 14:30:54,395 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2024-06-04 14:30:54,395 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 6 remaining) [2024-06-04 14:30:54,409 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2024-06-04 14:30:54,595 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-06-04 14:30:54,596 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2024-06-04 14:30:54,598 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-04 14:30:54,598 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-04 14:30:54,603 INFO L507 ceAbstractionStarter]: Automizer considered 3 witness invariants [2024-06-04 14:30:54,603 INFO L508 ceAbstractionStarter]: WitnessConsidered=3 [2024-06-04 14:30:54,603 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.06 02:30:54 BasicIcfg [2024-06-04 14:30:54,604 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-04 14:30:54,604 INFO L158 Benchmark]: Toolchain (without parser) took 3866.80ms. Allocated memory was 165.7MB in the beginning and 281.0MB in the end (delta: 115.3MB). Free memory was 133.8MB in the beginning and 118.5MB in the end (delta: 15.3MB). Peak memory consumption was 130.1MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,604 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 165.7MB. Free memory is still 134.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-04 14:30:54,605 INFO L158 Benchmark]: Witness Parser took 0.13ms. Allocated memory is still 165.7MB. Free memory is still 136.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-04 14:30:54,605 INFO L158 Benchmark]: CACSL2BoogieTranslator took 264.70ms. Allocated memory is still 165.7MB. Free memory was 133.8MB in the beginning and 119.1MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,605 INFO L158 Benchmark]: Boogie Procedure Inliner took 29.06ms. Allocated memory is still 165.7MB. Free memory was 119.1MB in the beginning and 117.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,606 INFO L158 Benchmark]: Boogie Preprocessor took 52.94ms. Allocated memory is still 165.7MB. Free memory was 117.0MB in the beginning and 114.4MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,606 INFO L158 Benchmark]: RCFGBuilder took 620.06ms. Allocated memory is still 165.7MB. Free memory was 114.4MB in the beginning and 94.6MB in the end (delta: 19.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,606 INFO L158 Benchmark]: TraceAbstraction took 2894.17ms. Allocated memory was 165.7MB in the beginning and 281.0MB in the end (delta: 115.3MB). Free memory was 93.8MB in the beginning and 118.5MB in the end (delta: -24.7MB). Peak memory consumption was 92.3MB. Max. memory is 16.1GB. [2024-06-04 14:30:54,608 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 165.7MB. Free memory is still 134.7MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.13ms. Allocated memory is still 165.7MB. Free memory is still 136.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 264.70ms. Allocated memory is still 165.7MB. Free memory was 133.8MB in the beginning and 119.1MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 29.06ms. Allocated memory is still 165.7MB. Free memory was 119.1MB in the beginning and 117.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 52.94ms. Allocated memory is still 165.7MB. Free memory was 117.0MB in the beginning and 114.4MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 620.06ms. Allocated memory is still 165.7MB. Free memory was 114.4MB in the beginning and 94.6MB in the end (delta: 19.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * TraceAbstraction took 2894.17ms. Allocated memory was 165.7MB in the beginning and 281.0MB in the end (delta: 115.3MB). Free memory was 93.8MB in the beginning and 118.5MB in the end (delta: -24.7MB). Peak memory consumption was 92.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 96]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 97]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 98]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 7 procedures, 59 locations, 6 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 2.8s, OverallIterations: 4, TraceHistogramMax: 2, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 1.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 360 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 329 mSDsluCounter, 221 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 214 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1067 IncrementalHoareTripleChecker+Invalid, 1091 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 7 mSDtfsCounter, 1067 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 60 GetRequests, 35 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=164occurred in iteration=3, InterpolantAutomatonStates: 26, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.5s InterpolantComputationTime, 84 NumberOfCodeBlocks, 84 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 99 ConstructedInterpolants, 0 QuantifiedInterpolants, 289 SizeOfPredicates, 3 NumberOfNonLiveVariables, 162 ConjunctsInSsa, 8 ConjunctsInUnsatCore, 6 InterpolantComputations, 3 PerfectInterpolantSequences, 13/18 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 3 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-06-04 14:30:54,635 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE