./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/product-lines/minepump_spec4_product43.cil.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8bd4bc60 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.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_spec4_product43.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.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(__VERIFIER_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 437b76c0cd9dd6f0417f690a0c81e41159d0829e .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE --- Real Ultimate output --- This is Ultimate 0.1.25-8bd4bc6 [2020-07-28 19:03:35,186 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-28 19:03:35,188 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-28 19:03:35,201 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-28 19:03:35,201 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-28 19:03:35,202 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-28 19:03:35,204 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-28 19:03:35,206 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-28 19:03:35,208 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-28 19:03:35,209 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-28 19:03:35,210 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-28 19:03:35,211 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-28 19:03:35,211 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-28 19:03:35,212 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-28 19:03:35,214 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-28 19:03:35,215 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-28 19:03:35,216 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-28 19:03:35,217 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-28 19:03:35,219 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-28 19:03:35,221 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-28 19:03:35,223 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-28 19:03:35,225 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-28 19:03:35,226 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-28 19:03:35,227 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-28 19:03:35,230 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-28 19:03:35,231 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-28 19:03:35,231 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-28 19:03:35,232 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-28 19:03:35,232 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-28 19:03:35,234 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-28 19:03:35,234 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-28 19:03:35,235 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-28 19:03:35,236 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-28 19:03:35,236 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-28 19:03:35,238 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-28 19:03:35,238 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-28 19:03:35,239 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-28 19:03:35,239 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-28 19:03:35,239 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-28 19:03:35,240 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-28 19:03:35,241 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-28 19:03:35,242 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2020-07-28 19:03:35,257 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-28 19:03:35,257 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-28 19:03:35,259 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-28 19:03:35,259 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-28 19:03:35,259 INFO L138 SettingsManager]: * Use SBE=true [2020-07-28 19:03:35,259 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-28 19:03:35,260 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-28 19:03:35,260 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-28 19:03:35,260 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-28 19:03:35,260 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-28 19:03:35,261 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-28 19:03:35,261 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-28 19:03:35,261 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-28 19:03:35,261 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-28 19:03:35,261 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-28 19:03:35,262 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-28 19:03:35,262 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-28 19:03:35,262 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-28 19:03:35,262 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-28 19:03:35,263 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-28 19:03:35,263 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-28 19:03:35,263 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:03:35,263 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-28 19:03:35,263 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-28 19:03:35,264 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2020-07-28 19:03:35,264 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-28 19:03:35,264 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-28 19:03:35,264 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-28 19:03:35,265 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-28 19:03:35,265 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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.graphml 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(__VERIFIER_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 -> 437b76c0cd9dd6f0417f690a0c81e41159d0829e [2020-07-28 19:03:35,569 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-28 19:03:35,583 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-28 19:03:35,586 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-28 19:03:35,588 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-28 19:03:35,588 INFO L275 PluginConnector]: CDTParser initialized [2020-07-28 19:03:35,589 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/product-lines/minepump_spec4_product43.cil.c [2020-07-28 19:03:35,663 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a0abd0119/432a18d21c264ea984de066ef5873729/FLAG0a2b0ab1a [2020-07-28 19:03:36,161 INFO L306 CDTParser]: Found 1 translation units. [2020-07-28 19:03:36,162 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/product-lines/minepump_spec4_product43.cil.c [2020-07-28 19:03:36,175 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a0abd0119/432a18d21c264ea984de066ef5873729/FLAG0a2b0ab1a [2020-07-28 19:03:36,515 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a0abd0119/432a18d21c264ea984de066ef5873729 [2020-07-28 19:03:36,519 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-28 19:03:36,521 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2020-07-28 19:03:36,523 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-28 19:03:36,523 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-28 19:03:36,528 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-28 19:03:36,531 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:03:36" (1/1) ... [2020-07-28 19:03:36,534 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1d5f70b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:36, skipping insertion in model container [2020-07-28 19:03:36,536 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.07 07:03:36" (1/1) ... [2020-07-28 19:03:36,544 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-28 19:03:36,597 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-28 19:03:37,084 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:03:37,104 INFO L203 MainTranslator]: Completed pre-run [2020-07-28 19:03:37,289 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-28 19:03:37,330 INFO L208 MainTranslator]: Completed translation [2020-07-28 19:03:37,331 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37 WrapperNode [2020-07-28 19:03:37,331 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-28 19:03:37,332 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2020-07-28 19:03:37,333 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2020-07-28 19:03:37,333 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2020-07-28 19:03:37,343 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,363 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,417 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2020-07-28 19:03:37,418 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-28 19:03:37,418 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-28 19:03:37,419 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-28 19:03:37,429 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,430 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,438 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,438 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,464 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,481 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,489 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... [2020-07-28 19:03:37,496 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-28 19:03:37,499 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-28 19:03:37,499 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-28 19:03:37,500 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-28 19:03:37,502 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-28 19:03:37,564 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-28 19:03:37,565 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2020-07-28 19:03:37,565 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-28 19:03:37,565 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-28 19:03:39,119 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-28 19:03:39,119 INFO L295 CfgBuilder]: Removed 118 assume(true) statements. [2020-07-28 19:03:39,125 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:03:39 BoogieIcfgContainer [2020-07-28 19:03:39,126 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-28 19:03:39,127 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-28 19:03:39,128 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-28 19:03:39,132 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-28 19:03:39,133 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.07 07:03:36" (1/3) ... [2020-07-28 19:03:39,134 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@427d3383 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:03:39, skipping insertion in model container [2020-07-28 19:03:39,134 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.07 07:03:37" (2/3) ... [2020-07-28 19:03:39,135 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@427d3383 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.07 07:03:39, skipping insertion in model container [2020-07-28 19:03:39,135 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:03:39" (3/3) ... [2020-07-28 19:03:39,137 INFO L109 eAbstractionObserver]: Analyzing ICFG minepump_spec4_product43.cil.c [2020-07-28 19:03:39,150 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-28 19:03:39,160 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 3 error locations. [2020-07-28 19:03:39,177 INFO L251 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2020-07-28 19:03:39,207 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-28 19:03:39,208 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-28 19:03:39,208 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-28 19:03:39,208 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-28 19:03:39,209 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-28 19:03:39,209 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-28 19:03:39,210 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-28 19:03:39,210 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-28 19:03:39,239 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states. [2020-07-28 19:03:39,249 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-28 19:03:39,249 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:39,251 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:03:39,252 INFO L427 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:39,259 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:39,259 INFO L82 PathProgramCache]: Analyzing trace with hash 929673937, now seen corresponding path program 1 times [2020-07-28 19:03:39,273 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:39,274 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1218414578] [2020-07-28 19:03:39,274 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:39,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:39,641 INFO L280 TraceCheckUtils]: 0: Hoare triple {92#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {92#true} is VALID [2020-07-28 19:03:39,642 INFO L280 TraceCheckUtils]: 1: Hoare triple {92#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {92#true} is VALID [2020-07-28 19:03:39,642 INFO L280 TraceCheckUtils]: 2: Hoare triple {92#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {92#true} is VALID [2020-07-28 19:03:39,643 INFO L280 TraceCheckUtils]: 3: Hoare triple {92#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {92#true} is VALID [2020-07-28 19:03:39,643 INFO L280 TraceCheckUtils]: 4: Hoare triple {92#true} assume 0 != main_~tmp~4; {92#true} is VALID [2020-07-28 19:03:39,648 INFO L280 TraceCheckUtils]: 5: Hoare triple {92#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {92#true} is VALID [2020-07-28 19:03:39,652 INFO L280 TraceCheckUtils]: 6: Hoare triple {92#true} assume false; {93#false} is VALID [2020-07-28 19:03:39,652 INFO L280 TraceCheckUtils]: 7: Hoare triple {93#false} havoc cleanup_~i~0, cleanup_~__cil_tmp2~0;havoc cleanup_~i~0;havoc cleanup_~__cil_tmp2~0; {93#false} is VALID [2020-07-28 19:03:39,652 INFO L280 TraceCheckUtils]: 8: Hoare triple {93#false} assume !(0 != ~pumpRunning~0); {93#false} is VALID [2020-07-28 19:03:39,653 INFO L280 TraceCheckUtils]: 9: Hoare triple {93#false} assume !(0 != ~systemActive~0); {93#false} is VALID [2020-07-28 19:03:39,654 INFO L280 TraceCheckUtils]: 10: Hoare triple {93#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {93#false} is VALID [2020-07-28 19:03:39,655 INFO L280 TraceCheckUtils]: 11: Hoare triple {93#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {93#false} is VALID [2020-07-28 19:03:39,655 INFO L280 TraceCheckUtils]: 12: Hoare triple {93#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {93#false} is VALID [2020-07-28 19:03:39,656 INFO L280 TraceCheckUtils]: 13: Hoare triple {93#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {93#false} is VALID [2020-07-28 19:03:39,656 INFO L280 TraceCheckUtils]: 14: Hoare triple {93#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {93#false} is VALID [2020-07-28 19:03:39,657 INFO L280 TraceCheckUtils]: 15: Hoare triple {93#false} assume !false; {93#false} is VALID [2020-07-28 19:03:39,662 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:39,663 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1218414578] [2020-07-28 19:03:39,665 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:39,665 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2020-07-28 19:03:39,666 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1121232745] [2020-07-28 19:03:39,673 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 16 [2020-07-28 19:03:39,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:39,680 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2020-07-28 19:03:39,725 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:39,725 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2020-07-28 19:03:39,726 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:39,735 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2020-07-28 19:03:39,737 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2020-07-28 19:03:39,739 INFO L87 Difference]: Start difference. First operand 89 states. Second operand 2 states. [2020-07-28 19:03:39,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:39,997 INFO L93 Difference]: Finished difference Result 172 states and 257 transitions. [2020-07-28 19:03:39,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2020-07-28 19:03:39,998 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 16 [2020-07-28 19:03:39,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:40,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2020-07-28 19:03:40,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 257 transitions. [2020-07-28 19:03:40,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2020-07-28 19:03:40,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 257 transitions. [2020-07-28 19:03:40,020 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 257 transitions. [2020-07-28 19:03:40,365 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 257 edges. 257 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:40,380 INFO L225 Difference]: With dead ends: 172 [2020-07-28 19:03:40,381 INFO L226 Difference]: Without dead ends: 85 [2020-07-28 19:03:40,385 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2020-07-28 19:03:40,403 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2020-07-28 19:03:40,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 85. [2020-07-28 19:03:40,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:40,444 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand 85 states. [2020-07-28 19:03:40,444 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 85 states. [2020-07-28 19:03:40,445 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 85 states. [2020-07-28 19:03:40,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:40,452 INFO L93 Difference]: Finished difference Result 85 states and 120 transitions. [2020-07-28 19:03:40,453 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 120 transitions. [2020-07-28 19:03:40,454 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:40,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:40,455 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand 85 states. [2020-07-28 19:03:40,455 INFO L87 Difference]: Start difference. First operand 85 states. Second operand 85 states. [2020-07-28 19:03:40,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:40,462 INFO L93 Difference]: Finished difference Result 85 states and 120 transitions. [2020-07-28 19:03:40,462 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 120 transitions. [2020-07-28 19:03:40,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:40,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:40,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:40,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:40,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 85 states. [2020-07-28 19:03:40,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 85 states to 85 states and 120 transitions. [2020-07-28 19:03:40,472 INFO L78 Accepts]: Start accepts. Automaton has 85 states and 120 transitions. Word has length 16 [2020-07-28 19:03:40,472 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:40,472 INFO L479 AbstractCegarLoop]: Abstraction has 85 states and 120 transitions. [2020-07-28 19:03:40,472 INFO L480 AbstractCegarLoop]: Interpolant automaton has 2 states. [2020-07-28 19:03:40,473 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 120 transitions. [2020-07-28 19:03:40,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2020-07-28 19:03:40,474 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:40,474 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:03:40,475 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-28 19:03:40,475 INFO L427 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:40,475 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:40,476 INFO L82 PathProgramCache]: Analyzing trace with hash -117082960, now seen corresponding path program 1 times [2020-07-28 19:03:40,476 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:40,476 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [342847887] [2020-07-28 19:03:40,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:40,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:40,634 INFO L280 TraceCheckUtils]: 0: Hoare triple {632#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {632#true} is VALID [2020-07-28 19:03:40,635 INFO L280 TraceCheckUtils]: 1: Hoare triple {632#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {632#true} is VALID [2020-07-28 19:03:40,635 INFO L280 TraceCheckUtils]: 2: Hoare triple {632#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {632#true} is VALID [2020-07-28 19:03:40,635 INFO L280 TraceCheckUtils]: 3: Hoare triple {632#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {632#true} is VALID [2020-07-28 19:03:40,636 INFO L280 TraceCheckUtils]: 4: Hoare triple {632#true} assume 0 != main_~tmp~4; {632#true} is VALID [2020-07-28 19:03:40,639 INFO L280 TraceCheckUtils]: 5: Hoare triple {632#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {634#(= 0 ULTIMATE.start_test_~splverifierCounter~0)} is VALID [2020-07-28 19:03:40,640 INFO L280 TraceCheckUtils]: 6: Hoare triple {634#(= 0 ULTIMATE.start_test_~splverifierCounter~0)} assume !false; {634#(= 0 ULTIMATE.start_test_~splverifierCounter~0)} is VALID [2020-07-28 19:03:40,641 INFO L280 TraceCheckUtils]: 7: Hoare triple {634#(= 0 ULTIMATE.start_test_~splverifierCounter~0)} assume !(test_~splverifierCounter~0 < 4); {633#false} is VALID [2020-07-28 19:03:40,642 INFO L280 TraceCheckUtils]: 8: Hoare triple {633#false} havoc cleanup_~i~0, cleanup_~__cil_tmp2~0;havoc cleanup_~i~0;havoc cleanup_~__cil_tmp2~0; {633#false} is VALID [2020-07-28 19:03:40,642 INFO L280 TraceCheckUtils]: 9: Hoare triple {633#false} assume !(0 != ~pumpRunning~0); {633#false} is VALID [2020-07-28 19:03:40,642 INFO L280 TraceCheckUtils]: 10: Hoare triple {633#false} assume !(0 != ~systemActive~0); {633#false} is VALID [2020-07-28 19:03:40,643 INFO L280 TraceCheckUtils]: 11: Hoare triple {633#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {633#false} is VALID [2020-07-28 19:03:40,643 INFO L280 TraceCheckUtils]: 12: Hoare triple {633#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {633#false} is VALID [2020-07-28 19:03:40,645 INFO L280 TraceCheckUtils]: 13: Hoare triple {633#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {633#false} is VALID [2020-07-28 19:03:40,645 INFO L280 TraceCheckUtils]: 14: Hoare triple {633#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {633#false} is VALID [2020-07-28 19:03:40,645 INFO L280 TraceCheckUtils]: 15: Hoare triple {633#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {633#false} is VALID [2020-07-28 19:03:40,646 INFO L280 TraceCheckUtils]: 16: Hoare triple {633#false} assume !false; {633#false} is VALID [2020-07-28 19:03:40,648 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:40,650 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [342847887] [2020-07-28 19:03:40,651 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:40,651 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-28 19:03:40,652 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [801857670] [2020-07-28 19:03:40,654 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 17 [2020-07-28 19:03:40,654 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:40,654 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-28 19:03:40,697 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:40,697 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-28 19:03:40,698 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:40,699 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-28 19:03:40,699 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-28 19:03:40,699 INFO L87 Difference]: Start difference. First operand 85 states and 120 transitions. Second operand 3 states. [2020-07-28 19:03:40,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:40,938 INFO L93 Difference]: Finished difference Result 85 states and 120 transitions. [2020-07-28 19:03:40,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-28 19:03:40,938 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 17 [2020-07-28 19:03:40,939 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:40,939 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-28 19:03:40,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 120 transitions. [2020-07-28 19:03:40,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-28 19:03:40,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 120 transitions. [2020-07-28 19:03:40,945 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 120 transitions. [2020-07-28 19:03:41,147 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:41,149 INFO L225 Difference]: With dead ends: 85 [2020-07-28 19:03:41,149 INFO L226 Difference]: Without dead ends: 39 [2020-07-28 19:03:41,152 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-28 19:03:41,152 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2020-07-28 19:03:41,177 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2020-07-28 19:03:41,178 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:41,178 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 39 states. [2020-07-28 19:03:41,178 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 39 states. [2020-07-28 19:03:41,178 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 39 states. [2020-07-28 19:03:41,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:41,180 INFO L93 Difference]: Finished difference Result 39 states and 55 transitions. [2020-07-28 19:03:41,181 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 55 transitions. [2020-07-28 19:03:41,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:41,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:41,182 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 39 states. [2020-07-28 19:03:41,182 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 39 states. [2020-07-28 19:03:41,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:41,184 INFO L93 Difference]: Finished difference Result 39 states and 55 transitions. [2020-07-28 19:03:41,184 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 55 transitions. [2020-07-28 19:03:41,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:41,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:41,186 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:41,186 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:41,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2020-07-28 19:03:41,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 55 transitions. [2020-07-28 19:03:41,188 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 55 transitions. Word has length 17 [2020-07-28 19:03:41,188 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:41,189 INFO L479 AbstractCegarLoop]: Abstraction has 39 states and 55 transitions. [2020-07-28 19:03:41,189 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-28 19:03:41,189 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 55 transitions. [2020-07-28 19:03:41,192 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2020-07-28 19:03:41,192 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:41,192 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:03:41,193 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-28 19:03:41,193 INFO L427 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:41,193 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:41,194 INFO L82 PathProgramCache]: Analyzing trace with hash 337421565, now seen corresponding path program 1 times [2020-07-28 19:03:41,194 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:41,195 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [448618563] [2020-07-28 19:03:41,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:41,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:41,362 INFO L280 TraceCheckUtils]: 0: Hoare triple {891#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {893#(= 1 ~systemActive~0)} is VALID [2020-07-28 19:03:41,363 INFO L280 TraceCheckUtils]: 1: Hoare triple {893#(= 1 ~systemActive~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {893#(= 1 ~systemActive~0)} is VALID [2020-07-28 19:03:41,364 INFO L280 TraceCheckUtils]: 2: Hoare triple {893#(= 1 ~systemActive~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {894#(= |ULTIMATE.start_valid_product_#res| ~systemActive~0)} is VALID [2020-07-28 19:03:41,365 INFO L280 TraceCheckUtils]: 3: Hoare triple {894#(= |ULTIMATE.start_valid_product_#res| ~systemActive~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {895#(= ULTIMATE.start_main_~tmp~4 ~systemActive~0)} is VALID [2020-07-28 19:03:41,366 INFO L280 TraceCheckUtils]: 4: Hoare triple {895#(= ULTIMATE.start_main_~tmp~4 ~systemActive~0)} assume 0 != main_~tmp~4; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,366 INFO L280 TraceCheckUtils]: 5: Hoare triple {896#(not (= 0 ~systemActive~0))} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,367 INFO L280 TraceCheckUtils]: 6: Hoare triple {896#(not (= 0 ~systemActive~0))} assume !false; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,368 INFO L280 TraceCheckUtils]: 7: Hoare triple {896#(not (= 0 ~systemActive~0))} assume test_~splverifierCounter~0 < 4; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,368 INFO L280 TraceCheckUtils]: 8: Hoare triple {896#(not (= 0 ~systemActive~0))} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,369 INFO L280 TraceCheckUtils]: 9: Hoare triple {896#(not (= 0 ~systemActive~0))} assume !(0 != test_~tmp~0); {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,369 INFO L280 TraceCheckUtils]: 10: Hoare triple {896#(not (= 0 ~systemActive~0))} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,370 INFO L280 TraceCheckUtils]: 11: Hoare triple {896#(not (= 0 ~systemActive~0))} assume !(0 != test_~tmp___0~0); {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,373 INFO L280 TraceCheckUtils]: 12: Hoare triple {896#(not (= 0 ~systemActive~0))} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,374 INFO L280 TraceCheckUtils]: 13: Hoare triple {896#(not (= 0 ~systemActive~0))} assume 0 != test_~tmp___2~0; {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,376 INFO L280 TraceCheckUtils]: 14: Hoare triple {896#(not (= 0 ~systemActive~0))} assume !(0 != ~pumpRunning~0); {896#(not (= 0 ~systemActive~0))} is VALID [2020-07-28 19:03:41,377 INFO L280 TraceCheckUtils]: 15: Hoare triple {896#(not (= 0 ~systemActive~0))} assume !(0 != ~systemActive~0); {892#false} is VALID [2020-07-28 19:03:41,378 INFO L280 TraceCheckUtils]: 16: Hoare triple {892#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {892#false} is VALID [2020-07-28 19:03:41,378 INFO L280 TraceCheckUtils]: 17: Hoare triple {892#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {892#false} is VALID [2020-07-28 19:03:41,378 INFO L280 TraceCheckUtils]: 18: Hoare triple {892#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {892#false} is VALID [2020-07-28 19:03:41,379 INFO L280 TraceCheckUtils]: 19: Hoare triple {892#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {892#false} is VALID [2020-07-28 19:03:41,379 INFO L280 TraceCheckUtils]: 20: Hoare triple {892#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {892#false} is VALID [2020-07-28 19:03:41,380 INFO L280 TraceCheckUtils]: 21: Hoare triple {892#false} assume !false; {892#false} is VALID [2020-07-28 19:03:41,381 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:41,382 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [448618563] [2020-07-28 19:03:41,382 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:41,382 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-28 19:03:41,383 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1084239610] [2020-07-28 19:03:41,383 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 22 [2020-07-28 19:03:41,384 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:41,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-28 19:03:41,417 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:41,418 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-28 19:03:41,418 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:41,418 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-28 19:03:41,419 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-28 19:03:41,419 INFO L87 Difference]: Start difference. First operand 39 states and 55 transitions. Second operand 6 states. [2020-07-28 19:03:42,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:42,151 INFO L93 Difference]: Finished difference Result 128 states and 187 transitions. [2020-07-28 19:03:42,151 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-28 19:03:42,152 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 22 [2020-07-28 19:03:42,152 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:42,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:03:42,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 187 transitions. [2020-07-28 19:03:42,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:03:42,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 187 transitions. [2020-07-28 19:03:42,158 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 187 transitions. [2020-07-28 19:03:42,380 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 187 edges. 187 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:42,386 INFO L225 Difference]: With dead ends: 128 [2020-07-28 19:03:42,387 INFO L226 Difference]: Without dead ends: 95 [2020-07-28 19:03:42,387 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2020-07-28 19:03:42,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2020-07-28 19:03:42,445 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 58. [2020-07-28 19:03:42,445 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:42,445 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand 58 states. [2020-07-28 19:03:42,445 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand 58 states. [2020-07-28 19:03:42,446 INFO L87 Difference]: Start difference. First operand 95 states. Second operand 58 states. [2020-07-28 19:03:42,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:42,450 INFO L93 Difference]: Finished difference Result 95 states and 136 transitions. [2020-07-28 19:03:42,450 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 136 transitions. [2020-07-28 19:03:42,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:42,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:42,452 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 95 states. [2020-07-28 19:03:42,452 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 95 states. [2020-07-28 19:03:42,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:42,456 INFO L93 Difference]: Finished difference Result 95 states and 136 transitions. [2020-07-28 19:03:42,457 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 136 transitions. [2020-07-28 19:03:42,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:42,458 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:42,458 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:42,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:42,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 58 states. [2020-07-28 19:03:42,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 84 transitions. [2020-07-28 19:03:42,461 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 84 transitions. Word has length 22 [2020-07-28 19:03:42,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:42,461 INFO L479 AbstractCegarLoop]: Abstraction has 58 states and 84 transitions. [2020-07-28 19:03:42,462 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-28 19:03:42,462 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 84 transitions. [2020-07-28 19:03:42,462 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2020-07-28 19:03:42,463 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:42,463 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-28 19:03:42,463 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-28 19:03:42,463 INFO L427 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:42,464 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:42,464 INFO L82 PathProgramCache]: Analyzing trace with hash -1224569535, now seen corresponding path program 1 times [2020-07-28 19:03:42,464 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:42,465 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [608060904] [2020-07-28 19:03:42,465 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:42,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:42,529 INFO L280 TraceCheckUtils]: 0: Hoare triple {1354#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,530 INFO L280 TraceCheckUtils]: 1: Hoare triple {1356#(= 0 ~pumpRunning~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,531 INFO L280 TraceCheckUtils]: 2: Hoare triple {1356#(= 0 ~pumpRunning~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,532 INFO L280 TraceCheckUtils]: 3: Hoare triple {1356#(= 0 ~pumpRunning~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,532 INFO L280 TraceCheckUtils]: 4: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume 0 != main_~tmp~4; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,533 INFO L280 TraceCheckUtils]: 5: Hoare triple {1356#(= 0 ~pumpRunning~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,534 INFO L280 TraceCheckUtils]: 6: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume !false; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,534 INFO L280 TraceCheckUtils]: 7: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume test_~splverifierCounter~0 < 4; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,535 INFO L280 TraceCheckUtils]: 8: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,535 INFO L280 TraceCheckUtils]: 9: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume !(0 != test_~tmp~0); {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,536 INFO L280 TraceCheckUtils]: 10: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,537 INFO L280 TraceCheckUtils]: 11: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume !(0 != test_~tmp___0~0); {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,537 INFO L280 TraceCheckUtils]: 12: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,538 INFO L280 TraceCheckUtils]: 13: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume 0 != test_~tmp___2~0; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,539 INFO L280 TraceCheckUtils]: 14: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume !(0 != ~pumpRunning~0); {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,539 INFO L280 TraceCheckUtils]: 15: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {1356#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:42,540 INFO L280 TraceCheckUtils]: 16: Hoare triple {1356#(= 0 ~pumpRunning~0)} assume !(0 == ~pumpRunning~0); {1355#false} is VALID [2020-07-28 19:03:42,540 INFO L280 TraceCheckUtils]: 17: Hoare triple {1355#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {1355#false} is VALID [2020-07-28 19:03:42,540 INFO L280 TraceCheckUtils]: 18: Hoare triple {1355#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {1355#false} is VALID [2020-07-28 19:03:42,541 INFO L280 TraceCheckUtils]: 19: Hoare triple {1355#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {1355#false} is VALID [2020-07-28 19:03:42,541 INFO L280 TraceCheckUtils]: 20: Hoare triple {1355#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {1355#false} is VALID [2020-07-28 19:03:42,541 INFO L280 TraceCheckUtils]: 21: Hoare triple {1355#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {1355#false} is VALID [2020-07-28 19:03:42,542 INFO L280 TraceCheckUtils]: 22: Hoare triple {1355#false} assume !false; {1355#false} is VALID [2020-07-28 19:03:42,543 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:42,543 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [608060904] [2020-07-28 19:03:42,543 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:42,543 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2020-07-28 19:03:42,544 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [399265718] [2020-07-28 19:03:42,544 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 23 [2020-07-28 19:03:42,545 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:42,545 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-28 19:03:42,573 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:42,573 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-28 19:03:42,573 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:42,574 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-28 19:03:42,574 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-28 19:03:42,574 INFO L87 Difference]: Start difference. First operand 58 states and 84 transitions. Second operand 3 states. [2020-07-28 19:03:42,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:42,807 INFO L93 Difference]: Finished difference Result 131 states and 192 transitions. [2020-07-28 19:03:42,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-28 19:03:42,808 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 23 [2020-07-28 19:03:42,808 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:42,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-28 19:03:42,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 136 transitions. [2020-07-28 19:03:42,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-28 19:03:42,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 136 transitions. [2020-07-28 19:03:42,813 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 136 transitions. [2020-07-28 19:03:42,952 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:42,955 INFO L225 Difference]: With dead ends: 131 [2020-07-28 19:03:42,955 INFO L226 Difference]: Without dead ends: 79 [2020-07-28 19:03:42,956 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-28 19:03:42,957 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2020-07-28 19:03:43,052 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 77. [2020-07-28 19:03:43,052 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:43,052 INFO L82 GeneralOperation]: Start isEquivalent. First operand 79 states. Second operand 77 states. [2020-07-28 19:03:43,053 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand 77 states. [2020-07-28 19:03:43,053 INFO L87 Difference]: Start difference. First operand 79 states. Second operand 77 states. [2020-07-28 19:03:43,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:43,057 INFO L93 Difference]: Finished difference Result 79 states and 110 transitions. [2020-07-28 19:03:43,057 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 110 transitions. [2020-07-28 19:03:43,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:43,058 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:43,058 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 79 states. [2020-07-28 19:03:43,059 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 79 states. [2020-07-28 19:03:43,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:43,063 INFO L93 Difference]: Finished difference Result 79 states and 110 transitions. [2020-07-28 19:03:43,063 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 110 transitions. [2020-07-28 19:03:43,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:43,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:43,064 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:43,064 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:43,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 77 states. [2020-07-28 19:03:43,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 109 transitions. [2020-07-28 19:03:43,068 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 109 transitions. Word has length 23 [2020-07-28 19:03:43,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:43,068 INFO L479 AbstractCegarLoop]: Abstraction has 77 states and 109 transitions. [2020-07-28 19:03:43,068 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-28 19:03:43,069 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 109 transitions. [2020-07-28 19:03:43,069 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2020-07-28 19:03:43,070 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:43,070 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-28 19:03:43,070 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-28 19:03:43,070 INFO L427 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:43,071 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:43,071 INFO L82 PathProgramCache]: Analyzing trace with hash -840484654, now seen corresponding path program 1 times [2020-07-28 19:03:43,071 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:43,072 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917918510] [2020-07-28 19:03:43,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:43,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:43,167 INFO L280 TraceCheckUtils]: 0: Hoare triple {1810#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,168 INFO L280 TraceCheckUtils]: 1: Hoare triple {1812#(= 1 ~waterLevel~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,169 INFO L280 TraceCheckUtils]: 2: Hoare triple {1812#(= 1 ~waterLevel~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,170 INFO L280 TraceCheckUtils]: 3: Hoare triple {1812#(= 1 ~waterLevel~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,171 INFO L280 TraceCheckUtils]: 4: Hoare triple {1812#(= 1 ~waterLevel~0)} assume 0 != main_~tmp~4; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,171 INFO L280 TraceCheckUtils]: 5: Hoare triple {1812#(= 1 ~waterLevel~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,172 INFO L280 TraceCheckUtils]: 6: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !false; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,173 INFO L280 TraceCheckUtils]: 7: Hoare triple {1812#(= 1 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,173 INFO L280 TraceCheckUtils]: 8: Hoare triple {1812#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,174 INFO L280 TraceCheckUtils]: 9: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != test_~tmp~0); {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,175 INFO L280 TraceCheckUtils]: 10: Hoare triple {1812#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,175 INFO L280 TraceCheckUtils]: 11: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,176 INFO L280 TraceCheckUtils]: 12: Hoare triple {1812#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,177 INFO L280 TraceCheckUtils]: 13: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != test_~tmp___2~0);assume -2147483648 <= test_#t~nondet3 && test_#t~nondet3 <= 2147483647;test_~tmp___1~0 := test_#t~nondet3;havoc test_#t~nondet3; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,178 INFO L280 TraceCheckUtils]: 14: Hoare triple {1812#(= 1 ~waterLevel~0)} assume 0 != test_~tmp___1~0; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,178 INFO L280 TraceCheckUtils]: 15: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != ~pumpRunning~0); {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,179 INFO L280 TraceCheckUtils]: 16: Hoare triple {1812#(= 1 ~waterLevel~0)} ~systemActive~0 := 0; {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,180 INFO L280 TraceCheckUtils]: 17: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != ~pumpRunning~0); {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,180 INFO L280 TraceCheckUtils]: 18: Hoare triple {1812#(= 1 ~waterLevel~0)} assume !(0 != ~systemActive~0); {1812#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:43,181 INFO L280 TraceCheckUtils]: 19: Hoare triple {1812#(= 1 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {1813#(= 1 |ULTIMATE.start_getWaterLevel_#res|)} is VALID [2020-07-28 19:03:43,182 INFO L280 TraceCheckUtils]: 20: Hoare triple {1813#(= 1 |ULTIMATE.start_getWaterLevel_#res|)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {1814#(= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} is VALID [2020-07-28 19:03:43,183 INFO L280 TraceCheckUtils]: 21: Hoare triple {1814#(= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {1811#false} is VALID [2020-07-28 19:03:43,183 INFO L280 TraceCheckUtils]: 22: Hoare triple {1811#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {1811#false} is VALID [2020-07-28 19:03:43,184 INFO L280 TraceCheckUtils]: 23: Hoare triple {1811#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {1811#false} is VALID [2020-07-28 19:03:43,184 INFO L280 TraceCheckUtils]: 24: Hoare triple {1811#false} assume !false; {1811#false} is VALID [2020-07-28 19:03:43,185 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:43,186 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1917918510] [2020-07-28 19:03:43,186 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:43,186 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-28 19:03:43,186 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [428870055] [2020-07-28 19:03:43,187 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 25 [2020-07-28 19:03:43,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:43,187 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-28 19:03:43,221 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:43,222 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-28 19:03:43,222 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:43,222 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-28 19:03:43,222 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-28 19:03:43,223 INFO L87 Difference]: Start difference. First operand 77 states and 109 transitions. Second operand 5 states. [2020-07-28 19:03:44,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:44,161 INFO L93 Difference]: Finished difference Result 281 states and 406 transitions. [2020-07-28 19:03:44,161 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-28 19:03:44,161 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 25 [2020-07-28 19:03:44,161 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:44,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:44,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 220 transitions. [2020-07-28 19:03:44,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:44,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 220 transitions. [2020-07-28 19:03:44,169 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 220 transitions. [2020-07-28 19:03:44,451 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 220 edges. 220 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:44,458 INFO L225 Difference]: With dead ends: 281 [2020-07-28 19:03:44,458 INFO L226 Difference]: Without dead ends: 210 [2020-07-28 19:03:44,460 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2020-07-28 19:03:44,460 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2020-07-28 19:03:44,648 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 138. [2020-07-28 19:03:44,649 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:44,649 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand 138 states. [2020-07-28 19:03:44,649 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand 138 states. [2020-07-28 19:03:44,649 INFO L87 Difference]: Start difference. First operand 210 states. Second operand 138 states. [2020-07-28 19:03:44,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:44,658 INFO L93 Difference]: Finished difference Result 210 states and 293 transitions. [2020-07-28 19:03:44,658 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 293 transitions. [2020-07-28 19:03:44,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:44,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:44,659 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 210 states. [2020-07-28 19:03:44,659 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 210 states. [2020-07-28 19:03:44,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:44,667 INFO L93 Difference]: Finished difference Result 210 states and 293 transitions. [2020-07-28 19:03:44,667 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 293 transitions. [2020-07-28 19:03:44,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:44,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:44,669 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:44,669 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:44,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 138 states. [2020-07-28 19:03:44,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 191 transitions. [2020-07-28 19:03:44,674 INFO L78 Accepts]: Start accepts. Automaton has 138 states and 191 transitions. Word has length 25 [2020-07-28 19:03:44,676 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:44,676 INFO L479 AbstractCegarLoop]: Abstraction has 138 states and 191 transitions. [2020-07-28 19:03:44,677 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-28 19:03:44,677 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 191 transitions. [2020-07-28 19:03:44,677 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2020-07-28 19:03:44,678 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:44,678 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-28 19:03:44,678 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-28 19:03:44,678 INFO L427 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:44,679 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:44,679 INFO L82 PathProgramCache]: Analyzing trace with hash 1495173652, now seen corresponding path program 1 times [2020-07-28 19:03:44,679 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:44,679 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1311085971] [2020-07-28 19:03:44,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:44,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:44,754 INFO L280 TraceCheckUtils]: 0: Hoare triple {2840#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,755 INFO L280 TraceCheckUtils]: 1: Hoare triple {2842#(= 0 ~pumpRunning~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,756 INFO L280 TraceCheckUtils]: 2: Hoare triple {2842#(= 0 ~pumpRunning~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,756 INFO L280 TraceCheckUtils]: 3: Hoare triple {2842#(= 0 ~pumpRunning~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,757 INFO L280 TraceCheckUtils]: 4: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume 0 != main_~tmp~4; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,758 INFO L280 TraceCheckUtils]: 5: Hoare triple {2842#(= 0 ~pumpRunning~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,758 INFO L280 TraceCheckUtils]: 6: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !false; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,759 INFO L280 TraceCheckUtils]: 7: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume test_~splverifierCounter~0 < 4; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,759 INFO L280 TraceCheckUtils]: 8: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,760 INFO L280 TraceCheckUtils]: 9: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume 0 != test_~tmp~0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,761 INFO L280 TraceCheckUtils]: 10: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,761 INFO L280 TraceCheckUtils]: 11: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,762 INFO L280 TraceCheckUtils]: 12: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !(0 != test_~tmp___0~0); {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,763 INFO L280 TraceCheckUtils]: 13: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,763 INFO L280 TraceCheckUtils]: 14: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !(0 != test_~tmp___2~0);assume -2147483648 <= test_#t~nondet3 && test_#t~nondet3 <= 2147483647;test_~tmp___1~0 := test_#t~nondet3;havoc test_#t~nondet3; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,764 INFO L280 TraceCheckUtils]: 15: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume 0 != test_~tmp___1~0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,764 INFO L280 TraceCheckUtils]: 16: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !(0 != ~pumpRunning~0); {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,765 INFO L280 TraceCheckUtils]: 17: Hoare triple {2842#(= 0 ~pumpRunning~0)} ~systemActive~0 := 0; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,766 INFO L280 TraceCheckUtils]: 18: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !(0 != ~pumpRunning~0); {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,766 INFO L280 TraceCheckUtils]: 19: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume !(0 != ~systemActive~0); {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,767 INFO L280 TraceCheckUtils]: 20: Hoare triple {2842#(= 0 ~pumpRunning~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,776 INFO L280 TraceCheckUtils]: 21: Hoare triple {2842#(= 0 ~pumpRunning~0)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {2842#(= 0 ~pumpRunning~0)} is VALID [2020-07-28 19:03:44,777 INFO L280 TraceCheckUtils]: 22: Hoare triple {2842#(= 0 ~pumpRunning~0)} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {2843#(= 0 |ULTIMATE.start_isPumpRunning_#res|)} is VALID [2020-07-28 19:03:44,777 INFO L280 TraceCheckUtils]: 23: Hoare triple {2843#(= 0 |ULTIMATE.start_isPumpRunning_#res|)} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {2844#(= 0 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp___0~2)} is VALID [2020-07-28 19:03:44,778 INFO L280 TraceCheckUtils]: 24: Hoare triple {2844#(= 0 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp___0~2)} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {2841#false} is VALID [2020-07-28 19:03:44,778 INFO L280 TraceCheckUtils]: 25: Hoare triple {2841#false} assume !false; {2841#false} is VALID [2020-07-28 19:03:44,780 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:44,780 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1311085971] [2020-07-28 19:03:44,780 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:44,780 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-28 19:03:44,780 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2013438811] [2020-07-28 19:03:44,781 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 26 [2020-07-28 19:03:44,781 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:44,781 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-28 19:03:44,814 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:44,814 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-28 19:03:44,814 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:44,815 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-28 19:03:44,815 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-28 19:03:44,815 INFO L87 Difference]: Start difference. First operand 138 states and 191 transitions. Second operand 5 states. [2020-07-28 19:03:45,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:45,783 INFO L93 Difference]: Finished difference Result 277 states and 391 transitions. [2020-07-28 19:03:45,783 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2020-07-28 19:03:45,783 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 26 [2020-07-28 19:03:45,784 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:45,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:45,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 238 transitions. [2020-07-28 19:03:45,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:45,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 238 transitions. [2020-07-28 19:03:45,790 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 238 transitions. [2020-07-28 19:03:46,077 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 238 edges. 238 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:46,086 INFO L225 Difference]: With dead ends: 277 [2020-07-28 19:03:46,087 INFO L226 Difference]: Without dead ends: 275 [2020-07-28 19:03:46,088 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2020-07-28 19:03:46,089 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2020-07-28 19:03:46,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 138. [2020-07-28 19:03:46,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:46,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 275 states. Second operand 138 states. [2020-07-28 19:03:46,335 INFO L74 IsIncluded]: Start isIncluded. First operand 275 states. Second operand 138 states. [2020-07-28 19:03:46,335 INFO L87 Difference]: Start difference. First operand 275 states. Second operand 138 states. [2020-07-28 19:03:46,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:46,345 INFO L93 Difference]: Finished difference Result 275 states and 388 transitions. [2020-07-28 19:03:46,346 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 388 transitions. [2020-07-28 19:03:46,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:46,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:46,347 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 275 states. [2020-07-28 19:03:46,347 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 275 states. [2020-07-28 19:03:46,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:46,357 INFO L93 Difference]: Finished difference Result 275 states and 388 transitions. [2020-07-28 19:03:46,357 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 388 transitions. [2020-07-28 19:03:46,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:46,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:46,359 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:46,359 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:46,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 138 states. [2020-07-28 19:03:46,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 138 states to 138 states and 189 transitions. [2020-07-28 19:03:46,364 INFO L78 Accepts]: Start accepts. Automaton has 138 states and 189 transitions. Word has length 26 [2020-07-28 19:03:46,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:46,364 INFO L479 AbstractCegarLoop]: Abstraction has 138 states and 189 transitions. [2020-07-28 19:03:46,364 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-28 19:03:46,365 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 189 transitions. [2020-07-28 19:03:46,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2020-07-28 19:03:46,366 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:46,366 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-28 19:03:46,366 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-28 19:03:46,366 INFO L427 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:46,367 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:46,367 INFO L82 PathProgramCache]: Analyzing trace with hash -1499969411, now seen corresponding path program 1 times [2020-07-28 19:03:46,367 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:46,368 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1547593421] [2020-07-28 19:03:46,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:46,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:46,436 INFO L280 TraceCheckUtils]: 0: Hoare triple {3994#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,437 INFO L280 TraceCheckUtils]: 1: Hoare triple {3996#(= 1 ~waterLevel~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,438 INFO L280 TraceCheckUtils]: 2: Hoare triple {3996#(= 1 ~waterLevel~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,438 INFO L280 TraceCheckUtils]: 3: Hoare triple {3996#(= 1 ~waterLevel~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,439 INFO L280 TraceCheckUtils]: 4: Hoare triple {3996#(= 1 ~waterLevel~0)} assume 0 != main_~tmp~4; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,440 INFO L280 TraceCheckUtils]: 5: Hoare triple {3996#(= 1 ~waterLevel~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,441 INFO L280 TraceCheckUtils]: 6: Hoare triple {3996#(= 1 ~waterLevel~0)} assume !false; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,441 INFO L280 TraceCheckUtils]: 7: Hoare triple {3996#(= 1 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,442 INFO L280 TraceCheckUtils]: 8: Hoare triple {3996#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,443 INFO L280 TraceCheckUtils]: 9: Hoare triple {3996#(= 1 ~waterLevel~0)} assume 0 != test_~tmp~0; {3996#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,444 INFO L280 TraceCheckUtils]: 10: Hoare triple {3996#(= 1 ~waterLevel~0)} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,444 INFO L280 TraceCheckUtils]: 11: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,445 INFO L280 TraceCheckUtils]: 12: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,446 INFO L280 TraceCheckUtils]: 13: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,446 INFO L280 TraceCheckUtils]: 14: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume 0 != test_~tmp___2~0; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,447 INFO L280 TraceCheckUtils]: 15: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume !(0 != ~pumpRunning~0); {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,448 INFO L280 TraceCheckUtils]: 16: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,449 INFO L280 TraceCheckUtils]: 17: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {3997#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:46,449 INFO L280 TraceCheckUtils]: 18: Hoare triple {3997#(<= 2 ~waterLevel~0)} assume ~waterLevel~0 < 2;isHighWaterSensorDry_~retValue_acc~6 := 1;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {3995#false} is VALID [2020-07-28 19:03:46,450 INFO L280 TraceCheckUtils]: 19: Hoare triple {3995#false} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {3995#false} is VALID [2020-07-28 19:03:46,450 INFO L280 TraceCheckUtils]: 20: Hoare triple {3995#false} assume 0 != isHighWaterLevel_~tmp~3;isHighWaterLevel_~tmp___0~1 := 0; {3995#false} is VALID [2020-07-28 19:03:46,450 INFO L280 TraceCheckUtils]: 21: Hoare triple {3995#false} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {3995#false} is VALID [2020-07-28 19:03:46,450 INFO L280 TraceCheckUtils]: 22: Hoare triple {3995#false} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {3995#false} is VALID [2020-07-28 19:03:46,450 INFO L280 TraceCheckUtils]: 23: Hoare triple {3995#false} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {3995#false} is VALID [2020-07-28 19:03:46,451 INFO L280 TraceCheckUtils]: 24: Hoare triple {3995#false} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {3995#false} is VALID [2020-07-28 19:03:46,451 INFO L280 TraceCheckUtils]: 25: Hoare triple {3995#false} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {3995#false} is VALID [2020-07-28 19:03:46,452 INFO L280 TraceCheckUtils]: 26: Hoare triple {3995#false} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {3995#false} is VALID [2020-07-28 19:03:46,452 INFO L280 TraceCheckUtils]: 27: Hoare triple {3995#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {3995#false} is VALID [2020-07-28 19:03:46,452 INFO L280 TraceCheckUtils]: 28: Hoare triple {3995#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {3995#false} is VALID [2020-07-28 19:03:46,452 INFO L280 TraceCheckUtils]: 29: Hoare triple {3995#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {3995#false} is VALID [2020-07-28 19:03:46,452 INFO L280 TraceCheckUtils]: 30: Hoare triple {3995#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {3995#false} is VALID [2020-07-28 19:03:46,453 INFO L280 TraceCheckUtils]: 31: Hoare triple {3995#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {3995#false} is VALID [2020-07-28 19:03:46,453 INFO L280 TraceCheckUtils]: 32: Hoare triple {3995#false} assume !false; {3995#false} is VALID [2020-07-28 19:03:46,455 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:46,455 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1547593421] [2020-07-28 19:03:46,456 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:46,456 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-28 19:03:46,456 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [726658519] [2020-07-28 19:03:46,457 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 33 [2020-07-28 19:03:46,457 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:46,457 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-28 19:03:46,498 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:46,499 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-28 19:03:46,499 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:46,499 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-28 19:03:46,499 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-28 19:03:46,500 INFO L87 Difference]: Start difference. First operand 138 states and 189 transitions. Second operand 4 states. [2020-07-28 19:03:47,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:47,295 INFO L93 Difference]: Finished difference Result 278 states and 388 transitions. [2020-07-28 19:03:47,296 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-28 19:03:47,296 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 33 [2020-07-28 19:03:47,296 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:47,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:47,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 192 transitions. [2020-07-28 19:03:47,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:47,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 192 transitions. [2020-07-28 19:03:47,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 192 transitions. [2020-07-28 19:03:47,524 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 192 edges. 192 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:47,530 INFO L225 Difference]: With dead ends: 278 [2020-07-28 19:03:47,530 INFO L226 Difference]: Without dead ends: 207 [2020-07-28 19:03:47,531 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-28 19:03:47,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2020-07-28 19:03:47,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 204. [2020-07-28 19:03:47,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:47,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 207 states. Second operand 204 states. [2020-07-28 19:03:47,862 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand 204 states. [2020-07-28 19:03:47,862 INFO L87 Difference]: Start difference. First operand 207 states. Second operand 204 states. [2020-07-28 19:03:47,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:47,871 INFO L93 Difference]: Finished difference Result 207 states and 282 transitions. [2020-07-28 19:03:47,871 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 282 transitions. [2020-07-28 19:03:47,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:47,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:47,871 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 207 states. [2020-07-28 19:03:47,872 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 207 states. [2020-07-28 19:03:47,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:47,876 INFO L93 Difference]: Finished difference Result 207 states and 282 transitions. [2020-07-28 19:03:47,876 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 282 transitions. [2020-07-28 19:03:47,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:47,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:47,877 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:47,877 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:47,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 204 states. [2020-07-28 19:03:47,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 204 states to 204 states and 280 transitions. [2020-07-28 19:03:47,881 INFO L78 Accepts]: Start accepts. Automaton has 204 states and 280 transitions. Word has length 33 [2020-07-28 19:03:47,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:47,881 INFO L479 AbstractCegarLoop]: Abstraction has 204 states and 280 transitions. [2020-07-28 19:03:47,881 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-28 19:03:47,881 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 280 transitions. [2020-07-28 19:03:47,882 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2020-07-28 19:03:47,882 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:47,882 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-28 19:03:47,883 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-28 19:03:47,883 INFO L427 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:47,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:47,883 INFO L82 PathProgramCache]: Analyzing trace with hash 1515134207, now seen corresponding path program 1 times [2020-07-28 19:03:47,884 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:47,884 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [116365668] [2020-07-28 19:03:47,885 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:47,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:47,997 INFO L280 TraceCheckUtils]: 0: Hoare triple {5095#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {5095#true} is VALID [2020-07-28 19:03:47,997 INFO L280 TraceCheckUtils]: 1: Hoare triple {5095#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {5095#true} is VALID [2020-07-28 19:03:47,997 INFO L280 TraceCheckUtils]: 2: Hoare triple {5095#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {5095#true} is VALID [2020-07-28 19:03:47,997 INFO L280 TraceCheckUtils]: 3: Hoare triple {5095#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {5095#true} is VALID [2020-07-28 19:03:47,998 INFO L280 TraceCheckUtils]: 4: Hoare triple {5095#true} assume 0 != main_~tmp~4; {5095#true} is VALID [2020-07-28 19:03:47,998 INFO L280 TraceCheckUtils]: 5: Hoare triple {5095#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {5095#true} is VALID [2020-07-28 19:03:47,999 INFO L280 TraceCheckUtils]: 6: Hoare triple {5095#true} assume !false; {5095#true} is VALID [2020-07-28 19:03:47,999 INFO L280 TraceCheckUtils]: 7: Hoare triple {5095#true} assume test_~splverifierCounter~0 < 4; {5095#true} is VALID [2020-07-28 19:03:47,999 INFO L280 TraceCheckUtils]: 8: Hoare triple {5095#true} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {5095#true} is VALID [2020-07-28 19:03:47,999 INFO L280 TraceCheckUtils]: 9: Hoare triple {5095#true} assume 0 != test_~tmp~0; {5095#true} is VALID [2020-07-28 19:03:47,999 INFO L280 TraceCheckUtils]: 10: Hoare triple {5095#true} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {5095#true} is VALID [2020-07-28 19:03:48,000 INFO L280 TraceCheckUtils]: 11: Hoare triple {5095#true} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {5095#true} is VALID [2020-07-28 19:03:48,000 INFO L280 TraceCheckUtils]: 12: Hoare triple {5095#true} assume !(0 != test_~tmp___0~0); {5095#true} is VALID [2020-07-28 19:03:48,000 INFO L280 TraceCheckUtils]: 13: Hoare triple {5095#true} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {5095#true} is VALID [2020-07-28 19:03:48,001 INFO L280 TraceCheckUtils]: 14: Hoare triple {5095#true} assume 0 != test_~tmp___2~0; {5095#true} is VALID [2020-07-28 19:03:48,001 INFO L280 TraceCheckUtils]: 15: Hoare triple {5095#true} assume !(0 != ~pumpRunning~0); {5095#true} is VALID [2020-07-28 19:03:48,001 INFO L280 TraceCheckUtils]: 16: Hoare triple {5095#true} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {5095#true} is VALID [2020-07-28 19:03:48,001 INFO L280 TraceCheckUtils]: 17: Hoare triple {5095#true} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {5095#true} is VALID [2020-07-28 19:03:48,002 INFO L280 TraceCheckUtils]: 18: Hoare triple {5095#true} assume !(~waterLevel~0 < 2);isHighWaterSensorDry_~retValue_acc~6 := 0;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {5097#(= 0 |ULTIMATE.start_isHighWaterSensorDry_#res|)} is VALID [2020-07-28 19:03:48,003 INFO L280 TraceCheckUtils]: 19: Hoare triple {5097#(= 0 |ULTIMATE.start_isHighWaterSensorDry_#res|)} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {5098#(= 0 ULTIMATE.start_isHighWaterLevel_~tmp~3)} is VALID [2020-07-28 19:03:48,004 INFO L280 TraceCheckUtils]: 20: Hoare triple {5098#(= 0 ULTIMATE.start_isHighWaterLevel_~tmp~3)} assume 0 != isHighWaterLevel_~tmp~3;isHighWaterLevel_~tmp___0~1 := 0; {5096#false} is VALID [2020-07-28 19:03:48,004 INFO L280 TraceCheckUtils]: 21: Hoare triple {5096#false} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {5096#false} is VALID [2020-07-28 19:03:48,004 INFO L280 TraceCheckUtils]: 22: Hoare triple {5096#false} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {5096#false} is VALID [2020-07-28 19:03:48,004 INFO L280 TraceCheckUtils]: 23: Hoare triple {5096#false} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {5096#false} is VALID [2020-07-28 19:03:48,005 INFO L280 TraceCheckUtils]: 24: Hoare triple {5096#false} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {5096#false} is VALID [2020-07-28 19:03:48,005 INFO L280 TraceCheckUtils]: 25: Hoare triple {5096#false} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {5096#false} is VALID [2020-07-28 19:03:48,005 INFO L280 TraceCheckUtils]: 26: Hoare triple {5096#false} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {5096#false} is VALID [2020-07-28 19:03:48,005 INFO L280 TraceCheckUtils]: 27: Hoare triple {5096#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {5096#false} is VALID [2020-07-28 19:03:48,005 INFO L280 TraceCheckUtils]: 28: Hoare triple {5096#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {5096#false} is VALID [2020-07-28 19:03:48,006 INFO L280 TraceCheckUtils]: 29: Hoare triple {5096#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {5096#false} is VALID [2020-07-28 19:03:48,006 INFO L280 TraceCheckUtils]: 30: Hoare triple {5096#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {5096#false} is VALID [2020-07-28 19:03:48,006 INFO L280 TraceCheckUtils]: 31: Hoare triple {5096#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {5096#false} is VALID [2020-07-28 19:03:48,006 INFO L280 TraceCheckUtils]: 32: Hoare triple {5096#false} assume !false; {5096#false} is VALID [2020-07-28 19:03:48,008 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:48,008 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [116365668] [2020-07-28 19:03:48,008 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:48,008 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-28 19:03:48,009 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [757762381] [2020-07-28 19:03:48,009 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 33 [2020-07-28 19:03:48,009 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:48,009 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-28 19:03:48,048 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:48,048 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-28 19:03:48,048 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:48,048 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-28 19:03:48,049 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-28 19:03:48,049 INFO L87 Difference]: Start difference. First operand 204 states and 280 transitions. Second operand 4 states. [2020-07-28 19:03:49,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:49,365 INFO L93 Difference]: Finished difference Result 588 states and 820 transitions. [2020-07-28 19:03:49,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-28 19:03:49,365 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 33 [2020-07-28 19:03:49,366 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:49,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:49,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 195 transitions. [2020-07-28 19:03:49,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:49,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 195 transitions. [2020-07-28 19:03:49,371 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 195 transitions. [2020-07-28 19:03:49,611 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:49,630 INFO L225 Difference]: With dead ends: 588 [2020-07-28 19:03:49,631 INFO L226 Difference]: Without dead ends: 450 [2020-07-28 19:03:49,632 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-28 19:03:49,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 450 states. [2020-07-28 19:03:50,068 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 450 to 204. [2020-07-28 19:03:50,068 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:50,068 INFO L82 GeneralOperation]: Start isEquivalent. First operand 450 states. Second operand 204 states. [2020-07-28 19:03:50,068 INFO L74 IsIncluded]: Start isIncluded. First operand 450 states. Second operand 204 states. [2020-07-28 19:03:50,069 INFO L87 Difference]: Start difference. First operand 450 states. Second operand 204 states. [2020-07-28 19:03:50,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:50,082 INFO L93 Difference]: Finished difference Result 450 states and 626 transitions. [2020-07-28 19:03:50,083 INFO L276 IsEmpty]: Start isEmpty. Operand 450 states and 626 transitions. [2020-07-28 19:03:50,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:50,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:50,084 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 450 states. [2020-07-28 19:03:50,084 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 450 states. [2020-07-28 19:03:50,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:50,099 INFO L93 Difference]: Finished difference Result 450 states and 626 transitions. [2020-07-28 19:03:50,099 INFO L276 IsEmpty]: Start isEmpty. Operand 450 states and 626 transitions. [2020-07-28 19:03:50,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:50,100 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:50,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:50,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:50,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 204 states. [2020-07-28 19:03:50,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 204 states to 204 states and 279 transitions. [2020-07-28 19:03:50,106 INFO L78 Accepts]: Start accepts. Automaton has 204 states and 279 transitions. Word has length 33 [2020-07-28 19:03:50,107 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:50,107 INFO L479 AbstractCegarLoop]: Abstraction has 204 states and 279 transitions. [2020-07-28 19:03:50,107 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-28 19:03:50,107 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 279 transitions. [2020-07-28 19:03:50,108 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2020-07-28 19:03:50,108 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:50,108 INFO L422 BasicCegarLoop]: trace histogram [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] [2020-07-28 19:03:50,108 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-28 19:03:50,109 INFO L427 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:50,109 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:50,109 INFO L82 PathProgramCache]: Analyzing trace with hash 928328193, now seen corresponding path program 1 times [2020-07-28 19:03:50,109 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:50,110 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [472405912] [2020-07-28 19:03:50,110 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:50,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:50,200 INFO L280 TraceCheckUtils]: 0: Hoare triple {7125#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,201 INFO L280 TraceCheckUtils]: 1: Hoare triple {7127#(= 1 ~waterLevel~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,202 INFO L280 TraceCheckUtils]: 2: Hoare triple {7127#(= 1 ~waterLevel~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,203 INFO L280 TraceCheckUtils]: 3: Hoare triple {7127#(= 1 ~waterLevel~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,203 INFO L280 TraceCheckUtils]: 4: Hoare triple {7127#(= 1 ~waterLevel~0)} assume 0 != main_~tmp~4; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,204 INFO L280 TraceCheckUtils]: 5: Hoare triple {7127#(= 1 ~waterLevel~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,205 INFO L280 TraceCheckUtils]: 6: Hoare triple {7127#(= 1 ~waterLevel~0)} assume !false; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,206 INFO L280 TraceCheckUtils]: 7: Hoare triple {7127#(= 1 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,206 INFO L280 TraceCheckUtils]: 8: Hoare triple {7127#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,207 INFO L280 TraceCheckUtils]: 9: Hoare triple {7127#(= 1 ~waterLevel~0)} assume 0 != test_~tmp~0; {7127#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,208 INFO L280 TraceCheckUtils]: 10: Hoare triple {7127#(= 1 ~waterLevel~0)} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,209 INFO L280 TraceCheckUtils]: 11: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,209 INFO L280 TraceCheckUtils]: 12: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,210 INFO L280 TraceCheckUtils]: 13: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,211 INFO L280 TraceCheckUtils]: 14: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume 0 != test_~tmp___2~0; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,211 INFO L280 TraceCheckUtils]: 15: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume !(0 != ~pumpRunning~0); {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,212 INFO L280 TraceCheckUtils]: 16: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,213 INFO L280 TraceCheckUtils]: 17: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,214 INFO L280 TraceCheckUtils]: 18: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume !(~waterLevel~0 < 2);isHighWaterSensorDry_~retValue_acc~6 := 0;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,214 INFO L280 TraceCheckUtils]: 19: Hoare triple {7128#(<= 2 ~waterLevel~0)} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,215 INFO L280 TraceCheckUtils]: 20: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume !(0 != isHighWaterLevel_~tmp~3);isHighWaterLevel_~tmp___0~1 := 1; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,216 INFO L280 TraceCheckUtils]: 21: Hoare triple {7128#(<= 2 ~waterLevel~0)} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,216 INFO L280 TraceCheckUtils]: 22: Hoare triple {7128#(<= 2 ~waterLevel~0)} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,217 INFO L280 TraceCheckUtils]: 23: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,218 INFO L280 TraceCheckUtils]: 24: Hoare triple {7128#(<= 2 ~waterLevel~0)} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,218 INFO L280 TraceCheckUtils]: 25: Hoare triple {7128#(<= 2 ~waterLevel~0)} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,219 INFO L280 TraceCheckUtils]: 26: Hoare triple {7128#(<= 2 ~waterLevel~0)} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {7128#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:50,220 INFO L280 TraceCheckUtils]: 27: Hoare triple {7128#(<= 2 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {7129#(<= 2 |ULTIMATE.start_getWaterLevel_#res|)} is VALID [2020-07-28 19:03:50,221 INFO L280 TraceCheckUtils]: 28: Hoare triple {7129#(<= 2 |ULTIMATE.start_getWaterLevel_#res|)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {7130#(<= 2 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} is VALID [2020-07-28 19:03:50,221 INFO L280 TraceCheckUtils]: 29: Hoare triple {7130#(<= 2 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {7126#false} is VALID [2020-07-28 19:03:50,222 INFO L280 TraceCheckUtils]: 30: Hoare triple {7126#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {7126#false} is VALID [2020-07-28 19:03:50,222 INFO L280 TraceCheckUtils]: 31: Hoare triple {7126#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {7126#false} is VALID [2020-07-28 19:03:50,222 INFO L280 TraceCheckUtils]: 32: Hoare triple {7126#false} assume !false; {7126#false} is VALID [2020-07-28 19:03:50,224 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:50,224 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [472405912] [2020-07-28 19:03:50,224 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:50,224 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-28 19:03:50,225 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1186344675] [2020-07-28 19:03:50,225 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 33 [2020-07-28 19:03:50,225 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:50,225 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-28 19:03:50,268 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:50,268 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-28 19:03:50,269 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:50,269 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-28 19:03:50,269 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2020-07-28 19:03:50,269 INFO L87 Difference]: Start difference. First operand 204 states and 279 transitions. Second operand 6 states. [2020-07-28 19:03:51,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:51,674 INFO L93 Difference]: Finished difference Result 390 states and 540 transitions. [2020-07-28 19:03:51,674 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-28 19:03:51,674 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 33 [2020-07-28 19:03:51,675 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:51,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:03:51,678 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 232 transitions. [2020-07-28 19:03:51,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-28 19:03:51,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 232 transitions. [2020-07-28 19:03:51,683 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 232 transitions. [2020-07-28 19:03:51,959 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:51,966 INFO L225 Difference]: With dead ends: 390 [2020-07-28 19:03:51,966 INFO L226 Difference]: Without dead ends: 252 [2020-07-28 19:03:51,967 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=24, Invalid=48, Unknown=0, NotChecked=0, Total=72 [2020-07-28 19:03:51,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 252 states. [2020-07-28 19:03:52,372 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 252 to 198. [2020-07-28 19:03:52,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:52,373 INFO L82 GeneralOperation]: Start isEquivalent. First operand 252 states. Second operand 198 states. [2020-07-28 19:03:52,373 INFO L74 IsIncluded]: Start isIncluded. First operand 252 states. Second operand 198 states. [2020-07-28 19:03:52,373 INFO L87 Difference]: Start difference. First operand 252 states. Second operand 198 states. [2020-07-28 19:03:52,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:52,380 INFO L93 Difference]: Finished difference Result 252 states and 345 transitions. [2020-07-28 19:03:52,380 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 345 transitions. [2020-07-28 19:03:52,381 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:52,381 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:52,382 INFO L74 IsIncluded]: Start isIncluded. First operand 198 states. Second operand 252 states. [2020-07-28 19:03:52,382 INFO L87 Difference]: Start difference. First operand 198 states. Second operand 252 states. [2020-07-28 19:03:52,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:52,388 INFO L93 Difference]: Finished difference Result 252 states and 345 transitions. [2020-07-28 19:03:52,388 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 345 transitions. [2020-07-28 19:03:52,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:52,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:52,389 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:52,390 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:52,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 198 states. [2020-07-28 19:03:52,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 198 states to 198 states and 269 transitions. [2020-07-28 19:03:52,395 INFO L78 Accepts]: Start accepts. Automaton has 198 states and 269 transitions. Word has length 33 [2020-07-28 19:03:52,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:52,395 INFO L479 AbstractCegarLoop]: Abstraction has 198 states and 269 transitions. [2020-07-28 19:03:52,395 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-28 19:03:52,396 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 269 transitions. [2020-07-28 19:03:52,396 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2020-07-28 19:03:52,397 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:52,397 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-28 19:03:52,397 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-28 19:03:52,398 INFO L427 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:52,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:52,398 INFO L82 PathProgramCache]: Analyzing trace with hash -108849228, now seen corresponding path program 1 times [2020-07-28 19:03:52,398 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:52,399 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1665134333] [2020-07-28 19:03:52,399 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:52,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:52,477 INFO L280 TraceCheckUtils]: 0: Hoare triple {8478#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {8478#true} is VALID [2020-07-28 19:03:52,477 INFO L280 TraceCheckUtils]: 1: Hoare triple {8478#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {8478#true} is VALID [2020-07-28 19:03:52,477 INFO L280 TraceCheckUtils]: 2: Hoare triple {8478#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {8478#true} is VALID [2020-07-28 19:03:52,478 INFO L280 TraceCheckUtils]: 3: Hoare triple {8478#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {8478#true} is VALID [2020-07-28 19:03:52,478 INFO L280 TraceCheckUtils]: 4: Hoare triple {8478#true} assume 0 != main_~tmp~4; {8478#true} is VALID [2020-07-28 19:03:52,478 INFO L280 TraceCheckUtils]: 5: Hoare triple {8478#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {8478#true} is VALID [2020-07-28 19:03:52,478 INFO L280 TraceCheckUtils]: 6: Hoare triple {8478#true} assume !false; {8478#true} is VALID [2020-07-28 19:03:52,478 INFO L280 TraceCheckUtils]: 7: Hoare triple {8478#true} assume test_~splverifierCounter~0 < 4; {8478#true} is VALID [2020-07-28 19:03:52,479 INFO L280 TraceCheckUtils]: 8: Hoare triple {8478#true} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {8478#true} is VALID [2020-07-28 19:03:52,479 INFO L280 TraceCheckUtils]: 9: Hoare triple {8478#true} assume !(0 != test_~tmp~0); {8478#true} is VALID [2020-07-28 19:03:52,479 INFO L280 TraceCheckUtils]: 10: Hoare triple {8478#true} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {8478#true} is VALID [2020-07-28 19:03:52,480 INFO L280 TraceCheckUtils]: 11: Hoare triple {8478#true} assume !(0 != test_~tmp___0~0); {8478#true} is VALID [2020-07-28 19:03:52,480 INFO L280 TraceCheckUtils]: 12: Hoare triple {8478#true} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {8478#true} is VALID [2020-07-28 19:03:52,480 INFO L280 TraceCheckUtils]: 13: Hoare triple {8478#true} assume 0 != test_~tmp___2~0; {8478#true} is VALID [2020-07-28 19:03:52,481 INFO L280 TraceCheckUtils]: 14: Hoare triple {8478#true} assume !(0 != ~pumpRunning~0); {8478#true} is VALID [2020-07-28 19:03:52,481 INFO L280 TraceCheckUtils]: 15: Hoare triple {8478#true} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {8478#true} is VALID [2020-07-28 19:03:52,481 INFO L280 TraceCheckUtils]: 16: Hoare triple {8478#true} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {8478#true} is VALID [2020-07-28 19:03:52,482 INFO L280 TraceCheckUtils]: 17: Hoare triple {8478#true} assume ~waterLevel~0 < 2;isHighWaterSensorDry_~retValue_acc~6 := 1;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {8478#true} is VALID [2020-07-28 19:03:52,482 INFO L280 TraceCheckUtils]: 18: Hoare triple {8478#true} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {8478#true} is VALID [2020-07-28 19:03:52,483 INFO L280 TraceCheckUtils]: 19: Hoare triple {8478#true} assume 0 != isHighWaterLevel_~tmp~3;isHighWaterLevel_~tmp___0~1 := 0; {8480#(= 0 ULTIMATE.start_isHighWaterLevel_~tmp___0~1)} is VALID [2020-07-28 19:03:52,484 INFO L280 TraceCheckUtils]: 20: Hoare triple {8480#(= 0 ULTIMATE.start_isHighWaterLevel_~tmp___0~1)} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {8481#(= 0 |ULTIMATE.start_isHighWaterLevel_#res|)} is VALID [2020-07-28 19:03:52,485 INFO L280 TraceCheckUtils]: 21: Hoare triple {8481#(= 0 |ULTIMATE.start_isHighWaterLevel_#res|)} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {8482#(= 0 ULTIMATE.start_processEnvironment_~tmp~1)} is VALID [2020-07-28 19:03:52,486 INFO L280 TraceCheckUtils]: 22: Hoare triple {8482#(= 0 ULTIMATE.start_processEnvironment_~tmp~1)} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {8479#false} is VALID [2020-07-28 19:03:52,486 INFO L280 TraceCheckUtils]: 23: Hoare triple {8479#false} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {8479#false} is VALID [2020-07-28 19:03:52,486 INFO L280 TraceCheckUtils]: 24: Hoare triple {8479#false} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {8479#false} is VALID [2020-07-28 19:03:52,487 INFO L280 TraceCheckUtils]: 25: Hoare triple {8479#false} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {8479#false} is VALID [2020-07-28 19:03:52,487 INFO L280 TraceCheckUtils]: 26: Hoare triple {8479#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {8479#false} is VALID [2020-07-28 19:03:52,487 INFO L280 TraceCheckUtils]: 27: Hoare triple {8479#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {8479#false} is VALID [2020-07-28 19:03:52,487 INFO L280 TraceCheckUtils]: 28: Hoare triple {8479#false} assume !(0 == __utac_acc__Specification4_spec__1_~tmp~8); {8479#false} is VALID [2020-07-28 19:03:52,487 INFO L280 TraceCheckUtils]: 29: Hoare triple {8479#false} assume !false; {8479#false} is VALID [2020-07-28 19:03:52,488 INFO L280 TraceCheckUtils]: 30: Hoare triple {8479#false} assume test_~splverifierCounter~0 < 4; {8479#false} is VALID [2020-07-28 19:03:52,488 INFO L280 TraceCheckUtils]: 31: Hoare triple {8479#false} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {8479#false} is VALID [2020-07-28 19:03:52,488 INFO L280 TraceCheckUtils]: 32: Hoare triple {8479#false} assume !(0 != test_~tmp~0); {8479#false} is VALID [2020-07-28 19:03:52,489 INFO L280 TraceCheckUtils]: 33: Hoare triple {8479#false} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {8479#false} is VALID [2020-07-28 19:03:52,489 INFO L280 TraceCheckUtils]: 34: Hoare triple {8479#false} assume !(0 != test_~tmp___0~0); {8479#false} is VALID [2020-07-28 19:03:52,489 INFO L280 TraceCheckUtils]: 35: Hoare triple {8479#false} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {8479#false} is VALID [2020-07-28 19:03:52,489 INFO L280 TraceCheckUtils]: 36: Hoare triple {8479#false} assume 0 != test_~tmp___2~0; {8479#false} is VALID [2020-07-28 19:03:52,490 INFO L280 TraceCheckUtils]: 37: Hoare triple {8479#false} assume 0 != ~pumpRunning~0; {8479#false} is VALID [2020-07-28 19:03:52,490 INFO L280 TraceCheckUtils]: 38: Hoare triple {8479#false} assume ~waterLevel~0 > 0;~waterLevel~0 := ~waterLevel~0 - 1; {8479#false} is VALID [2020-07-28 19:03:52,490 INFO L280 TraceCheckUtils]: 39: Hoare triple {8479#false} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {8479#false} is VALID [2020-07-28 19:03:52,490 INFO L280 TraceCheckUtils]: 40: Hoare triple {8479#false} assume !(0 == ~pumpRunning~0); {8479#false} is VALID [2020-07-28 19:03:52,490 INFO L280 TraceCheckUtils]: 41: Hoare triple {8479#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {8479#false} is VALID [2020-07-28 19:03:52,491 INFO L280 TraceCheckUtils]: 42: Hoare triple {8479#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {8479#false} is VALID [2020-07-28 19:03:52,491 INFO L280 TraceCheckUtils]: 43: Hoare triple {8479#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {8479#false} is VALID [2020-07-28 19:03:52,491 INFO L280 TraceCheckUtils]: 44: Hoare triple {8479#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {8479#false} is VALID [2020-07-28 19:03:52,491 INFO L280 TraceCheckUtils]: 45: Hoare triple {8479#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {8479#false} is VALID [2020-07-28 19:03:52,491 INFO L280 TraceCheckUtils]: 46: Hoare triple {8479#false} assume !false; {8479#false} is VALID [2020-07-28 19:03:52,494 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2020-07-28 19:03:52,495 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1665134333] [2020-07-28 19:03:52,495 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:52,495 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-28 19:03:52,495 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [108787361] [2020-07-28 19:03:52,496 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 47 [2020-07-28 19:03:52,496 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:52,497 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-28 19:03:52,548 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:52,548 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-28 19:03:52,548 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:52,549 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-28 19:03:52,549 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-28 19:03:52,549 INFO L87 Difference]: Start difference. First operand 198 states and 269 transitions. Second operand 5 states. [2020-07-28 19:03:54,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:54,247 INFO L93 Difference]: Finished difference Result 603 states and 820 transitions. [2020-07-28 19:03:54,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-28 19:03:54,247 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 47 [2020-07-28 19:03:54,248 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:54,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:54,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 165 transitions. [2020-07-28 19:03:54,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-28 19:03:54,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 165 transitions. [2020-07-28 19:03:54,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 165 transitions. [2020-07-28 19:03:54,436 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:54,453 INFO L225 Difference]: With dead ends: 603 [2020-07-28 19:03:54,453 INFO L226 Difference]: Without dead ends: 411 [2020-07-28 19:03:54,454 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2020-07-28 19:03:54,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 411 states. [2020-07-28 19:03:54,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 411 to 204. [2020-07-28 19:03:54,887 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:54,888 INFO L82 GeneralOperation]: Start isEquivalent. First operand 411 states. Second operand 204 states. [2020-07-28 19:03:54,888 INFO L74 IsIncluded]: Start isIncluded. First operand 411 states. Second operand 204 states. [2020-07-28 19:03:54,888 INFO L87 Difference]: Start difference. First operand 411 states. Second operand 204 states. [2020-07-28 19:03:54,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:54,900 INFO L93 Difference]: Finished difference Result 411 states and 555 transitions. [2020-07-28 19:03:54,901 INFO L276 IsEmpty]: Start isEmpty. Operand 411 states and 555 transitions. [2020-07-28 19:03:54,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:54,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:54,902 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 411 states. [2020-07-28 19:03:54,902 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 411 states. [2020-07-28 19:03:54,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:54,915 INFO L93 Difference]: Finished difference Result 411 states and 555 transitions. [2020-07-28 19:03:54,915 INFO L276 IsEmpty]: Start isEmpty. Operand 411 states and 555 transitions. [2020-07-28 19:03:54,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:54,917 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:54,917 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:54,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:54,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 204 states. [2020-07-28 19:03:54,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 204 states to 204 states and 275 transitions. [2020-07-28 19:03:54,923 INFO L78 Accepts]: Start accepts. Automaton has 204 states and 275 transitions. Word has length 47 [2020-07-28 19:03:54,923 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:54,923 INFO L479 AbstractCegarLoop]: Abstraction has 204 states and 275 transitions. [2020-07-28 19:03:54,923 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-28 19:03:54,924 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 275 transitions. [2020-07-28 19:03:54,924 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2020-07-28 19:03:54,925 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:54,925 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-28 19:03:54,925 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-28 19:03:54,925 INFO L427 AbstractCegarLoop]: === Iteration 11 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:54,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:54,926 INFO L82 PathProgramCache]: Analyzing trace with hash -618322318, now seen corresponding path program 1 times [2020-07-28 19:03:54,926 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:54,927 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1753902704] [2020-07-28 19:03:54,927 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:54,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:54,996 INFO L280 TraceCheckUtils]: 0: Hoare triple {10458#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {10458#true} is VALID [2020-07-28 19:03:54,996 INFO L280 TraceCheckUtils]: 1: Hoare triple {10458#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {10458#true} is VALID [2020-07-28 19:03:54,997 INFO L280 TraceCheckUtils]: 2: Hoare triple {10458#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {10458#true} is VALID [2020-07-28 19:03:54,997 INFO L280 TraceCheckUtils]: 3: Hoare triple {10458#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {10458#true} is VALID [2020-07-28 19:03:54,997 INFO L280 TraceCheckUtils]: 4: Hoare triple {10458#true} assume 0 != main_~tmp~4; {10458#true} is VALID [2020-07-28 19:03:54,997 INFO L280 TraceCheckUtils]: 5: Hoare triple {10458#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {10458#true} is VALID [2020-07-28 19:03:54,997 INFO L280 TraceCheckUtils]: 6: Hoare triple {10458#true} assume !false; {10458#true} is VALID [2020-07-28 19:03:54,998 INFO L280 TraceCheckUtils]: 7: Hoare triple {10458#true} assume test_~splverifierCounter~0 < 4; {10458#true} is VALID [2020-07-28 19:03:54,998 INFO L280 TraceCheckUtils]: 8: Hoare triple {10458#true} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {10458#true} is VALID [2020-07-28 19:03:54,998 INFO L280 TraceCheckUtils]: 9: Hoare triple {10458#true} assume !(0 != test_~tmp~0); {10458#true} is VALID [2020-07-28 19:03:54,998 INFO L280 TraceCheckUtils]: 10: Hoare triple {10458#true} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {10458#true} is VALID [2020-07-28 19:03:54,999 INFO L280 TraceCheckUtils]: 11: Hoare triple {10458#true} assume !(0 != test_~tmp___0~0); {10458#true} is VALID [2020-07-28 19:03:54,999 INFO L280 TraceCheckUtils]: 12: Hoare triple {10458#true} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {10458#true} is VALID [2020-07-28 19:03:54,999 INFO L280 TraceCheckUtils]: 13: Hoare triple {10458#true} assume 0 != test_~tmp___2~0; {10458#true} is VALID [2020-07-28 19:03:54,999 INFO L280 TraceCheckUtils]: 14: Hoare triple {10458#true} assume !(0 != ~pumpRunning~0); {10458#true} is VALID [2020-07-28 19:03:55,000 INFO L280 TraceCheckUtils]: 15: Hoare triple {10458#true} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {10458#true} is VALID [2020-07-28 19:03:55,000 INFO L280 TraceCheckUtils]: 16: Hoare triple {10458#true} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {10458#true} is VALID [2020-07-28 19:03:55,001 INFO L280 TraceCheckUtils]: 17: Hoare triple {10458#true} assume ~waterLevel~0 < 2;isHighWaterSensorDry_~retValue_acc~6 := 1;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {10460#(= 1 |ULTIMATE.start_isHighWaterSensorDry_#res|)} is VALID [2020-07-28 19:03:55,002 INFO L280 TraceCheckUtils]: 18: Hoare triple {10460#(= 1 |ULTIMATE.start_isHighWaterSensorDry_#res|)} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {10461#(= 1 ULTIMATE.start_isHighWaterLevel_~tmp~3)} is VALID [2020-07-28 19:03:55,003 INFO L280 TraceCheckUtils]: 19: Hoare triple {10461#(= 1 ULTIMATE.start_isHighWaterLevel_~tmp~3)} assume !(0 != isHighWaterLevel_~tmp~3);isHighWaterLevel_~tmp___0~1 := 1; {10459#false} is VALID [2020-07-28 19:03:55,003 INFO L280 TraceCheckUtils]: 20: Hoare triple {10459#false} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {10459#false} is VALID [2020-07-28 19:03:55,003 INFO L280 TraceCheckUtils]: 21: Hoare triple {10459#false} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {10459#false} is VALID [2020-07-28 19:03:55,004 INFO L280 TraceCheckUtils]: 22: Hoare triple {10459#false} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {10459#false} is VALID [2020-07-28 19:03:55,004 INFO L280 TraceCheckUtils]: 23: Hoare triple {10459#false} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {10459#false} is VALID [2020-07-28 19:03:55,004 INFO L280 TraceCheckUtils]: 24: Hoare triple {10459#false} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {10459#false} is VALID [2020-07-28 19:03:55,005 INFO L280 TraceCheckUtils]: 25: Hoare triple {10459#false} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {10459#false} is VALID [2020-07-28 19:03:55,005 INFO L280 TraceCheckUtils]: 26: Hoare triple {10459#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {10459#false} is VALID [2020-07-28 19:03:55,005 INFO L280 TraceCheckUtils]: 27: Hoare triple {10459#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {10459#false} is VALID [2020-07-28 19:03:55,005 INFO L280 TraceCheckUtils]: 28: Hoare triple {10459#false} assume !(0 == __utac_acc__Specification4_spec__1_~tmp~8); {10459#false} is VALID [2020-07-28 19:03:55,006 INFO L280 TraceCheckUtils]: 29: Hoare triple {10459#false} assume !false; {10459#false} is VALID [2020-07-28 19:03:55,006 INFO L280 TraceCheckUtils]: 30: Hoare triple {10459#false} assume test_~splverifierCounter~0 < 4; {10459#false} is VALID [2020-07-28 19:03:55,006 INFO L280 TraceCheckUtils]: 31: Hoare triple {10459#false} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {10459#false} is VALID [2020-07-28 19:03:55,006 INFO L280 TraceCheckUtils]: 32: Hoare triple {10459#false} assume !(0 != test_~tmp~0); {10459#false} is VALID [2020-07-28 19:03:55,006 INFO L280 TraceCheckUtils]: 33: Hoare triple {10459#false} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {10459#false} is VALID [2020-07-28 19:03:55,007 INFO L280 TraceCheckUtils]: 34: Hoare triple {10459#false} assume !(0 != test_~tmp___0~0); {10459#false} is VALID [2020-07-28 19:03:55,007 INFO L280 TraceCheckUtils]: 35: Hoare triple {10459#false} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {10459#false} is VALID [2020-07-28 19:03:55,007 INFO L280 TraceCheckUtils]: 36: Hoare triple {10459#false} assume 0 != test_~tmp___2~0; {10459#false} is VALID [2020-07-28 19:03:55,007 INFO L280 TraceCheckUtils]: 37: Hoare triple {10459#false} assume 0 != ~pumpRunning~0; {10459#false} is VALID [2020-07-28 19:03:55,007 INFO L280 TraceCheckUtils]: 38: Hoare triple {10459#false} assume ~waterLevel~0 > 0;~waterLevel~0 := ~waterLevel~0 - 1; {10459#false} is VALID [2020-07-28 19:03:55,008 INFO L280 TraceCheckUtils]: 39: Hoare triple {10459#false} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {10459#false} is VALID [2020-07-28 19:03:55,008 INFO L280 TraceCheckUtils]: 40: Hoare triple {10459#false} assume !(0 == ~pumpRunning~0); {10459#false} is VALID [2020-07-28 19:03:55,008 INFO L280 TraceCheckUtils]: 41: Hoare triple {10459#false} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {10459#false} is VALID [2020-07-28 19:03:55,008 INFO L280 TraceCheckUtils]: 42: Hoare triple {10459#false} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {10459#false} is VALID [2020-07-28 19:03:55,009 INFO L280 TraceCheckUtils]: 43: Hoare triple {10459#false} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {10459#false} is VALID [2020-07-28 19:03:55,009 INFO L280 TraceCheckUtils]: 44: Hoare triple {10459#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {10459#false} is VALID [2020-07-28 19:03:55,009 INFO L280 TraceCheckUtils]: 45: Hoare triple {10459#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {10459#false} is VALID [2020-07-28 19:03:55,010 INFO L280 TraceCheckUtils]: 46: Hoare triple {10459#false} assume !false; {10459#false} is VALID [2020-07-28 19:03:55,012 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2020-07-28 19:03:55,012 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1753902704] [2020-07-28 19:03:55,012 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-28 19:03:55,013 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-28 19:03:55,013 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2089259781] [2020-07-28 19:03:55,014 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 47 [2020-07-28 19:03:55,014 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:55,014 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-28 19:03:55,070 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:55,070 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-28 19:03:55,070 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:55,070 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-28 19:03:55,071 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-28 19:03:55,071 INFO L87 Difference]: Start difference. First operand 204 states and 275 transitions. Second operand 4 states. [2020-07-28 19:03:56,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:56,117 INFO L93 Difference]: Finished difference Result 455 states and 615 transitions. [2020-07-28 19:03:56,117 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-28 19:03:56,118 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 47 [2020-07-28 19:03:56,118 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:03:56,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:56,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 138 transitions. [2020-07-28 19:03:56,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-28 19:03:56,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 138 transitions. [2020-07-28 19:03:56,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 138 transitions. [2020-07-28 19:03:56,358 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:56,365 INFO L225 Difference]: With dead ends: 455 [2020-07-28 19:03:56,366 INFO L226 Difference]: Without dead ends: 257 [2020-07-28 19:03:56,367 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-28 19:03:56,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 257 states. [2020-07-28 19:03:56,849 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 257 to 176. [2020-07-28 19:03:56,850 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:03:56,850 INFO L82 GeneralOperation]: Start isEquivalent. First operand 257 states. Second operand 176 states. [2020-07-28 19:03:56,850 INFO L74 IsIncluded]: Start isIncluded. First operand 257 states. Second operand 176 states. [2020-07-28 19:03:56,850 INFO L87 Difference]: Start difference. First operand 257 states. Second operand 176 states. [2020-07-28 19:03:56,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:56,857 INFO L93 Difference]: Finished difference Result 257 states and 344 transitions. [2020-07-28 19:03:56,857 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 344 transitions. [2020-07-28 19:03:56,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:56,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:56,858 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand 257 states. [2020-07-28 19:03:56,858 INFO L87 Difference]: Start difference. First operand 176 states. Second operand 257 states. [2020-07-28 19:03:56,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:03:56,865 INFO L93 Difference]: Finished difference Result 257 states and 344 transitions. [2020-07-28 19:03:56,865 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 344 transitions. [2020-07-28 19:03:56,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:03:56,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:03:56,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:03:56,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:03:56,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 176 states. [2020-07-28 19:03:56,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 234 transitions. [2020-07-28 19:03:56,870 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 234 transitions. Word has length 47 [2020-07-28 19:03:56,871 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:03:56,871 INFO L479 AbstractCegarLoop]: Abstraction has 176 states and 234 transitions. [2020-07-28 19:03:56,871 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-28 19:03:56,871 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 234 transitions. [2020-07-28 19:03:56,872 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2020-07-28 19:03:56,892 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:03:56,892 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-28 19:03:56,892 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-28 19:03:56,893 INFO L427 AbstractCegarLoop]: === Iteration 12 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:03:56,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:03:56,894 INFO L82 PathProgramCache]: Analyzing trace with hash -423849614, now seen corresponding path program 1 times [2020-07-28 19:03:56,894 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:03:56,895 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [937310027] [2020-07-28 19:03:56,895 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:03:56,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:57,045 INFO L280 TraceCheckUtils]: 0: Hoare triple {11872#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,046 INFO L280 TraceCheckUtils]: 1: Hoare triple {11874#(= 1 ~waterLevel~0)} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,047 INFO L280 TraceCheckUtils]: 2: Hoare triple {11874#(= 1 ~waterLevel~0)} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,048 INFO L280 TraceCheckUtils]: 3: Hoare triple {11874#(= 1 ~waterLevel~0)} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,048 INFO L280 TraceCheckUtils]: 4: Hoare triple {11874#(= 1 ~waterLevel~0)} assume 0 != main_~tmp~4; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,049 INFO L280 TraceCheckUtils]: 5: Hoare triple {11874#(= 1 ~waterLevel~0)} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,050 INFO L280 TraceCheckUtils]: 6: Hoare triple {11874#(= 1 ~waterLevel~0)} assume !false; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,050 INFO L280 TraceCheckUtils]: 7: Hoare triple {11874#(= 1 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,051 INFO L280 TraceCheckUtils]: 8: Hoare triple {11874#(= 1 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,052 INFO L280 TraceCheckUtils]: 9: Hoare triple {11874#(= 1 ~waterLevel~0)} assume 0 != test_~tmp~0; {11874#(= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,053 INFO L280 TraceCheckUtils]: 10: Hoare triple {11874#(= 1 ~waterLevel~0)} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,053 INFO L280 TraceCheckUtils]: 11: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,054 INFO L280 TraceCheckUtils]: 12: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,055 INFO L280 TraceCheckUtils]: 13: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,056 INFO L280 TraceCheckUtils]: 14: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != test_~tmp___2~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,056 INFO L280 TraceCheckUtils]: 15: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != ~pumpRunning~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,057 INFO L280 TraceCheckUtils]: 16: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,059 INFO L280 TraceCheckUtils]: 17: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,059 INFO L280 TraceCheckUtils]: 18: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(~waterLevel~0 < 2);isHighWaterSensorDry_~retValue_acc~6 := 0;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,060 INFO L280 TraceCheckUtils]: 19: Hoare triple {11875#(<= 2 ~waterLevel~0)} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,061 INFO L280 TraceCheckUtils]: 20: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != isHighWaterLevel_~tmp~3);isHighWaterLevel_~tmp___0~1 := 1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,062 INFO L280 TraceCheckUtils]: 21: Hoare triple {11875#(<= 2 ~waterLevel~0)} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,063 INFO L280 TraceCheckUtils]: 22: Hoare triple {11875#(<= 2 ~waterLevel~0)} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,064 INFO L280 TraceCheckUtils]: 23: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,065 INFO L280 TraceCheckUtils]: 24: Hoare triple {11875#(<= 2 ~waterLevel~0)} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,072 INFO L280 TraceCheckUtils]: 25: Hoare triple {11875#(<= 2 ~waterLevel~0)} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,075 INFO L280 TraceCheckUtils]: 26: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,076 INFO L280 TraceCheckUtils]: 27: Hoare triple {11875#(<= 2 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,077 INFO L280 TraceCheckUtils]: 28: Hoare triple {11875#(<= 2 ~waterLevel~0)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,078 INFO L280 TraceCheckUtils]: 29: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 == __utac_acc__Specification4_spec__1_~tmp~8); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,079 INFO L280 TraceCheckUtils]: 30: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !false; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,079 INFO L280 TraceCheckUtils]: 31: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,080 INFO L280 TraceCheckUtils]: 32: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,081 INFO L280 TraceCheckUtils]: 33: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,082 INFO L280 TraceCheckUtils]: 34: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,082 INFO L280 TraceCheckUtils]: 35: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,083 INFO L280 TraceCheckUtils]: 36: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,084 INFO L280 TraceCheckUtils]: 37: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != test_~tmp___2~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,084 INFO L280 TraceCheckUtils]: 38: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != ~pumpRunning~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,085 INFO L280 TraceCheckUtils]: 39: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume ~waterLevel~0 > 0;~waterLevel~0 := ~waterLevel~0 - 1; {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,086 INFO L280 TraceCheckUtils]: 40: Hoare triple {11876#(<= 1 ~waterLevel~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,087 INFO L280 TraceCheckUtils]: 41: Hoare triple {11876#(<= 1 ~waterLevel~0)} assume !(0 == ~pumpRunning~0); {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,087 INFO L280 TraceCheckUtils]: 42: Hoare triple {11876#(<= 1 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {11877#(<= 1 |ULTIMATE.start_getWaterLevel_#res|)} is VALID [2020-07-28 19:03:57,088 INFO L280 TraceCheckUtils]: 43: Hoare triple {11877#(<= 1 |ULTIMATE.start_getWaterLevel_#res|)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {11878#(<= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} is VALID [2020-07-28 19:03:57,089 INFO L280 TraceCheckUtils]: 44: Hoare triple {11878#(<= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {11873#false} is VALID [2020-07-28 19:03:57,089 INFO L280 TraceCheckUtils]: 45: Hoare triple {11873#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {11873#false} is VALID [2020-07-28 19:03:57,089 INFO L280 TraceCheckUtils]: 46: Hoare triple {11873#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {11873#false} is VALID [2020-07-28 19:03:57,090 INFO L280 TraceCheckUtils]: 47: Hoare triple {11873#false} assume !false; {11873#false} is VALID [2020-07-28 19:03:57,093 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2020-07-28 19:03:57,095 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [937310027] [2020-07-28 19:03:57,095 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [880347666] [2020-07-28 19:03:57,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-28 19:03:57,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:57,232 INFO L263 TraceCheckSpWp]: Trace formula consists of 391 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-28 19:03:57,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-28 19:03:57,267 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-28 19:03:57,497 INFO L280 TraceCheckUtils]: 0: Hoare triple {11872#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier;call #t~string8.base, #t~string8.offset := #Ultimate.allocOnStack(13);call #t~string10.base, #t~string10.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string10.base, #t~string10.offset, 1);call write~init~int(110, #t~string10.base, 1 + #t~string10.offset, 1);call write~init~int(0, #t~string10.base, 2 + #t~string10.offset, 1);call #t~string12.base, #t~string12.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string12.base, #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 1 + #t~string12.offset, 1);call write~init~int(102, #t~string12.base, 2 + #t~string12.offset, 1);call write~init~int(0, #t~string12.base, 3 + #t~string12.offset, 1);call #t~string14.base, #t~string14.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string14.base, #t~string14.offset, 1);call write~init~int(80, #t~string14.base, 1 + #t~string14.offset, 1);call write~init~int(117, #t~string14.base, 2 + #t~string14.offset, 1);call write~init~int(109, #t~string14.base, 3 + #t~string14.offset, 1);call write~init~int(112, #t~string14.base, 4 + #t~string14.offset, 1);call write~init~int(58, #t~string14.base, 5 + #t~string14.offset, 1);call write~init~int(0, #t~string14.base, 6 + #t~string14.offset, 1);call #t~string16.base, #t~string16.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string16.base, #t~string16.offset, 1);call write~init~int(110, #t~string16.base, 1 + #t~string16.offset, 1);call write~init~int(0, #t~string16.base, 2 + #t~string16.offset, 1);call #t~string18.base, #t~string18.offset := #Ultimate.allocOnStack(4);call write~init~int(79, #t~string18.base, #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 1 + #t~string18.offset, 1);call write~init~int(102, #t~string18.base, 2 + #t~string18.offset, 1);call write~init~int(0, #t~string18.base, 3 + #t~string18.offset, 1);call #t~string20.base, #t~string20.offset := #Ultimate.allocOnStack(3);call write~init~int(41, #t~string20.base, #t~string20.offset, 1);call write~init~int(32, #t~string20.base, 1 + #t~string20.offset, 1);call write~init~int(0, #t~string20.base, 2 + #t~string20.offset, 1);call #t~string22.base, #t~string22.offset := #Ultimate.allocOnStack(2);call write~init~int(10, #t~string22.base, #t~string22.offset, 1);call write~init~int(0, #t~string22.base, 1 + #t~string22.offset, 1);call #t~string26.base, #t~string26.offset := #Ultimate.allocOnStack(13);call #t~string28.base, #t~string28.offset := #Ultimate.allocOnStack(7);call write~init~int(44, #t~string28.base, #t~string28.offset, 1);call write~init~int(77, #t~string28.base, 1 + #t~string28.offset, 1);call write~init~int(101, #t~string28.base, 2 + #t~string28.offset, 1);call write~init~int(116, #t~string28.base, 3 + #t~string28.offset, 1);call write~init~int(104, #t~string28.base, 4 + #t~string28.offset, 1);call write~init~int(58, #t~string28.base, 5 + #t~string28.offset, 1);call write~init~int(0, #t~string28.base, 6 + #t~string28.offset, 1);call #t~string30.base, #t~string30.offset := #Ultimate.allocOnStack(5);call write~init~int(67, #t~string30.base, #t~string30.offset, 1);call write~init~int(82, #t~string30.base, 1 + #t~string30.offset, 1);call write~init~int(73, #t~string30.base, 2 + #t~string30.offset, 1);call write~init~int(84, #t~string30.base, 3 + #t~string30.offset, 1);call write~init~int(0, #t~string30.base, 4 + #t~string30.offset, 1);call #t~string32.base, #t~string32.offset := #Ultimate.allocOnStack(3);call write~init~int(79, #t~string32.base, #t~string32.offset, 1);call write~init~int(75, #t~string32.base, 1 + #t~string32.offset, 1);call write~init~int(0, #t~string32.base, 2 + #t~string32.offset, 1);call #t~string34.base, #t~string34.offset := #Ultimate.allocOnStack(2);call write~init~int(41, #t~string34.base, #t~string34.offset, 1);call write~init~int(0, #t~string34.base, 1 + #t~string34.offset, 1);call #t~string54.base, #t~string54.offset := #Ultimate.allocOnStack(30);call #t~string55.base, #t~string55.offset := #Ultimate.allocOnStack(9);call #t~string56.base, #t~string56.offset := #Ultimate.allocOnStack(21);call #t~string57.base, #t~string57.offset := #Ultimate.allocOnStack(30);call #t~string58.base, #t~string58.offset := #Ultimate.allocOnStack(9);call #t~string59.base, #t~string59.offset := #Ultimate.allocOnStack(21);call #t~string63.base, #t~string63.offset := #Ultimate.allocOnStack(30);call #t~string64.base, #t~string64.offset := #Ultimate.allocOnStack(9);call #t~string65.base, #t~string65.offset := #Ultimate.allocOnStack(25);call #t~string66.base, #t~string66.offset := #Ultimate.allocOnStack(30);call #t~string67.base, #t~string67.offset := #Ultimate.allocOnStack(9);call #t~string68.base, #t~string68.offset := #Ultimate.allocOnStack(25);~pumpRunning~0 := 0;~systemActive~0 := 1;~cleanupTimeShifts~0 := 4;~waterLevel~0 := 1;~methaneLevelCritical~0 := 0;~head~0.base, ~head~0.offset := 0, 0; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 1: Hoare triple {11872#true} havoc main_#res;havoc main_#t~ret24, main_~retValue_acc~3, main_~tmp~4;havoc main_~retValue_acc~3;havoc main_~tmp~4; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 2: Hoare triple {11872#true} havoc valid_product_#res;havoc valid_product_~retValue_acc~8;havoc valid_product_~retValue_acc~8;valid_product_~retValue_acc~8 := 1;valid_product_#res := valid_product_~retValue_acc~8; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 3: Hoare triple {11872#true} main_#t~ret24 := valid_product_#res;assume -2147483648 <= main_#t~ret24 && main_#t~ret24 <= 2147483647;main_~tmp~4 := main_#t~ret24;havoc main_#t~ret24; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 4: Hoare triple {11872#true} assume 0 != main_~tmp~4; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 5: Hoare triple {11872#true} havoc test_#t~nondet0, test_#t~nondet1, test_#t~nondet2, test_#t~nondet3, test_~splverifierCounter~0, test_~tmp~0, test_~tmp___0~0, test_~tmp___1~0, test_~tmp___2~0;havoc test_~splverifierCounter~0;havoc test_~tmp~0;havoc test_~tmp___0~0;havoc test_~tmp___1~0;havoc test_~tmp___2~0;test_~splverifierCounter~0 := 0; {11872#true} is VALID [2020-07-28 19:03:57,498 INFO L280 TraceCheckUtils]: 6: Hoare triple {11872#true} assume !false; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 7: Hoare triple {11872#true} assume test_~splverifierCounter~0 < 4; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 8: Hoare triple {11872#true} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 9: Hoare triple {11872#true} assume 0 != test_~tmp~0; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 10: Hoare triple {11872#true} assume ~waterLevel~0 < 2;~waterLevel~0 := 1 + ~waterLevel~0; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 11: Hoare triple {11872#true} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {11872#true} is VALID [2020-07-28 19:03:57,499 INFO L280 TraceCheckUtils]: 12: Hoare triple {11872#true} assume !(0 != test_~tmp___0~0); {11872#true} is VALID [2020-07-28 19:03:57,500 INFO L280 TraceCheckUtils]: 13: Hoare triple {11872#true} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {11872#true} is VALID [2020-07-28 19:03:57,500 INFO L280 TraceCheckUtils]: 14: Hoare triple {11872#true} assume 0 != test_~tmp___2~0; {11872#true} is VALID [2020-07-28 19:03:57,500 INFO L280 TraceCheckUtils]: 15: Hoare triple {11872#true} assume !(0 != ~pumpRunning~0); {11872#true} is VALID [2020-07-28 19:03:57,500 INFO L280 TraceCheckUtils]: 16: Hoare triple {11872#true} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {11872#true} is VALID [2020-07-28 19:03:57,500 INFO L280 TraceCheckUtils]: 17: Hoare triple {11872#true} assume 0 == ~pumpRunning~0;havoc isHighWaterLevel_#res;havoc isHighWaterLevel_#t~ret23, isHighWaterLevel_~retValue_acc~2, isHighWaterLevel_~tmp~3, isHighWaterLevel_~tmp___0~1;havoc isHighWaterLevel_~retValue_acc~2;havoc isHighWaterLevel_~tmp~3;havoc isHighWaterLevel_~tmp___0~1;havoc isHighWaterSensorDry_#res;havoc isHighWaterSensorDry_~retValue_acc~6;havoc isHighWaterSensorDry_~retValue_acc~6; {11872#true} is VALID [2020-07-28 19:03:57,502 INFO L280 TraceCheckUtils]: 18: Hoare triple {11872#true} assume !(~waterLevel~0 < 2);isHighWaterSensorDry_~retValue_acc~6 := 0;isHighWaterSensorDry_#res := isHighWaterSensorDry_~retValue_acc~6; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,503 INFO L280 TraceCheckUtils]: 19: Hoare triple {11875#(<= 2 ~waterLevel~0)} isHighWaterLevel_#t~ret23 := isHighWaterSensorDry_#res;assume -2147483648 <= isHighWaterLevel_#t~ret23 && isHighWaterLevel_#t~ret23 <= 2147483647;isHighWaterLevel_~tmp~3 := isHighWaterLevel_#t~ret23;havoc isHighWaterLevel_#t~ret23; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,506 INFO L280 TraceCheckUtils]: 20: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != isHighWaterLevel_~tmp~3);isHighWaterLevel_~tmp___0~1 := 1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,515 INFO L280 TraceCheckUtils]: 21: Hoare triple {11875#(<= 2 ~waterLevel~0)} isHighWaterLevel_~retValue_acc~2 := isHighWaterLevel_~tmp___0~1;isHighWaterLevel_#res := isHighWaterLevel_~retValue_acc~2; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,519 INFO L280 TraceCheckUtils]: 22: Hoare triple {11875#(<= 2 ~waterLevel~0)} processEnvironment_#t~ret4 := isHighWaterLevel_#res;assume -2147483648 <= processEnvironment_#t~ret4 && processEnvironment_#t~ret4 <= 2147483647;processEnvironment_~tmp~1 := processEnvironment_#t~ret4;havoc processEnvironment_#t~ret4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,520 INFO L280 TraceCheckUtils]: 23: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != processEnvironment_~tmp~1;havoc activatePump_#t~ret5, activatePump_~tmp~2;havoc activatePump_~tmp~2;havoc isMethaneAlarm_#res;havoc isMethaneAlarm_#t~ret6, isMethaneAlarm_~retValue_acc~0;havoc isMethaneAlarm_~retValue_acc~0;havoc isMethaneLevelCritical_#res;havoc isMethaneLevelCritical_~retValue_acc~4;havoc isMethaneLevelCritical_~retValue_acc~4;isMethaneLevelCritical_~retValue_acc~4 := ~methaneLevelCritical~0;isMethaneLevelCritical_#res := isMethaneLevelCritical_~retValue_acc~4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,522 INFO L280 TraceCheckUtils]: 24: Hoare triple {11875#(<= 2 ~waterLevel~0)} isMethaneAlarm_#t~ret6 := isMethaneLevelCritical_#res;assume -2147483648 <= isMethaneAlarm_#t~ret6 && isMethaneAlarm_#t~ret6 <= 2147483647;isMethaneAlarm_~retValue_acc~0 := isMethaneAlarm_#t~ret6;havoc isMethaneAlarm_#t~ret6;isMethaneAlarm_#res := isMethaneAlarm_~retValue_acc~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,523 INFO L280 TraceCheckUtils]: 25: Hoare triple {11875#(<= 2 ~waterLevel~0)} activatePump_#t~ret5 := isMethaneAlarm_#res;assume -2147483648 <= activatePump_#t~ret5 && activatePump_#t~ret5 <= 2147483647;activatePump_~tmp~2 := activatePump_#t~ret5;havoc activatePump_#t~ret5; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,526 INFO L280 TraceCheckUtils]: 26: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != activatePump_~tmp~2);~pumpRunning~0 := 1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,527 INFO L280 TraceCheckUtils]: 27: Hoare triple {11875#(<= 2 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,527 INFO L280 TraceCheckUtils]: 28: Hoare triple {11875#(<= 2 ~waterLevel~0)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,528 INFO L280 TraceCheckUtils]: 29: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 == __utac_acc__Specification4_spec__1_~tmp~8); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,529 INFO L280 TraceCheckUtils]: 30: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !false; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,529 INFO L280 TraceCheckUtils]: 31: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume test_~splverifierCounter~0 < 4; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,530 INFO L280 TraceCheckUtils]: 32: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet0 && test_#t~nondet0 <= 2147483647;test_~tmp~0 := test_#t~nondet0;havoc test_#t~nondet0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,531 INFO L280 TraceCheckUtils]: 33: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,531 INFO L280 TraceCheckUtils]: 34: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet1 && test_#t~nondet1 <= 2147483647;test_~tmp___0~0 := test_#t~nondet1;havoc test_#t~nondet1; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,532 INFO L280 TraceCheckUtils]: 35: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume !(0 != test_~tmp___0~0); {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,533 INFO L280 TraceCheckUtils]: 36: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume -2147483648 <= test_#t~nondet2 && test_#t~nondet2 <= 2147483647;test_~tmp___2~0 := test_#t~nondet2;havoc test_#t~nondet2; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,533 INFO L280 TraceCheckUtils]: 37: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != test_~tmp___2~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,534 INFO L280 TraceCheckUtils]: 38: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume 0 != ~pumpRunning~0; {11875#(<= 2 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,535 INFO L280 TraceCheckUtils]: 39: Hoare triple {11875#(<= 2 ~waterLevel~0)} assume ~waterLevel~0 > 0;~waterLevel~0 := ~waterLevel~0 - 1; {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,540 INFO L280 TraceCheckUtils]: 40: Hoare triple {11876#(<= 1 ~waterLevel~0)} assume 0 != ~systemActive~0;havoc processEnvironment_#t~ret4, processEnvironment_~tmp~1;havoc processEnvironment_~tmp~1; {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,541 INFO L280 TraceCheckUtils]: 41: Hoare triple {11876#(<= 1 ~waterLevel~0)} assume !(0 == ~pumpRunning~0); {11876#(<= 1 ~waterLevel~0)} is VALID [2020-07-28 19:03:57,542 INFO L280 TraceCheckUtils]: 42: Hoare triple {11876#(<= 1 ~waterLevel~0)} havoc __utac_acc__Specification4_spec__1_#t~ret71, __utac_acc__Specification4_spec__1_#t~ret72, __utac_acc__Specification4_spec__1_~tmp~8, __utac_acc__Specification4_spec__1_~tmp___0~2;havoc __utac_acc__Specification4_spec__1_~tmp~8;havoc __utac_acc__Specification4_spec__1_~tmp___0~2;havoc getWaterLevel_#res;havoc getWaterLevel_~retValue_acc~5;havoc getWaterLevel_~retValue_acc~5;getWaterLevel_~retValue_acc~5 := ~waterLevel~0;getWaterLevel_#res := getWaterLevel_~retValue_acc~5; {11877#(<= 1 |ULTIMATE.start_getWaterLevel_#res|)} is VALID [2020-07-28 19:03:57,543 INFO L280 TraceCheckUtils]: 43: Hoare triple {11877#(<= 1 |ULTIMATE.start_getWaterLevel_#res|)} __utac_acc__Specification4_spec__1_#t~ret71 := getWaterLevel_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret71 && __utac_acc__Specification4_spec__1_#t~ret71 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp~8 := __utac_acc__Specification4_spec__1_#t~ret71;havoc __utac_acc__Specification4_spec__1_#t~ret71; {11878#(<= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} is VALID [2020-07-28 19:03:57,544 INFO L280 TraceCheckUtils]: 44: Hoare triple {11878#(<= 1 ULTIMATE.start___utac_acc__Specification4_spec__1_~tmp~8)} assume 0 == __utac_acc__Specification4_spec__1_~tmp~8;havoc isPumpRunning_#res;havoc isPumpRunning_~retValue_acc~1;havoc isPumpRunning_~retValue_acc~1;isPumpRunning_~retValue_acc~1 := ~pumpRunning~0;isPumpRunning_#res := isPumpRunning_~retValue_acc~1; {11873#false} is VALID [2020-07-28 19:03:57,544 INFO L280 TraceCheckUtils]: 45: Hoare triple {11873#false} __utac_acc__Specification4_spec__1_#t~ret72 := isPumpRunning_#res;assume -2147483648 <= __utac_acc__Specification4_spec__1_#t~ret72 && __utac_acc__Specification4_spec__1_#t~ret72 <= 2147483647;__utac_acc__Specification4_spec__1_~tmp___0~2 := __utac_acc__Specification4_spec__1_#t~ret72;havoc __utac_acc__Specification4_spec__1_#t~ret72; {11873#false} is VALID [2020-07-28 19:03:57,544 INFO L280 TraceCheckUtils]: 46: Hoare triple {11873#false} assume 0 != __utac_acc__Specification4_spec__1_~tmp___0~2; {11873#false} is VALID [2020-07-28 19:03:57,544 INFO L280 TraceCheckUtils]: 47: Hoare triple {11873#false} assume !false; {11873#false} is VALID [2020-07-28 19:03:57,548 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-28 19:03:57,552 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-28 19:03:57,552 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2020-07-28 19:03:57,553 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1253758516] [2020-07-28 19:03:57,553 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 48 [2020-07-28 19:03:57,554 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-28 19:03:57,554 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-28 19:03:57,637 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:03:57,637 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-28 19:03:57,638 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-28 19:03:57,638 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-28 19:03:57,638 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2020-07-28 19:03:57,639 INFO L87 Difference]: Start difference. First operand 176 states and 234 transitions. Second operand 7 states. [2020-07-28 19:04:00,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:04:00,052 INFO L93 Difference]: Finished difference Result 509 states and 697 transitions. [2020-07-28 19:04:00,053 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2020-07-28 19:04:00,053 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 48 [2020-07-28 19:04:00,054 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-28 19:04:00,054 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-28 19:04:00,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 286 transitions. [2020-07-28 19:04:00,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-28 19:04:00,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 286 transitions. [2020-07-28 19:04:00,060 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 286 transitions. [2020-07-28 19:04:00,391 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 286 edges. 286 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-28 19:04:00,404 INFO L225 Difference]: With dead ends: 509 [2020-07-28 19:04:00,405 INFO L226 Difference]: Without dead ends: 380 [2020-07-28 19:04:00,406 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 52 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=122, Unknown=0, NotChecked=0, Total=182 [2020-07-28 19:04:00,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 380 states. [2020-07-28 19:04:01,050 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 380 to 216. [2020-07-28 19:04:01,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-28 19:04:01,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 380 states. Second operand 216 states. [2020-07-28 19:04:01,050 INFO L74 IsIncluded]: Start isIncluded. First operand 380 states. Second operand 216 states. [2020-07-28 19:04:01,050 INFO L87 Difference]: Start difference. First operand 380 states. Second operand 216 states. [2020-07-28 19:04:01,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:04:01,061 INFO L93 Difference]: Finished difference Result 380 states and 509 transitions. [2020-07-28 19:04:01,061 INFO L276 IsEmpty]: Start isEmpty. Operand 380 states and 509 transitions. [2020-07-28 19:04:01,062 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:04:01,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:04:01,062 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand 380 states. [2020-07-28 19:04:01,062 INFO L87 Difference]: Start difference. First operand 216 states. Second operand 380 states. [2020-07-28 19:04:01,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-28 19:04:01,074 INFO L93 Difference]: Finished difference Result 380 states and 509 transitions. [2020-07-28 19:04:01,074 INFO L276 IsEmpty]: Start isEmpty. Operand 380 states and 509 transitions. [2020-07-28 19:04:01,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-28 19:04:01,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-28 19:04:01,076 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-28 19:04:01,076 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-28 19:04:01,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 216 states. [2020-07-28 19:04:01,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 216 states to 216 states and 291 transitions. [2020-07-28 19:04:01,081 INFO L78 Accepts]: Start accepts. Automaton has 216 states and 291 transitions. Word has length 48 [2020-07-28 19:04:01,082 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-28 19:04:01,082 INFO L479 AbstractCegarLoop]: Abstraction has 216 states and 291 transitions. [2020-07-28 19:04:01,082 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-28 19:04:01,082 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 291 transitions. [2020-07-28 19:04:01,083 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2020-07-28 19:04:01,083 INFO L414 BasicCegarLoop]: Found error trace [2020-07-28 19:04:01,083 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 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] [2020-07-28 19:04:01,296 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2020-07-28 19:04:01,297 INFO L427 AbstractCegarLoop]: === Iteration 13 === [ULTIMATE.startErr1ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-28 19:04:01,297 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-28 19:04:01,297 INFO L82 PathProgramCache]: Analyzing trace with hash -568509983, now seen corresponding path program 2 times [2020-07-28 19:04:01,297 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-28 19:04:01,298 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1223621963] [2020-07-28 19:04:01,298 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-28 19:04:01,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:04:01,357 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:04:01,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-28 19:04:01,403 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-28 19:04:01,463 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-28 19:04:01,463 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-28 19:04:01,464 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2020-07-28 19:04:01,680 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-28 19:04:01,685 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-28 19:04:01,685 WARN L170 areAnnotationChecker]: L531 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L539 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L400 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L400 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L374 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L400-1 has no Hoare annotation [2020-07-28 19:04:01,686 WARN L170 areAnnotationChecker]: L918-1 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L918-1 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L918-1 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L409 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L103 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2020-07-28 19:04:01,687 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: L128-1 has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: L128-1 has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: L421-3 has no Hoare annotation [2020-07-28 19:04:01,688 WARN L170 areAnnotationChecker]: L421-3 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L128-2 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L128-2 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L65 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L65 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L160-1 has no Hoare annotation [2020-07-28 19:04:01,689 WARN L170 areAnnotationChecker]: L160-1 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L135-1 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L433 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L433 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L65-1 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L498-1 has no Hoare annotation [2020-07-28 19:04:01,690 WARN L170 areAnnotationChecker]: L498-1 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L490-1 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L75 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L75 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L503-1 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L918-2 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L918-2 has no Hoare annotation [2020-07-28 19:04:01,691 WARN L170 areAnnotationChecker]: L445 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L445 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L75-1 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L280-3 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L280-3 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L231-1 has no Hoare annotation [2020-07-28 19:04:01,692 WARN L170 areAnnotationChecker]: L918-3 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L85 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L85 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L280-5 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L922-2 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L922-2 has no Hoare annotation [2020-07-28 19:04:01,693 WARN L170 areAnnotationChecker]: L326-2 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L326-2 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L326-2 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L91-1 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L91-1 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L91 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L91 has no Hoare annotation [2020-07-28 19:04:01,694 WARN L170 areAnnotationChecker]: L286-1 has no Hoare annotation [2020-07-28 19:04:01,695 WARN L170 areAnnotationChecker]: L310-1 has no Hoare annotation [2020-07-28 19:04:01,695 WARN L170 areAnnotationChecker]: L310-1 has no Hoare annotation [2020-07-28 19:04:01,695 WARN L170 areAnnotationChecker]: L327 has no Hoare annotation [2020-07-28 19:04:01,695 WARN L170 areAnnotationChecker]: L421 has no Hoare annotation [2020-07-28 19:04:01,695 WARN L170 areAnnotationChecker]: L421 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L128 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L128 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L294 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L294 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L164-1 has no Hoare annotation [2020-07-28 19:04:01,696 WARN L170 areAnnotationChecker]: L164-1 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L330 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L330 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L160 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L160 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L135 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L294-1 has no Hoare annotation [2020-07-28 19:04:01,697 WARN L170 areAnnotationChecker]: L458-1 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L330-1 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L330-1 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L498 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L498 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L490 has no Hoare annotation [2020-07-28 19:04:01,698 WARN L170 areAnnotationChecker]: L222-1 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L421-6 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L421-6 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L128-3 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L128-3 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L503 has no Hoare annotation [2020-07-28 19:04:01,699 WARN L170 areAnnotationChecker]: L918 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L918 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L197-2 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L197-2 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L160-2 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L160-2 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L135-2 has no Hoare annotation [2020-07-28 19:04:01,700 WARN L170 areAnnotationChecker]: L280 has no Hoare annotation [2020-07-28 19:04:01,701 WARN L170 areAnnotationChecker]: L280 has no Hoare annotation [2020-07-28 19:04:01,701 WARN L170 areAnnotationChecker]: L231 has no Hoare annotation [2020-07-28 19:04:01,701 WARN L170 areAnnotationChecker]: L498-2 has no Hoare annotation [2020-07-28 19:04:01,701 WARN L170 areAnnotationChecker]: L498-2 has no Hoare annotation [2020-07-28 19:04:01,701 WARN L170 areAnnotationChecker]: L490-2 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L280-2 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L922 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L922 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L503-2 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L918-4 has no Hoare annotation [2020-07-28 19:04:01,702 WARN L170 areAnnotationChecker]: L918-4 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L286 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L310 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L310 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L280-6 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L280-6 has no Hoare annotation [2020-07-28 19:04:01,703 WARN L170 areAnnotationChecker]: L231-2 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L918-5 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L164 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L164 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L280-8 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L922-4 has no Hoare annotation [2020-07-28 19:04:01,704 WARN L170 areAnnotationChecker]: L922-4 has no Hoare annotation [2020-07-28 19:04:01,705 WARN L170 areAnnotationChecker]: L458 has no Hoare annotation [2020-07-28 19:04:01,705 WARN L170 areAnnotationChecker]: L286-2 has no Hoare annotation [2020-07-28 19:04:01,705 WARN L170 areAnnotationChecker]: L310-2 has no Hoare annotation [2020-07-28 19:04:01,705 WARN L170 areAnnotationChecker]: L310-2 has no Hoare annotation [2020-07-28 19:04:01,705 WARN L170 areAnnotationChecker]: L222 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L164-2 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L164-2 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L197 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L197 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L458-2 has no Hoare annotation [2020-07-28 19:04:01,706 WARN L170 areAnnotationChecker]: L222-2 has no Hoare annotation [2020-07-28 19:04:01,707 WARN L170 areAnnotationChecker]: L197-4 has no Hoare annotation [2020-07-28 19:04:01,707 WARN L170 areAnnotationChecker]: L197-4 has no Hoare annotation [2020-07-28 19:04:01,707 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-28 19:04:01,711 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.07 07:04:01 BoogieIcfgContainer [2020-07-28 19:04:01,712 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-28 19:04:01,712 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-07-28 19:04:01,712 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-07-28 19:04:01,713 INFO L275 PluginConnector]: Witness Printer initialized [2020-07-28 19:04:01,713 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.07 07:03:39" (3/4) ... [2020-07-28 19:04:01,719 INFO L131 WitnessPrinter]: Generating witness for reachability counterexample [2020-07-28 19:04:01,981 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2020-07-28 19:04:01,982 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-07-28 19:04:01,984 INFO L168 Benchmark]: Toolchain (without parser) took 25463.69 ms. Allocated memory was 1.0 GB in the beginning and 1.5 GB in the end (delta: 463.5 MB). Free memory was 957.5 MB in the beginning and 1.3 GB in the end (delta: -306.8 MB). Peak memory consumption was 156.7 MB. Max. memory is 11.5 GB. [2020-07-28 19:04:01,985 INFO L168 Benchmark]: CDTParser took 0.24 ms. Allocated memory is still 1.0 GB. Free memory is still 981.7 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:04:01,985 INFO L168 Benchmark]: CACSL2BoogieTranslator took 809.26 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.1 MB). Free memory was 952.2 MB in the beginning and 1.1 GB in the end (delta: -172.6 MB). Peak memory consumption was 26.5 MB. Max. memory is 11.5 GB. [2020-07-28 19:04:01,986 INFO L168 Benchmark]: Boogie Procedure Inliner took 85.44 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. [2020-07-28 19:04:01,986 INFO L168 Benchmark]: Boogie Preprocessor took 80.05 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:04:01,986 INFO L168 Benchmark]: RCFGBuilder took 1627.36 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 967.4 MB in the end (delta: 150.5 MB). Peak memory consumption was 150.5 MB. Max. memory is 11.5 GB. [2020-07-28 19:04:01,988 INFO L168 Benchmark]: TraceAbstraction took 22584.42 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 320.3 MB). Free memory was 960.5 MB in the beginning and 1.3 GB in the end (delta: -367.1 MB). There was no memory consumed. Max. memory is 11.5 GB. [2020-07-28 19:04:01,989 INFO L168 Benchmark]: Witness Printer took 269.54 ms. Allocated memory is still 1.5 GB. Free memory was 1.3 GB in the beginning and 1.3 GB in the end (delta: 63.3 MB). Peak memory consumption was 63.3 MB. Max. memory is 11.5 GB. [2020-07-28 19:04:01,991 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.24 ms. Allocated memory is still 1.0 GB. Free memory is still 981.7 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 809.26 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.1 MB). Free memory was 952.2 MB in the beginning and 1.1 GB in the end (delta: -172.6 MB). Peak memory consumption was 26.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 85.44 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 6.8 MB). Peak memory consumption was 6.8 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 80.05 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 1627.36 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 967.4 MB in the end (delta: 150.5 MB). Peak memory consumption was 150.5 MB. Max. memory is 11.5 GB. * TraceAbstraction took 22584.42 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 320.3 MB). Free memory was 960.5 MB in the beginning and 1.3 GB in the end (delta: -367.1 MB). There was no memory consumed. Max. memory is 11.5 GB. * Witness Printer took 269.54 ms. Allocated memory is still 1.5 GB. Free memory was 1.3 GB in the beginning and 1.3 GB in the end (delta: 63.3 MB). Peak memory consumption was 63.3 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 310]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L120] int pumpRunning = 0; [L121] int systemActive = 1; [L315] int cleanupTimeShifts = 4; [L415] int waterLevel = 1; [L416] int methaneLevelCritical = 0; [L713] static struct __ACC__ERR *head = (struct __ACC__ERR *)0; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L391] int retValue_acc ; [L392] int tmp ; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L535] int retValue_acc ; [L538] retValue_acc = 1 [L539] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L398] tmp = valid_product() [L400] COND TRUE \read(tmp) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L46] int splverifierCounter ; [L47] int tmp ; [L48] int tmp___0 ; [L49] int tmp___1 ; [L50] int tmp___2 ; [L53] splverifierCounter = 0 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L55] COND TRUE 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L57] COND TRUE splverifierCounter < 4 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L63] tmp = __VERIFIER_nondet_int() [L65] COND TRUE \read(tmp) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=1] [L433] COND TRUE waterLevel < 2 [L434] waterLevel = waterLevel + 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L73] tmp___0 = __VERIFIER_nondet_int() [L75] COND FALSE !(\read(tmp___0)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L83] tmp___2 = __VERIFIER_nondet_int() [L85] COND TRUE \read(tmp___2) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L128] COND FALSE !(\read(pumpRunning)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L135] COND TRUE \read(systemActive) [L157] int tmp ; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L160] COND TRUE ! pumpRunning [L272] int retValue_acc ; [L273] int tmp ; [L274] int tmp___0 ; [L495] int retValue_acc ; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L498] COND FALSE !(waterLevel < 2) [L502] retValue_acc = 0 [L503] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L278] tmp = isHighWaterSensorDry() [L280] COND FALSE !(\read(tmp)) [L283] tmp___0 = 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L285] retValue_acc = tmp___0 [L286] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L162] tmp = isHighWaterLevel() [L164] COND TRUE \read(tmp) [L191] int tmp ; [L216] int retValue_acc ; [L454] int retValue_acc ; [L457] retValue_acc = methaneLevelCritical [L458] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L220] retValue_acc = isMethaneLevelCritical() [L222] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=0, systemActive=1, waterLevel=2] [L195] tmp = isMethaneAlarm() [L197] COND FALSE !(\read(tmp)) [L185] pumpRunning = 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L911] int tmp ; [L912] int tmp___0 ; [L486] int retValue_acc ; [L489] retValue_acc = waterLevel [L490] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L916] tmp = getWaterLevel() [L918] COND FALSE !(tmp == 0) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L55] COND TRUE 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L57] COND TRUE splverifierCounter < 4 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L63] tmp = __VERIFIER_nondet_int() [L65] COND FALSE !(\read(tmp)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L73] tmp___0 = __VERIFIER_nondet_int() [L75] COND FALSE !(\read(tmp___0)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L83] tmp___2 = __VERIFIER_nondet_int() [L85] COND TRUE \read(tmp___2) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L128] COND TRUE \read(pumpRunning) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=2] [L421] COND TRUE waterLevel > 0 [L422] waterLevel = waterLevel - 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L135] COND TRUE \read(systemActive) [L157] int tmp ; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L160] COND FALSE !(! pumpRunning) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L911] int tmp ; [L912] int tmp___0 ; [L486] int retValue_acc ; [L489] retValue_acc = waterLevel [L490] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L916] tmp = getWaterLevel() [L918] COND FALSE !(tmp == 0) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L55] COND TRUE 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L57] COND TRUE splverifierCounter < 4 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L63] tmp = __VERIFIER_nondet_int() [L65] COND FALSE !(\read(tmp)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L73] tmp___0 = __VERIFIER_nondet_int() [L75] COND FALSE !(\read(tmp___0)) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L83] tmp___2 = __VERIFIER_nondet_int() [L85] COND TRUE \read(tmp___2) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L128] COND TRUE \read(pumpRunning) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=1] [L421] COND TRUE waterLevel > 0 [L422] waterLevel = waterLevel - 1 VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L135] COND TRUE \read(systemActive) [L157] int tmp ; VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L160] COND FALSE !(! pumpRunning) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L911] int tmp ; [L912] int tmp___0 ; [L486] int retValue_acc ; [L489] retValue_acc = waterLevel [L490] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L916] tmp = getWaterLevel() [L918] COND TRUE tmp == 0 [L227] int retValue_acc ; [L230] retValue_acc = pumpRunning [L231] return (retValue_acc); VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L920] tmp___0 = isPumpRunning() [L922] COND TRUE \read(tmp___0) VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] [L310] __VERIFIER_error() VAL [cleanupTimeShifts=4, head={0:0}, methaneLevelCritical=0, pumpRunning=1, systemActive=1, waterLevel=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 89 locations, 3 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 22.2s, OverallIterations: 13, TraceHistogramMax: 3, AutomataDifference: 15.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 1079 SDtfs, 1504 SDslu, 1823 SDs, 0 SdLazy, 274 SolverSat, 53 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.6s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 125 GetRequests, 72 SyntacticMatches, 0 SemanticMatches, 53 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=216occurred in iteration=12, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 3.6s AutomataMinimizationTime, 12 MinimizatonAttempts, 1003 StatesRemovedByMinimization, 10 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 1.3s InterpolantComputationTime, 481 NumberOfCodeBlocks, 481 NumberOfCodeBlocksAsserted, 14 NumberOfCheckSat, 405 ConstructedInterpolants, 0 QuantifiedInterpolants, 28342 SizeOfPredicates, 4 NumberOfNonLiveVariables, 391 ConjunctsInSsa, 6 ConjunctsInUnsatCore, 13 InterpolantComputations, 11 PerfectInterpolantSequences, 44/56 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 RESULT: Ultimate proved your program to be incorrect! Received shutdown request...