./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 023d838f Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 3fa2925374831266c365e02bbdeeca981bf102eec792ab5e5349fa193f0e7273 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-023d838-m [2024-11-09 23:18:36,948 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-09 23:18:37,030 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-09 23:18:37,037 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-09 23:18:37,041 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-09 23:18:37,064 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-09 23:18:37,065 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-09 23:18:37,066 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-09 23:18:37,067 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-09 23:18:37,068 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-09 23:18:37,069 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-09 23:18:37,069 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-09 23:18:37,070 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-09 23:18:37,070 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-09 23:18:37,072 INFO L153 SettingsManager]: * Use SBE=true [2024-11-09 23:18:37,072 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-09 23:18:37,072 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-09 23:18:37,073 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-09 23:18:37,073 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-09 23:18:37,076 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-09 23:18:37,076 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-09 23:18:37,077 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-09 23:18:37,077 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-09 23:18:37,077 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-09 23:18:37,078 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-09 23:18:37,078 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-09 23:18:37,078 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-09 23:18:37,078 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-09 23:18:37,079 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-09 23:18:37,079 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-09 23:18:37,079 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-09 23:18:37,079 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-09 23:18:37,079 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 23:18:37,080 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-09 23:18:37,080 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-09 23:18:37,080 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-09 23:18:37,080 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-09 23:18:37,081 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-09 23:18:37,081 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-09 23:18:37,081 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-09 23:18:37,081 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-09 23:18:37,082 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-09 23:18:37,082 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 3fa2925374831266c365e02bbdeeca981bf102eec792ab5e5349fa193f0e7273 [2024-11-09 23:18:37,297 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-09 23:18:37,314 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-09 23:18:37,316 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-09 23:18:37,317 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-09 23:18:37,317 INFO L274 PluginConnector]: CDTParser initialized [2024-11-09 23:18:37,318 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c [2024-11-09 23:18:38,637 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-09 23:18:38,815 INFO L384 CDTParser]: Found 1 translation units. [2024-11-09 23:18:38,815 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c [2024-11-09 23:18:38,829 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/de0494358/20ebb1923b674411a17a69dd3a4c0faa/FLAG6e7f1aa80 [2024-11-09 23:18:38,840 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/de0494358/20ebb1923b674411a17a69dd3a4c0faa [2024-11-09 23:18:38,842 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-09 23:18:38,843 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-09 23:18:38,844 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-09 23:18:38,844 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-09 23:18:38,848 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-09 23:18:38,849 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 11:18:38" (1/1) ... [2024-11-09 23:18:38,849 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7e29f379 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:38, skipping insertion in model container [2024-11-09 23:18:38,849 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 11:18:38" (1/1) ... [2024-11-09 23:18:38,885 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-09 23:18:39,109 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c[11292,11305] [2024-11-09 23:18:39,147 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 23:18:39,157 INFO L200 MainTranslator]: Completed pre-run [2024-11-09 23:18:39,164 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [49] [2024-11-09 23:18:39,165 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [415] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Environment.i","") [424] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [520] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"MinePump.i","") [624] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [826] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [893] [2024-11-09 23:18:39,166 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"Specification5_spec.i","") [928] [2024-11-09 23:18:39,200 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/minepump_spec5_product23.cil.c[11292,11305] [2024-11-09 23:18:39,212 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 23:18:39,227 INFO L204 MainTranslator]: Completed translation [2024-11-09 23:18:39,227 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39 WrapperNode [2024-11-09 23:18:39,227 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-09 23:18:39,228 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-09 23:18:39,228 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-09 23:18:39,228 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-09 23:18:39,233 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,243 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,265 INFO L138 Inliner]: procedures = 56, calls = 102, calls flagged for inlining = 23, calls inlined = 20, statements flattened = 199 [2024-11-09 23:18:39,265 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-09 23:18:39,266 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-09 23:18:39,266 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-09 23:18:39,266 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-09 23:18:39,274 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,274 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,275 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,288 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-11-09 23:18:39,288 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,288 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,296 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,296 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,301 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,302 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,303 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-09 23:18:39,304 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-09 23:18:39,304 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-09 23:18:39,304 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-09 23:18:39,305 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (1/1) ... [2024-11-09 23:18:39,309 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-09 23:18:39,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 23:18:39,337 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-09 23:18:39,341 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-09 23:18:39,379 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-09 23:18:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure processEnvironment__wrappee__base [2024-11-09 23:18:39,380 INFO L138 BoogieDeclarations]: Found implementation of procedure processEnvironment__wrappee__base [2024-11-09 23:18:39,380 INFO L130 BoogieDeclarations]: Found specification of procedure timeShift [2024-11-09 23:18:39,381 INFO L138 BoogieDeclarations]: Found implementation of procedure timeShift [2024-11-09 23:18:39,381 INFO L130 BoogieDeclarations]: Found specification of procedure cleanup [2024-11-09 23:18:39,381 INFO L138 BoogieDeclarations]: Found implementation of procedure cleanup [2024-11-09 23:18:39,381 INFO L130 BoogieDeclarations]: Found specification of procedure waterRise [2024-11-09 23:18:39,381 INFO L138 BoogieDeclarations]: Found implementation of procedure waterRise [2024-11-09 23:18:39,381 INFO L130 BoogieDeclarations]: Found specification of procedure processEnvironment__wrappee__lowWaterSensor [2024-11-09 23:18:39,381 INFO L138 BoogieDeclarations]: Found implementation of procedure processEnvironment__wrappee__lowWaterSensor [2024-11-09 23:18:39,382 INFO L130 BoogieDeclarations]: Found specification of procedure isPumpRunning [2024-11-09 23:18:39,382 INFO L138 BoogieDeclarations]: Found implementation of procedure isPumpRunning [2024-11-09 23:18:39,382 INFO L130 BoogieDeclarations]: Found specification of procedure deactivatePump [2024-11-09 23:18:39,382 INFO L138 BoogieDeclarations]: Found implementation of procedure deactivatePump [2024-11-09 23:18:39,382 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-09 23:18:39,382 INFO L130 BoogieDeclarations]: Found specification of procedure changeMethaneLevel [2024-11-09 23:18:39,383 INFO L138 BoogieDeclarations]: Found implementation of procedure changeMethaneLevel [2024-11-09 23:18:39,383 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-09 23:18:39,383 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-09 23:18:39,458 INFO L256 CfgBuilder]: Building ICFG [2024-11-09 23:18:39,461 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-09 23:18:39,611 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L508-1: getWaterLevel_#res#1 := getWaterLevel_~retValue_acc~4#1; [2024-11-09 23:18:39,612 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L744-1: isMethaneAlarm_#res#1 := isMethaneAlarm_~retValue_acc~7#1; [2024-11-09 23:18:39,612 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L476-1: isMethaneLevelCritical_#res#1 := isMethaneLevelCritical_~retValue_acc~3#1; [2024-11-09 23:18:39,677 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L925-1: valid_product_#res#1 := valid_product_~retValue_acc~11#1; [2024-11-09 23:18:39,677 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L621-1: main_#res#1 := main_~retValue_acc~6#1; [2024-11-09 23:18:39,697 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L808-1: isLowWaterLevel_#res#1 := isLowWaterLevel_~retValue_acc~9#1; [2024-11-09 23:18:39,697 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L517-1: isLowWaterSensorDry_#res#1 := isLowWaterSensorDry_~retValue_acc~5#1; [2024-11-09 23:18:39,700 INFO L1247 $ProcedureCfgBuilder]: dead code at ProgramPoint L753: #res := ~retValue_acc~8; [2024-11-09 23:18:39,716 INFO L? ?]: Removed 41 outVars from TransFormulas that were not future-live. [2024-11-09 23:18:39,716 INFO L307 CfgBuilder]: Performing block encoding [2024-11-09 23:18:39,729 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-09 23:18:39,729 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-09 23:18:39,730 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 09.11 11:18:39 BoogieIcfgContainer [2024-11-09 23:18:39,730 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-09 23:18:39,731 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-09 23:18:39,731 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-09 23:18:39,734 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-09 23:18:39,734 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.11 11:18:38" (1/3) ... [2024-11-09 23:18:39,734 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@d55feb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 11:18:39, skipping insertion in model container [2024-11-09 23:18:39,734 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 11:18:39" (2/3) ... [2024-11-09 23:18:39,735 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@d55feb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.11 11:18:39, skipping insertion in model container [2024-11-09 23:18:39,735 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 09.11 11:18:39" (3/3) ... [2024-11-09 23:18:39,735 INFO L112 eAbstractionObserver]: Analyzing ICFG minepump_spec5_product23.cil.c [2024-11-09 23:18:39,749 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-09 23:18:39,749 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-11-09 23:18:39,806 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-09 23:18:39,812 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@48b32430, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-09 23:18:39,813 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2024-11-09 23:18:39,818 INFO L276 IsEmpty]: Start isEmpty. Operand has 100 states, 75 states have (on average 1.3466666666666667) internal successors, (101), 84 states have internal predecessors, (101), 15 states have call successors, (15), 8 states have call predecessors, (15), 8 states have return successors, (15), 11 states have call predecessors, (15), 15 states have call successors, (15) [2024-11-09 23:18:39,828 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2024-11-09 23:18:39,829 INFO L207 NwaCegarLoop]: Found error trace [2024-11-09 23:18:39,830 INFO L215 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 23:18:39,831 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting timeShiftErr0ASSERT_VIOLATIONERROR_FUNCTION === [timeShiftErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-11-09 23:18:39,838 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 23:18:39,838 INFO L85 PathProgramCache]: Analyzing trace with hash -1936892437, now seen corresponding path program 1 times [2024-11-09 23:18:39,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 23:18:39,846 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1159191316] [2024-11-09 23:18:39,846 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 23:18:39,847 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 23:18:39,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,154 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2024-11-09 23:18:40,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,170 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2024-11-09 23:18:40,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,178 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-09 23:18:40,179 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 23:18:40,179 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1159191316] [2024-11-09 23:18:40,179 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1159191316] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 23:18:40,180 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 23:18:40,180 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-09 23:18:40,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [217546936] [2024-11-09 23:18:40,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 23:18:40,186 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-11-09 23:18:40,187 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 23:18:40,209 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 23:18:40,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 23:18:40,212 INFO L87 Difference]: Start difference. First operand has 100 states, 75 states have (on average 1.3466666666666667) internal successors, (101), 84 states have internal predecessors, (101), 15 states have call successors, (15), 8 states have call predecessors, (15), 8 states have return successors, (15), 11 states have call predecessors, (15), 15 states have call successors, (15) Second operand has 3 states, 3 states have (on average 10.333333333333334) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2024-11-09 23:18:40,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 23:18:40,267 INFO L93 Difference]: Finished difference Result 279 states and 378 transitions. [2024-11-09 23:18:40,272 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 23:18:40,273 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 10.333333333333334) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 38 [2024-11-09 23:18:40,274 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2024-11-09 23:18:40,286 INFO L225 Difference]: With dead ends: 279 [2024-11-09 23:18:40,286 INFO L226 Difference]: Without dead ends: 169 [2024-11-09 23:18:40,291 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 23:18:40,294 INFO L432 NwaCegarLoop]: 140 mSDtfsCounter, 99 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 4 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 99 SdHoareTripleChecker+Valid, 252 SdHoareTripleChecker+Invalid, 4 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 4 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2024-11-09 23:18:40,295 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [99 Valid, 252 Invalid, 4 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 4 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2024-11-09 23:18:40,309 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 169 states. [2024-11-09 23:18:40,343 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 169 to 165. [2024-11-09 23:18:40,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 165 states, 120 states have (on average 1.3083333333333333) internal successors, (157), 135 states have internal predecessors, (157), 30 states have call successors, (30), 16 states have call predecessors, (30), 14 states have return successors, (28), 19 states have call predecessors, (28), 28 states have call successors, (28) [2024-11-09 23:18:40,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 165 states to 165 states and 215 transitions. [2024-11-09 23:18:40,352 INFO L78 Accepts]: Start accepts. Automaton has 165 states and 215 transitions. Word has length 38 [2024-11-09 23:18:40,352 INFO L84 Accepts]: Finished accepts. word is rejected. [2024-11-09 23:18:40,353 INFO L471 AbstractCegarLoop]: Abstraction has 165 states and 215 transitions. [2024-11-09 23:18:40,353 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 10.333333333333334) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2024-11-09 23:18:40,353 INFO L276 IsEmpty]: Start isEmpty. Operand 165 states and 215 transitions. [2024-11-09 23:18:40,359 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2024-11-09 23:18:40,360 INFO L207 NwaCegarLoop]: Found error trace [2024-11-09 23:18:40,360 INFO L215 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 23:18:40,360 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-09 23:18:40,360 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting timeShiftErr0ASSERT_VIOLATIONERROR_FUNCTION === [timeShiftErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-11-09 23:18:40,361 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 23:18:40,361 INFO L85 PathProgramCache]: Analyzing trace with hash -1429914841, now seen corresponding path program 1 times [2024-11-09 23:18:40,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 23:18:40,362 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [116926273] [2024-11-09 23:18:40,362 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 23:18:40,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 23:18:40,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,488 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2024-11-09 23:18:40,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,493 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2024-11-09 23:18:40,496 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 23:18:40,508 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 23:18:40,508 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 23:18:40,509 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [116926273] [2024-11-09 23:18:40,509 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [116926273] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 23:18:40,509 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 23:18:40,509 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2024-11-09 23:18:40,509 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1576919421] [2024-11-09 23:18:40,509 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 23:18:40,510 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-11-09 23:18:40,510 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 23:18:40,511 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-09 23:18:40,511 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2024-11-09 23:18:40,516 INFO L87 Difference]: Start difference. First operand 165 states and 215 transitions. Second operand has 6 states, 6 states have (on average 6.166666666666667) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2024-11-09 23:18:40,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 23:18:40,655 INFO L93 Difference]: Finished difference Result 281 states and 372 transitions. [2024-11-09 23:18:40,655 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-09 23:18:40,656 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 6.166666666666667) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 42 [2024-11-09 23:18:40,656 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2024-11-09 23:18:40,656 INFO L225 Difference]: With dead ends: 281 [2024-11-09 23:18:40,656 INFO L226 Difference]: Without dead ends: 0 [2024-11-09 23:18:40,658 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=51, Unknown=0, NotChecked=0, Total=72 [2024-11-09 23:18:40,663 INFO L432 NwaCegarLoop]: 72 mSDtfsCounter, 71 mSDsluCounter, 190 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 262 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2024-11-09 23:18:40,663 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 262 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2024-11-09 23:18:40,664 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2024-11-09 23:18:40,664 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2024-11-09 23:18:40,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 23:18:40,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2024-11-09 23:18:40,665 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 42 [2024-11-09 23:18:40,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2024-11-09 23:18:40,665 INFO L471 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2024-11-09 23:18:40,665 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 6.166666666666667) internal successors, (37), 5 states have internal predecessors, (37), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2024-11-09 23:18:40,665 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2024-11-09 23:18:40,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2024-11-09 23:18:40,668 INFO L782 garLoopResultBuilder]: Registering result SAFE for location timeShiftErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2024-11-09 23:18:40,668 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-11-09 23:18:40,670 INFO L407 BasicCegarLoop]: Path program histogram: [1, 1] [2024-11-09 23:18:40,672 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2024-11-09 23:18:41,028 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2024-11-09 23:18:41,061 WARN L156 FloydHoareUtils]: Requires clause for timeShift contained old-variable. Original clause: (and (= ~pumpRunning~0 0) (= |old(~pumpRunning~0)| 0)) Eliminated clause: (= ~pumpRunning~0 0) [2024-11-09 23:18:41,065 WARN L156 FloydHoareUtils]: Requires clause for cleanup contained old-variable. Original clause: (and (= ~pumpRunning~0 0) (= |old(~pumpRunning~0)| 0)) Eliminated clause: (= ~pumpRunning~0 0) [2024-11-09 23:18:41,067 WARN L156 FloydHoareUtils]: Requires clause for processEnvironment__wrappee__lowWaterSensor contained old-variable. Original clause: (and (= ~pumpRunning~0 0) (= |old(~pumpRunning~0)| 0)) Eliminated clause: (= ~pumpRunning~0 0) [2024-11-09 23:18:41,070 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.11 11:18:41 BoogieIcfgContainer [2024-11-09 23:18:41,070 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-11-09 23:18:41,070 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-09 23:18:41,071 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-09 23:18:41,071 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-09 23:18:41,071 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 09.11 11:18:39" (3/4) ... [2024-11-09 23:18:41,073 INFO L143 WitnessPrinter]: Generating witness for correct program [2024-11-09 23:18:41,078 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure deactivatePump [2024-11-09 23:18:41,080 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure processEnvironment__wrappee__base [2024-11-09 23:18:41,080 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure changeMethaneLevel [2024-11-09 23:18:41,080 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure timeShift [2024-11-09 23:18:41,080 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure cleanup [2024-11-09 23:18:41,081 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure waterRise [2024-11-09 23:18:41,081 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure processEnvironment__wrappee__lowWaterSensor [2024-11-09 23:18:41,081 INFO L393 IcfgBacktranslator]: Ignoring RootEdge to procedure isPumpRunning [2024-11-09 23:18:41,091 INFO L925 BoogieBacktranslator]: Reduced CFG by removing 40 nodes and edges [2024-11-09 23:18:41,091 INFO L925 BoogieBacktranslator]: Reduced CFG by removing 10 nodes and edges [2024-11-09 23:18:41,092 INFO L925 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2024-11-09 23:18:41,092 INFO L925 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2024-11-09 23:18:41,092 INFO L925 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2024-11-09 23:18:41,199 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2024-11-09 23:18:41,199 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2024-11-09 23:18:41,199 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-09 23:18:41,200 INFO L158 Benchmark]: Toolchain (without parser) took 2357.04ms. Allocated memory is still 182.5MB. Free memory was 111.7MB in the beginning and 124.8MB in the end (delta: -13.1MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-09 23:18:41,200 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 104.9MB. Free memory is still 65.8MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-09 23:18:41,200 INFO L158 Benchmark]: CACSL2BoogieTranslator took 383.36ms. Allocated memory is still 182.5MB. Free memory was 111.5MB in the beginning and 143.8MB in the end (delta: -32.2MB). Peak memory consumption was 12.8MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,201 INFO L158 Benchmark]: Boogie Procedure Inliner took 37.68ms. Allocated memory is still 182.5MB. Free memory was 143.8MB in the beginning and 141.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,201 INFO L158 Benchmark]: Boogie Preprocessor took 37.77ms. Allocated memory is still 182.5MB. Free memory was 141.7MB in the beginning and 139.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,203 INFO L158 Benchmark]: IcfgBuilder took 425.83ms. Allocated memory is still 182.5MB. Free memory was 139.6MB in the beginning and 120.0MB in the end (delta: 19.6MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,203 INFO L158 Benchmark]: TraceAbstraction took 1338.88ms. Allocated memory is still 182.5MB. Free memory was 119.3MB in the beginning and 132.1MB in the end (delta: -12.9MB). Peak memory consumption was 72.5MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,203 INFO L158 Benchmark]: Witness Printer took 129.05ms. Allocated memory is still 182.5MB. Free memory was 132.1MB in the beginning and 124.8MB in the end (delta: 7.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-11-09 23:18:41,204 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.17ms. Allocated memory is still 104.9MB. Free memory is still 65.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 383.36ms. Allocated memory is still 182.5MB. Free memory was 111.5MB in the beginning and 143.8MB in the end (delta: -32.2MB). Peak memory consumption was 12.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 37.68ms. Allocated memory is still 182.5MB. Free memory was 143.8MB in the beginning and 141.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 37.77ms. Allocated memory is still 182.5MB. Free memory was 141.7MB in the beginning and 139.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * IcfgBuilder took 425.83ms. Allocated memory is still 182.5MB. Free memory was 139.6MB in the beginning and 120.0MB in the end (delta: 19.6MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * TraceAbstraction took 1338.88ms. Allocated memory is still 182.5MB. Free memory was 119.3MB in the beginning and 132.1MB in the end (delta: -12.9MB). Peak memory consumption was 72.5MB. Max. memory is 16.1GB. * Witness Printer took 129.05ms. Allocated memory is still 182.5MB. Free memory was 132.1MB in the beginning and 124.8MB in the end (delta: 7.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResultAtLocation [Line: 49]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"libacc.i","") [49] - GenericResultAtLocation [Line: 415]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"wsllib_check.i","") [415] - GenericResultAtLocation [Line: 424]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"Environment.i","") [424] - GenericResultAtLocation [Line: 520]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"Test.i","") [520] - GenericResultAtLocation [Line: 624]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"MinePump.i","") [624] - GenericResultAtLocation [Line: 826]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"scenario.i","") [826] - GenericResultAtLocation [Line: 893]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"featureselect.i","") [893] - GenericResultAtLocation [Line: 928]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"Specification5_spec.i","") [928] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 420]: a call to reach_error is unreachable For all program executions holds that a call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 9 procedures, 100 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.9s, OverallIterations: 2, TraceHistogramMax: 2, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 172 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 170 mSDsluCounter, 514 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 302 mSDsCounter, 5 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 54 IncrementalHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 5 mSolverCounterUnsat, 212 mSDtfsCounter, 54 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 18 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=165occurred in iteration=1, InterpolantAutomatonStates: 9, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 2 MinimizatonAttempts, 4 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.3s InterpolantComputationTime, 80 NumberOfCodeBlocks, 80 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 78 ConstructedInterpolants, 0 QuantifiedInterpolants, 140 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 2 InterpolantComputations, 2 PerfectInterpolantSequences, 6/6 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 1 specifications checked. All of them hold - InvariantResult [Line: 533]: Location Invariant Derived location invariant: null - InvariantResult [Line: 837]: Location Invariant Derived location invariant: null - ProcedureContractResult [Line: 728]: Procedure Contract for deactivatePump Derived contract for procedure deactivatePump. Requires: 0 Ensures: (0 && ((((((head == \old(head)) && (waterLevel == \old(waterLevel))) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) - ProcedureContractResult [Line: 661]: Procedure Contract for processEnvironment__wrappee__base Derived contract for procedure processEnvironment__wrappee__base. Requires: (pumpRunning == 0) Ensures: ((pumpRunning == 0) && (((((((head == \old(head)) && (waterLevel == \old(waterLevel))) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (pumpRunning == \old(pumpRunning))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) - ProcedureContractResult [Line: 458]: Procedure Contract for changeMethaneLevel Derived contract for procedure changeMethaneLevel. Requires: (pumpRunning == 0) Ensures: ((pumpRunning == 0) && ((((((head == \old(head)) && (waterLevel == \old(waterLevel))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (pumpRunning == \old(pumpRunning))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) - ProcedureContractResult [Line: 634]: Procedure Contract for timeShift Derived contract for procedure timeShift. Requires: (pumpRunning == 0) Ensures: (((pumpRunning == 0) && (\old(pumpRunning) == 0)) && ((((head == \old(head)) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (systemActive == \old(systemActive)))) - ProcedureContractResult [Line: 523]: Procedure Contract for cleanup Derived contract for procedure cleanup. Requires: (pumpRunning == 0) Ensures: ((\old(pumpRunning) == 0) && ((((head == \old(head)) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (systemActive == \old(systemActive)))) - ProcedureContractResult [Line: 446]: Procedure Contract for waterRise Derived contract for procedure waterRise. Requires: (pumpRunning == 0) Ensures: ((pumpRunning == 0) && ((((((head == \old(head)) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (pumpRunning == \old(pumpRunning))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) - ProcedureContractResult [Line: 669]: Procedure Contract for processEnvironment__wrappee__lowWaterSensor Derived contract for procedure processEnvironment__wrappee__lowWaterSensor. Requires: (pumpRunning == 0) Ensures: (((pumpRunning == 0) && (\old(pumpRunning) == 0)) && ((((((head == \old(head)) && (waterLevel == \old(waterLevel))) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) - ProcedureContractResult [Line: 747]: Procedure Contract for isPumpRunning Derived contract for procedure isPumpRunning. Requires: (pumpRunning == 0) Ensures: (((pumpRunning == 0) && (\result == 0)) && (((((((head == \old(head)) && (waterLevel == \old(waterLevel))) && (methaneLevelCritical == \old(methaneLevelCritical))) && (cleanupTimeShifts == \old(cleanupTimeShifts))) && (pumpRunning == \old(pumpRunning))) && (systemActive == \old(systemActive))) && (switchedOnBeforeTS == \old(switchedOnBeforeTS)))) RESULT: Ultimate proved your program to be correct! [2024-11-09 23:18:41,250 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE